Latest available version: IDA and decompilers v8.4.240320sp1 see all releases
Hex-Rays logo State-of-the-art binary code analysis tools
email icon
Additional flags for the location

All 32-bits of the main flags (bytes.hpp) are used up. More...

Macros

#define AFL_LINNUM   0x00000001
 has line number info
 
#define AFL_USERSP   0x00000002
 user-defined SP value
 
#define AFL_PUBNAM   0x00000004
 name is public (inter-file linkage)
 
#define AFL_WEAKNAM   0x00000008
 name is weak
 
#define AFL_HIDDEN   0x00000010
 the item is hidden completely
 
#define AFL_MANUAL   0x00000020
 the instruction/data is specified by the user
 
#define AFL_NOBRD   0x00000040
 the code/data border is hidden
 
#define AFL_ZSTROFF   0x00000080
 display struct field name at 0 offset when displaying an offset. More...
 
#define AFL_BNOT0   0x00000100
 the 1st operand is bitwise negated
 
#define AFL_BNOT1   0x00000200
 the 2nd operand is bitwise negated
 
#define AFL_LIB   0x00000400
 item from the standard library. More...
 
#define AFL_TI   0x00000800
 has typeinfo? (NSUP_TYPEINFO); used only for addresses, not for member_t
 
#define AFL_TI0   0x00001000
 has typeinfo for operand 0? (NSUP_OPTYPES)
 
#define AFL_TI1   0x00002000
 has typeinfo for operand 1? (NSUP_OPTYPES+1)
 
#define AFL_LNAME   0x00004000
 has local name too (FF_NAME should be set)
 
#define AFL_TILCMT   0x00008000
 has type comment? (such a comment may be changed by IDA)
 
#define AFL_LZERO0   0x00010000
 toggle leading zeroes for the 1st operand
 
#define AFL_LZERO1   0x00020000
 toggle leading zeroes for the 2nd operand
 
#define AFL_COLORED   0x00040000
 has user defined instruction color?
 
#define AFL_TERSESTR   0x00080000
 terse structure variable display?
 
#define AFL_SIGN0   0x00100000
 code: toggle sign of the 1st operand
 
#define AFL_SIGN1   0x00200000
 code: toggle sign of the 2nd operand
 
#define AFL_NORET   0x00400000
 for imported function pointers: doesn't return. More...
 
#define AFL_FIXEDSPD   0x00800000
 sp delta value is fixed by analysis. More...
 
#define AFL_ALIGNFLOW   0x01000000
 the previous insn was created for alignment purposes only
 
#define AFL_USERTI   0x02000000
 the type information is definitive. More...
 
#define AFL_RETFP   0x04000000
 function returns a floating point value
 
#define AFL_USEMODSP   0x08000000
 insn modifes SP and uses the modified value; example: pop [rsp+N]
 
#define AFL_NOTCODE   0x10000000
 autoanalysis should not create code here
 
#define AFL_NOTPROC   0x20000000
 autoanalysis should not create proc here
 
#define AFL_TYPE_GUESSED   0xC2000000
 who guessed the type information?
 
#define AFL_IDA_GUESSED   0x00000000
 the type is guessed by IDA
 
#define AFL_HR_GUESSED_FUNC   0x40000000
 the function type is guessed by the decompiler
 
#define AFL_HR_GUESSED_DATA   0x80000000
 the data type is guessed by the decompiler
 
#define AFL_HR_DETERMINED   0xC0000000
 the type is definitely guessed by the decompiler
 

Detailed Description

All 32-bits of the main flags (bytes.hpp) are used up.

Additional flags keep more information about addresses. AFLNOTE: DO NOT use these flags directly unless there is absolutely no way. They are too low level and may corrupt the database.

Macro Definition Documentation

◆ AFL_ZSTROFF

#define AFL_ZSTROFF   0x00000080

display struct field name at 0 offset when displaying an offset.

example:

offset somestruct.field_0 

if this flag is clear, then

offset somestruct 

◆ AFL_LIB

#define AFL_LIB   0x00000400

item from the standard library.

low level flag, is used to set FUNC_LIB of func_t

◆ AFL_NORET

#define AFL_NORET   0x00400000

for imported function pointers: doesn't return.

this flag can also be used for any instruction which halts or finishes the program execution

◆ AFL_FIXEDSPD

#define AFL_FIXEDSPD   0x00800000

sp delta value is fixed by analysis.

should not be modified by modules

◆ AFL_USERTI

#define AFL_USERTI   0x02000000

the type information is definitive.

(comes from the user or type library) if not set see AFL_TYPE_GUESSED