diff --git a/gen/gen_code.cpp b/gen/gen_code.cpp index d6f5e2a..b3fb123 100644 --- a/gen/gen_code.cpp +++ b/gen/gen_code.cpp @@ -441,6 +441,7 @@ void put() } tbl[] = { // only 64-bit mode(from) { "cdqe", B01001000, B10011000 }, + { "cqo", 0x48, 0x99 }, { "@@@" }, /// here // only 32-bit mode(from) { "aaa", B00110111 }, diff --git a/xbyak/xbyak_mnemonic.h b/xbyak/xbyak_mnemonic.h index 9bcb79c..790385d 100644 --- a/xbyak/xbyak_mnemonic.h +++ b/xbyak/xbyak_mnemonic.h @@ -274,6 +274,7 @@ void jg(const char *label, LabelType type = T_AUTO) { opJmp(label, type, 0x7F, 0 void setg(const Operand& op) { opR_ModM(op, 8, 0, 0x0F, B10010000 | 15); } #ifdef XBYAK64 void cdqe() { db(0x48); db(0x98); } +void cqo() { db(0x48); db(0x99); } #else void aaa() { db(0x37); } void aad() { db(0xD5); db(0x0A); }