aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMITSUNARI Shigeo <[email protected]>2019-09-09 16:44:20 +0900
committerMITSUNARI Shigeo <[email protected]>2019-09-09 16:44:20 +0900
commit9e9ec1c3ce725720435d9a980518ba0375fbb771 (patch)
tree367d6ee727ed0ecfc7da81174c393c8163913c7a
parenteea0edc39d8517a926f592dbd6fc8eb6e40aae24 (diff)
downloadxbyak-9e9ec1c3ce725720435d9a980518ba0375fbb771.tar.gz
xbyak-9e9ec1c3ce725720435d9a980518ba0375fbb771.zip
add repe, repne, repne, prez
-rw-r--r--gen/gen_code.cpp4
-rw-r--r--xbyak/xbyak_mnemonic.h4
2 files changed, 8 insertions, 0 deletions
diff --git a/gen/gen_code.cpp b/gen/gen_code.cpp
index 8a71517..9e58498 100644
--- a/gen/gen_code.cpp
+++ b/gen/gen_code.cpp
@@ -667,6 +667,10 @@ void put()
{ "stosw", 0x66, 0xAB },
{ "stosd", 0xAB },
{ "rep", 0xF3 },
+ { "repe", 0xF3 },
+ { "repz", 0xF3 },
+ { "repne", 0xF2 },
+ { "repnz", 0xF2 },
{ "lahf", 0x9F },
{ "lock", 0xF0 },
diff --git a/xbyak/xbyak_mnemonic.h b/xbyak/xbyak_mnemonic.h
index 6844079..d1753c4 100644
--- a/xbyak/xbyak_mnemonic.h
+++ b/xbyak/xbyak_mnemonic.h
@@ -706,6 +706,10 @@ void rdseed(const Reg& r) { if (r.isBit(8)) throw Error(ERR_BAD_SIZE_OF_REGISTER
void rdtsc() { db(0x0F); db(0x31); }
void rdtscp() { db(0x0F); db(0x01); db(0xF9); }
void rep() { db(0xF3); }
+void repe() { db(0xF3); }
+void repne() { db(0xF2); }
+void repnz() { db(0xF2); }
+void repz() { db(0xF3); }
void ret(int imm = 0) { if (imm) { db(0xC2); dw(imm); } else { db(0xC3); } }
void rol(const Operand& op, const Reg8& _cl) { opShift(op, _cl, 0); }
void rol(const Operand& op, int imm) { opShift(op, imm, 0); }