For the complete documentation index, see llms.txt. This page is also available as Markdown.

SetNameType

Description

Setup name representation. Dummy names are automatically generated by IDA. They are used to denote subroutines, program locations and data. Dummy names have various prefixes depending on the item type and value:

Prefix
Description

sub_

instruction, subroutine start

locret_

'return' instruction

loc_

instruction

off_

data, contains offset value

seg_

data, contains segment address value

asc_

data, string literal

byte_

data, byte

word_

data, 16-bit

dword_

data, 32-bit

qword_

data, 64-bit

byte3_

data, 3 bytes

xmmword_

data, 128-bit

ymmword_

data, 256-bit

packreal_

data, packed real

flt_

floating point data, 32-bit

dbl_

floating point data, 64-bit

tbyte_

floating point data, 80-bit

stru_

structure

custdata_

custom data type

algn_

alignment directive

unk_

unexplored byte

You can change representation of dummy names. IDA supports several types of dummy names:

Format
Example
Description

0

loc_0_1234

segment base address relative to program base address & offset from the segment base

1

loc_1000_1234

segment base address & offset from the segment base

2

loc_dseg_1234

segment name & offset from the segment base

3

loc_0_11234

segment relative to base address & full address

4

loc_1000_11234

segment base address & full address

5

loc_dseg_11234

segment name & full address

6

loc_12

full address

7

loc_0012

full address (at least 4 digits)

8

loc_00000012

full address (at least 8 digits)

9

dseg_1234

the same as 2, but without data type specifier

10

loc_1

enumerated names (loc_1,loc_2,loc_3...)

If you have selected names type 10 (enumerated names), you may renumber them using a checkbox. The process is relatively fast, surprisingly.

The best representation for MS DOS programs is #0, for 16-bit processors - #7, and for 32-bit processors - #8. You can change dummy names type any time you want.

You can also set up types of names included in the name list (Jump by name... command, action JumpName). IDA knows about the following types of names:

  • normal names

  • public names

  • weak public or extern names

  • autogenerated (meaningful) names.

  • dummy (meaningless) names.

Dummy names may be public or weak, but they never appear in the list of names. You can specify the type of a name when you create or rename it.

You can also set maximal length of new names. Old names will not be affected by this parameter.

Names in backticks

Names from Rust, Go, Swift or C++ binaries often hold characters that are also used by the code around them, such as (, *, < or spaces. In a listing, such a name could merge with that code: jmp short fmt.(*ss).skipSpace. IDA puts these names in backticks, so you can see where each name starts and ends:

The start of a Go function, with its unusual names in backticks

A name stays bare (without backticks) if:

  • it has only letters, digits, the characters the processor allows in names (for example _, $, ? and @ on x86), ., and :: between its parts; or

  • it has the shape of a C++ name: template arguments, operators, destructors, MSVC names such as `anonymous namespace'; or

  • it is an Objective-C method name, such as -[NSString stringWithFormat:].

The backticks are only a display convention. They are not part of the name, and lists such as the Names and Functions windows show names without them. Inside the backticks, a backtick or a backslash in the name is preceded by a backslash. You can type a name in backticks where IDA asks for an address, for example in Jump to address.

The disassembly, the type listings and the pseudocode put names in backticks. To show names as they are, use Options → Name representation...:

The Name representation entry in the Options menu

and clear Quote unusual names with backticks:

The Quote unusual names with backticks checkbox in the Names dialog

The same function, with the option cleared:

The same Go function, with bare names

The option is saved in the database. For new databases, its default comes from BARE_NAMES in IDA.CFG: NO (the default) puts unusual names in backticks.

See also: the Rename command.

Last updated

Was this helpful?