Used by processor_t::flag. More...
Macros | |
#define | PR_SEGS 0x000001 |
has segment registers? | |
#define | PR_USE32 0x000002 |
supports 32-bit addressing? | |
#define | PR_DEFSEG32 0x000004 |
segments are 32-bit by default | |
#define | PR_RNAMESOK 0x000008 |
allow user register names for location names | |
#define | PR_ADJSEGS 0x000020 |
IDA may adjust segments' starting/ending addresses. | |
#define | PR_DEFNUM 0x0000C0 |
mask - default number representation | |
#define | PRN_HEX 0x000000 |
hex | |
#define | PRN_OCT 0x000040 |
octal | |
#define | PRN_DEC 0x000080 |
decimal | |
#define | PRN_BIN 0x0000C0 |
binary | |
#define | PR_WORD_INS 0x000100 |
instruction codes are grouped 2bytes in binary line prefix | |
#define | PR_NOCHANGE 0x000200 |
The user can't change segments and code/data attributes (display only) | |
#define | PR_ASSEMBLE 0x000400 |
Module has a built-in assembler and will react to ev_assemble. | |
#define | PR_ALIGN 0x000800 |
All data items should be aligned properly. | |
#define | PR_TYPEINFO 0x001000 |
the processor module fully supports type information callbacks; without full support, function argument locations and other things will probably be wrong. More... | |
#define | PR_USE64 0x002000 |
supports 64-bit addressing? | |
#define | PR_SGROTHER 0x004000 |
the segment registers don't contain the segment selectors. | |
#define | PR_STACK_UP 0x008000 |
the stack grows up | |
#define | PR_BINMEM 0x010000 |
the processor module provides correct segmentation for binary files (i.e. it creates additional segments). More... | |
#define | PR_SEGTRANS 0x020000 |
the processor module supports the segment translation feature (meaning it calculates the code addresses using the map_code_ea() function) | |
#define | PR_CHK_XREF 0x040000 |
don't allow near xrefs between segments with different bases | |
#define | PR_NO_SEGMOVE 0x080000 |
the processor module doesn't support move_segm() (i.e. More... | |
#define | PR_USE_ARG_TYPES 0x200000 |
use processor_t::use_arg_types callback | |
#define | PR_SCALE_STKVARS 0x400000 |
use processor_t::get_stkvar_scale callback | |
#define | PR_DELAYED 0x800000 |
has delayed jumps and calls. More... | |
#define | PR_ALIGN_INSN 0x1000000 |
allow ida to create alignment instructions arbitrarily. More... | |
#define | PR_PURGING 0x2000000 |
there are calling conventions which may purge bytes from the stack | |
#define | PR_CNDINSNS 0x4000000 |
has conditional instructions | |
#define | PR_USE_TBYTE 0x8000000 |
BTMT_SPECFLT means _TBYTE type | |
#define | PR_DEFSEG64 0x10000000 |
segments are 64-bit by default | |
#define | PR_OUTER 0x20000000 |
has outer operands (currently only mc68k) | |
Variables | |
const problist_id_t | PR_NOBASE = 1 |
Can't find offset base. | |
const problist_id_t | PR_NONAME = 2 |
Can't find name. | |
const problist_id_t | PR_NOFOP = 3 |
Can't find forced op (not used anymore) | |
const problist_id_t | PR_NOCMT = 4 |
Can't find comment (not used anymore) | |
const problist_id_t | PR_NOXREFS = 5 |
Can't find references. | |
const problist_id_t | PR_JUMP = 6 |
Jump by table !!!! ignored. | |
const problist_id_t | PR_DISASM = 7 |
Can't disasm. | |
const problist_id_t | PR_HEAD = 8 |
Already head. | |
const problist_id_t | PR_ILLADDR = 9 |
Exec flows beyond limits. | |
const problist_id_t | PR_MANYLINES = 10 |
Too many lines. | |
const problist_id_t | PR_BADSTACK = 11 |
Failed to trace the value of the stack pointer. | |
const problist_id_t | PR_ATTN = 12 |
Attention! Probably erroneous situation. | |
const problist_id_t | PR_FINAL = 13 |
Decision to convert to instruction/data is made by IDA. | |
const problist_id_t | PR_ROLLED = 14 |
The decision made by IDA was wrong and rolled back. | |
const problist_id_t | PR_COLLISION = 15 |
FLAIR collision: the function with the given name already exists. | |
const problist_id_t | PR_DECIMP = 16 |
FLAIR match indecision: the patterns matched, but not the function(s) being referenced. | |
const problist_id_t | PR_END = 17 |
Number of problem types. | |
Detailed Description
Used by processor_t::flag.
Macro Definition Documentation
◆ PR_TYPEINFO
#define PR_TYPEINFO 0x001000 |
the processor module fully supports type information callbacks; without full support, function argument locations and other things will probably be wrong.
◆ PR_BINMEM
#define PR_BINMEM 0x010000 |
the processor module provides correct segmentation for binary files (i.e. it creates additional segments).
The kernel will not ask the user to specify the RAM/ROM sizes
◆ PR_NO_SEGMOVE
#define PR_NO_SEGMOVE 0x080000 |
the processor module doesn't support move_segm() (i.e.
the user can't move segments)
◆ PR_DELAYED
#define PR_DELAYED 0x800000 |
has delayed jumps and calls.
If this flag is set, processor_t::is_basic_block_end, processor_t::delay_slot_insn should be implemented
◆ PR_ALIGN_INSN
#define PR_ALIGN_INSN 0x1000000 |
allow ida to create alignment instructions arbitrarily.
Since these instructions might lead to other wrong instructions and spoil the listing, IDA does not create them by default anymore
Generated by 1.9.3