diff options
author | MITSUNARI Shigeo <[email protected]> | 2023-11-09 14:20:52 +0900 |
---|---|---|
committer | MITSUNARI Shigeo <[email protected]> | 2023-11-09 14:20:52 +0900 |
commit | e23f5ad75130ba28e08974335cd9ceaeff9b17a5 (patch) | |
tree | 31ab7cd47df93f13b6cf07821754cc54019bad0b /gen | |
parent | 1bcc8330356ce4c9c90081dc6e93c43983d7ea20 (diff) | |
download | xbyak-e23f5ad75130ba28e08974335cd9ceaeff9b17a5.tar.gz xbyak-e23f5ad75130ba28e08974335cd9ceaeff9b17a5.zip |
fix type for adc
Diffstat (limited to 'gen')
-rw-r--r-- | gen/gen_code.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/gen/gen_code.cpp b/gen/gen_code.cpp index d7700cb..0615ecb 100644 --- a/gen/gen_code.cpp +++ b/gen/gen_code.cpp @@ -798,20 +798,20 @@ void put() uint64_t type; } tbl[] = { { 0x10, 2, "adc", true, T_NONE }, - { 0x00, 0, "add", true, T_NF }, - { 0x20, 4, "and_", true, T_NF }, + { 0x00, 0, "add", true, T_NF | T_CODE1_IF1 }, + { 0x20, 4, "and_", true, T_NF | T_CODE1_IF1 }, { 0x38, 7, "cmp", false, T_NONE }, - { 0x08, 1, "or_", true, T_NF }, + { 0x08, 1, "or_", true, T_NF | T_CODE1_IF1 }, { 0x18, 3, "sbb", true, T_NONE }, - { 0x28, 5, "sub", true, T_NF }, - { 0x30, 6, "xor_", true, T_NF }, + { 0x28, 5, "sub", true, T_NF | T_CODE1_IF1 }, + { 0x30, 6, "xor_", true, T_NF | T_CODE1_IF1 }, }; for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) { const Tbl *p = &tbl[i]; printf("void %s(const Operand& op1, const Operand& op2) { opRO_MR(op1, op2, 0x%02X); }\n", p->name, p->code); printf("void %s(const Operand& op, uint32_t imm) { opOI(op, imm, 0x%02X, %d); }\n", p->name, p->code, p->ext); if (!p->support3op) continue; - std::string s = type2String(p->type | T_CODE1_IF1); + std::string s = type2String(p->type); printf("void %s(const Reg& d, const Operand& op1, const Operand& op2) { opROO(d, op1, op2, %s, 0x%02X); }\n", p->name, s.c_str(), p->code); printf("void %s(const Reg& d, const Operand& op, uint32_t imm) { opROI(d, op, imm, %s, %d); }\n", p->name, s.c_str(), p->ext); } |