aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/make_nm.cpp
diff options
context:
space:
mode:
authorMITSUNARI Shigeo <[email protected]>2016-07-14 15:00:03 +0900
committerMITSUNARI Shigeo <[email protected]>2016-07-14 15:00:03 +0900
commitc04cfa4fda3e71ca910306f332dedfbcd8e835a2 (patch)
treeae687a98f706aff38591953f98d43ff8f0166484 /test/make_nm.cpp
parent50cceb1786bd621b2d6f55973f59b91b0c2f811d (diff)
downloadxbyak-c04cfa4fda3e71ca910306f332dedfbcd8e835a2.tar.gz
xbyak-c04cfa4fda3e71ca910306f332dedfbcd8e835a2.zip
fix vpbroadcast{b,w} ; add vbroadcasti{32x2,32x4,64x2,32x8,64x4}
Diffstat (limited to 'test/make_nm.cpp')
-rw-r--r--test/make_nm.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/make_nm.cpp b/test/make_nm.cpp
index 1a7dd2d..df990e0 100644
--- a/test/make_nm.cpp
+++ b/test/make_nm.cpp
@@ -2612,6 +2612,28 @@ public:
for (int i = 0; i < 9; i++) {
putBroadcastSub(i);
}
+ put("vpbroadcastb", XMM_KZ | ZMM_KZ, REG8);
+ put("vpbroadcastw", XMM_KZ | ZMM_KZ, REG16);
+ put("vpbroadcastd", XMM_KZ | ZMM_KZ, REG32);
+#ifdef XBYAK64
+ put("vpbroadcastq", XMM_KZ | ZMM_KZ, REG64);
+#endif
+ {
+ const char *tbl[] = {
+ "vpbroadcastb",
+ "vpbroadcastw",
+ "vpbroadcastd",
+ "vpbroadcastq",
+ };
+ for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) {
+ put(tbl[i], XMM_KZ | ZMM_KZ, _XMM | _MEM);
+ }
+ }
+ put("vbroadcasti32x2", XMM_KZ | YMM_KZ | ZMM_KZ, _XMM | _MEM);
+ put("vbroadcasti32x4", YMM_KZ | ZMM_KZ, _MEM);
+ put("vbroadcasti64x2", YMM_KZ | ZMM_KZ, _MEM);
+ put("vbroadcasti32x8", ZMM_KZ, _MEM);
+ put("vbroadcasti64x4", ZMM_KZ, _MEM);
}
void putAVX512_M_X()
{