|
|
|
@ -1131,63 +1131,63 @@ static unsigned char need_modrm; |
|
|
|
need to update onebyte_has_modrm or twobyte_has_modrm. */ |
|
|
|
#define MODRM_CHECK if (!need_modrm) abort () |
|
|
|
|
|
|
|
static const char **names64; |
|
|
|
static const char **names32; |
|
|
|
static const char **names16; |
|
|
|
static const char **names8; |
|
|
|
static const char **names8rex; |
|
|
|
static const char **names_seg; |
|
|
|
static const char **index16; |
|
|
|
|
|
|
|
static const char *intel_names64[] = { |
|
|
|
static const char * const *names64; |
|
|
|
static const char * const *names32; |
|
|
|
static const char * const *names16; |
|
|
|
static const char * const *names8; |
|
|
|
static const char * const *names8rex; |
|
|
|
static const char * const *names_seg; |
|
|
|
static const char * const *index16; |
|
|
|
|
|
|
|
static const char * const intel_names64[] = { |
|
|
|
"rax", "rcx", "rdx", "rbx", "rsp", "rbp", "rsi", "rdi", |
|
|
|
"r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15" |
|
|
|
}; |
|
|
|
static const char *intel_names32[] = { |
|
|
|
static const char * const intel_names32[] = { |
|
|
|
"eax", "ecx", "edx", "ebx", "esp", "ebp", "esi", "edi", |
|
|
|
"r8d", "r9d", "r10d", "r11d", "r12d", "r13d", "r14d", "r15d" |
|
|
|
}; |
|
|
|
static const char *intel_names16[] = { |
|
|
|
static const char * const intel_names16[] = { |
|
|
|
"ax", "cx", "dx", "bx", "sp", "bp", "si", "di", |
|
|
|
"r8w", "r9w", "r10w", "r11w", "r12w", "r13w", "r14w", "r15w" |
|
|
|
}; |
|
|
|
static const char *intel_names8[] = { |
|
|
|
static const char * const intel_names8[] = { |
|
|
|
"al", "cl", "dl", "bl", "ah", "ch", "dh", "bh", |
|
|
|
}; |
|
|
|
static const char *intel_names8rex[] = { |
|
|
|
static const char * const intel_names8rex[] = { |
|
|
|
"al", "cl", "dl", "bl", "spl", "bpl", "sil", "dil", |
|
|
|
"r8b", "r9b", "r10b", "r11b", "r12b", "r13b", "r14b", "r15b" |
|
|
|
}; |
|
|
|
static const char *intel_names_seg[] = { |
|
|
|
static const char * const intel_names_seg[] = { |
|
|
|
"es", "cs", "ss", "ds", "fs", "gs", "?", "?", |
|
|
|
}; |
|
|
|
static const char *intel_index16[] = { |
|
|
|
static const char * const intel_index16[] = { |
|
|
|
"bx+si", "bx+di", "bp+si", "bp+di", "si", "di", "bp", "bx" |
|
|
|
}; |
|
|
|
|
|
|
|
static const char *att_names64[] = { |
|
|
|
static const char * const att_names64[] = { |
|
|
|
"%rax", "%rcx", "%rdx", "%rbx", "%rsp", "%rbp", "%rsi", "%rdi", |
|
|
|
"%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15" |
|
|
|
}; |
|
|
|
static const char *att_names32[] = { |
|
|
|
static const char * const att_names32[] = { |
|
|
|
"%eax", "%ecx", "%edx", "%ebx", "%esp", "%ebp", "%esi", "%edi", |
|
|
|
"%r8d", "%r9d", "%r10d", "%r11d", "%r12d", "%r13d", "%r14d", "%r15d" |
|
|
|
}; |
|
|
|
static const char *att_names16[] = { |
|
|
|
static const char * const att_names16[] = { |
|
|
|
"%ax", "%cx", "%dx", "%bx", "%sp", "%bp", "%si", "%di", |
|
|
|
"%r8w", "%r9w", "%r10w", "%r11w", "%r12w", "%r13w", "%r14w", "%r15w" |
|
|
|
}; |
|
|
|
static const char *att_names8[] = { |
|
|
|
static const char * const att_names8[] = { |
|
|
|
"%al", "%cl", "%dl", "%bl", "%ah", "%ch", "%dh", "%bh", |
|
|
|
}; |
|
|
|
static const char *att_names8rex[] = { |
|
|
|
static const char * const att_names8rex[] = { |
|
|
|
"%al", "%cl", "%dl", "%bl", "%spl", "%bpl", "%sil", "%dil", |
|
|
|
"%r8b", "%r9b", "%r10b", "%r11b", "%r12b", "%r13b", "%r14b", "%r15b" |
|
|
|
}; |
|
|
|
static const char *att_names_seg[] = { |
|
|
|
static const char * const att_names_seg[] = { |
|
|
|
"%es", "%cs", "%ss", "%ds", "%fs", "%gs", "%?", "%?", |
|
|
|
}; |
|
|
|
static const char *att_index16[] = { |
|
|
|
static const char * const att_index16[] = { |
|
|
|
"%bx,%si", "%bx,%di", "%bp,%si", "%bp,%di", "%si", "%di", "%bp", "%bx" |
|
|
|
}; |
|
|
|
|
|
|
|
|