abi options
Used by idainfo::abibits. More...
Macros | |
#define | ABI_8ALIGN4 0x00000001 |
4 byte alignment for 8byte scalars (__int64/double) inside structures? | |
#define | ABI_PACK_STKARGS 0x00000002 |
do not align stack arguments to stack slots | |
#define | ABI_BIGARG_ALIGN 0x00000004 |
use natural type alignment for argument if the alignment exceeds native word size. More... | |
#define | ABI_STACK_LDBL 0x00000008 |
long double arguments are passed on stack | |
#define | ABI_STACK_VARARGS 0x00000010 |
varargs are always passed on stack (even when there are free registers) | |
#define | ABI_HARD_FLOAT 0x00000020 |
use the floating-point register set | |
#define | ABI_SET_BY_USER 0x00000040 |
compiler/abi were set by user flag and require SETCOMP_BY_USER flag to be changed | |
#define | ABI_GCC_LAYOUT 0x00000080 |
use gcc layout for udts (used for mingw) | |
#define | ABI_MAP_STKARGS 0x00000100 |
register arguments are mapped to stack area (and consume stack slots) | |
#define | ABI_HUGEARG_ALIGN 0x00000200 |
use natural type alignment for an argument even if its alignment exceeds double native word size (the default is to use double word max). More... | |
Detailed Description
Used by idainfo::abibits.
Macro Definition Documentation
◆ ABI_BIGARG_ALIGN
#define ABI_BIGARG_ALIGN 0x00000004 |
use natural type alignment for argument if the alignment exceeds native word size.
(e.g. __int64 argument should be 8byte aligned on some 32bit platforms)
◆ ABI_HUGEARG_ALIGN
#define ABI_HUGEARG_ALIGN 0x00000200 |
use natural type alignment for an argument even if its alignment exceeds double native word size (the default is to use double word max).
e.g. if this bit is set, __int128 has 16-byte alignment. this bit is not used by ida yet
Generated by 1.9.3