aboutsummaryrefslogtreecommitdiffhomepage
path: root/gen/gen_code.cpp
diff options
context:
space:
mode:
authorMITSUNARI Shigeo <[email protected]>2023-11-22 11:46:45 +0900
committerMITSUNARI Shigeo <[email protected]>2023-11-22 11:46:45 +0900
commit114152fedf82cf6d3ff1e047098c5b9d4a31b8bc (patch)
tree699bb9050cd7285f65ce89472903dd3bbddca292 /gen/gen_code.cpp
parent1aefdb649960a4bfdc69602967968462165d6d8c (diff)
downloadxbyak-114152fedf82cf6d3ff1e047098c5b9d4a31b8bc.tar.gz
xbyak-114152fedf82cf6d3ff1e047098c5b9d4a31b8bc.zip
add push2/pop2
Diffstat (limited to 'gen/gen_code.cpp')
-rw-r--r--gen/gen_code.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/gen/gen_code.cpp b/gen/gen_code.cpp
index 312b217..44d1f36 100644
--- a/gen/gen_code.cpp
+++ b/gen/gen_code.cpp
@@ -1941,6 +1941,10 @@ void put64()
puts("void vmovq(const Xmm& x, const Reg64& r) { opAVX_X_X_XM(x, xm0, Xmm(r.getIdx()), T_66 | T_0F | T_W1 | T_EVEX | T_EW1, 0x6E); }");
puts("void vmovq(const Reg64& r, const Xmm& x) { opAVX_X_X_XM(x, xm0, Xmm(r.getIdx()), T_66 | T_0F | T_W1 | T_EVEX | T_EW1, 0x7E); }");
puts("void jmpabs(uint64_t addr) { db(0xD5); db(0x00); db(0xA1); dq(addr); }");
+ puts("void push2(const Reg64& r1, const Reg64& r2) { opROO(r1, r2, Reg64(6), T_VEX|T_ND1|T_W0, 0xFF); }");
+ puts("void push2p(const Reg64& r1, const Reg64& r2) { opROO(r1, r2, Reg64(6), T_VEX|T_ND1|T_W1, 0xFF); }");
+ puts("void pop2(const Reg64& r1, const Reg64& r2) { opROO(r1, r2, Reg64(0), T_VEX|T_ND1|T_W0, 0x8F); }");
+ puts("void pop2p(const Reg64& r1, const Reg64& r2) { opROO(r1, r2, Reg64(0), T_VEX|T_ND1|T_W1, 0x8F); }");
// CMPccXADD
{
const struct Tbl {