const std::unordered_map<std::string, ArgumentParser_x64::RegInfo>
ArgumentParser_x64::registers_ = {
- {"rax", {REG_A, 8}}, {"eax", {REG_A, 4}},
- {"ax", {REG_A, 2}}, {"al", {REG_A, 1}},
+ {"rax", {X64_REG_A, 8}}, {"eax", {X64_REG_A, 4}},
+ {"ax", {X64_REG_A, 2}}, {"al", {X64_REG_A, 1}},
- {"rbx", {REG_B, 8}}, {"ebx", {REG_B, 4}},
- {"bx", {REG_B, 2}}, {"bl", {REG_B, 1}},
+ {"rbx", {X64_REG_B, 8}}, {"ebx", {X64_REG_B, 4}},
+ {"bx", {X64_REG_B, 2}}, {"bl", {X64_REG_B, 1}},
- {"rcx", {REG_C, 8}}, {"ecx", {REG_C, 4}},
- {"cx", {REG_C, 2}}, {"cl", {REG_C, 1}},
+ {"rcx", {X64_REG_C, 8}}, {"ecx", {X64_REG_C, 4}},
+ {"cx", {X64_REG_C, 2}}, {"cl", {X64_REG_C, 1}},
- {"rdx", {REG_D, 8}}, {"edx", {REG_D, 4}},
- {"dx", {REG_D, 2}}, {"dl", {REG_D, 1}},
+ {"rdx", {X64_REG_D, 8}}, {"edx", {X64_REG_D, 4}},
+ {"dx", {X64_REG_D, 2}}, {"dl", {X64_REG_D, 1}},
- {"rsi", {REG_SI, 8}}, {"esi", {REG_SI, 4}},
- {"si", {REG_SI, 2}}, {"sil", {REG_SI, 1}},
+ {"rsi", {X64_REG_SI, 8}}, {"esi", {X64_REG_SI, 4}},
+ {"si", {X64_REG_SI, 2}}, {"sil", {X64_REG_SI, 1}},
- {"rdi", {REG_DI, 8}}, {"edi", {REG_DI, 4}},
- {"di", {REG_DI, 2}}, {"dil", {REG_DI, 1}},
+ {"rdi", {X64_REG_DI, 8}}, {"edi", {X64_REG_DI, 4}},
+ {"di", {X64_REG_DI, 2}}, {"dil", {X64_REG_DI, 1}},
- {"rbp", {REG_BP, 8}}, {"ebp", {REG_BP, 4}},
- {"bp", {REG_BP, 2}}, {"bpl", {REG_BP, 1}},
+ {"rbp", {X64_REG_BP, 8}}, {"ebp", {X64_REG_BP, 4}},
+ {"bp", {X64_REG_BP, 2}}, {"bpl", {X64_REG_BP, 1}},
- {"rsp", {REG_SP, 8}}, {"esp", {REG_SP, 4}},
- {"sp", {REG_SP, 2}}, {"spl", {REG_SP, 1}},
+ {"rsp", {X64_REG_SP, 8}}, {"esp", {X64_REG_SP, 4}},
+ {"sp", {X64_REG_SP, 2}}, {"spl", {X64_REG_SP, 1}},
- {"r8", {REG_8, 8}}, {"r8d", {REG_8, 4}},
- {"r8w", {REG_8, 2}}, {"r8b", {REG_8, 1}},
+ {"r8", {X64_REG_8, 8}}, {"r8d", {X64_REG_8, 4}},
+ {"r8w", {X64_REG_8, 2}}, {"r8b", {X64_REG_8, 1}},
- {"r9", {REG_9, 8}}, {"r9d", {REG_9, 4}},
- {"r9w", {REG_9, 2}}, {"r9b", {REG_9, 1}},
+ {"r9", {X64_REG_9, 8}}, {"r9d", {X64_REG_9, 4}},
+ {"r9w", {X64_REG_9, 2}}, {"r9b", {X64_REG_9, 1}},
- {"r10", {REG_10, 8}}, {"r10d", {REG_10, 4}},
- {"r10w", {REG_10, 2}}, {"r10b", {REG_10, 1}},
+ {"r10", {X64_REG_10, 8}}, {"r10d", {X64_REG_10, 4}},
+ {"r10w", {X64_REG_10, 2}}, {"r10b", {X64_REG_10, 1}},
- {"r11", {REG_11, 8}}, {"r11d", {REG_11, 4}},
- {"r11w", {REG_11, 2}}, {"r11b", {REG_11, 1}},
+ {"r11", {X64_REG_11, 8}}, {"r11d", {X64_REG_11, 4}},
+ {"r11w", {X64_REG_11, 2}}, {"r11b", {X64_REG_11, 1}},
- {"r12", {REG_12, 8}}, {"r12d", {REG_12, 4}},
- {"r12w", {REG_12, 2}}, {"r12b", {REG_12, 1}},
+ {"r12", {X64_REG_12, 8}}, {"r12d", {X64_REG_12, 4}},
+ {"r12w", {X64_REG_12, 2}}, {"r12b", {X64_REG_12, 1}},
- {"r13", {REG_13, 8}}, {"r13d", {REG_13, 4}},
- {"r13w", {REG_13, 2}}, {"r13b", {REG_13, 1}},
+ {"r13", {X64_REG_13, 8}}, {"r13d", {X64_REG_13, 4}},
+ {"r13w", {X64_REG_13, 2}}, {"r13b", {X64_REG_13, 1}},
- {"r14", {REG_14, 8}}, {"r14d", {REG_14, 4}},
- {"r14w", {REG_14, 2}}, {"r14b", {REG_14, 1}},
+ {"r14", {X64_REG_14, 8}}, {"r14d", {X64_REG_14, 4}},
+ {"r14w", {X64_REG_14, 2}}, {"r14b", {X64_REG_14, 1}},
- {"r15", {REG_15, 8}}, {"r15d", {REG_15, 4}},
- {"r15w", {REG_15, 2}}, {"r15b", {REG_15, 1}},
+ {"r15", {X64_REG_15, 8}}, {"r15d", {X64_REG_15, 4}},
+ {"r15w", {X64_REG_15, 2}}, {"r15b", {X64_REG_15, 1}},
- {"rip", {REG_RIP, 8}},
+ {"rip", {X64_REG_RIP, 8}},
};
void ArgumentParser_x64::reg_to_name(std::string *norm, Register reg) {
switch (reg) {
- case REG_A:
+ case X64_REG_A:
*norm = "ax";
break;
- case REG_B:
+ case X64_REG_B:
*norm = "bx";
break;
- case REG_C:
+ case X64_REG_C:
*norm = "cx";
break;
- case REG_D:
+ case X64_REG_D:
*norm = "dx";
break;
- case REG_SI:
+ case X64_REG_SI:
*norm = "si";
break;
- case REG_DI:
+ case X64_REG_DI:
*norm = "di";
break;
- case REG_BP:
+ case X64_REG_BP:
*norm = "bp";
break;
- case REG_SP:
+ case X64_REG_SP:
*norm = "sp";
break;
- case REG_8:
+ case X64_REG_8:
*norm = "r8";
break;
- case REG_9:
+ case X64_REG_9:
*norm = "r9";
break;
- case REG_10:
+ case X64_REG_10:
*norm = "r10";
break;
- case REG_11:
+ case X64_REG_11:
*norm = "r11";
break;
- case REG_12:
+ case X64_REG_12:
*norm = "r12";
break;
- case REG_13:
+ case X64_REG_13:
*norm = "r13";
break;
- case REG_14:
+ case X64_REG_14:
*norm = "r14";
break;
- case REG_15:
+ case X64_REG_15:
*norm = "r15";
break;
- case REG_RIP:
+ case X64_REG_RIP:
*norm = "ip";
break;
}