aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/make_512.cpp
diff options
context:
space:
mode:
authorMITSUNARI Shigeo <[email protected]>2016-12-08 23:11:06 +0900
committerMITSUNARI Shigeo <[email protected]>2016-12-08 23:11:06 +0900
commit44614abc801ece108985a15a099171c3bf2b6089 (patch)
treeba907fb358c9a972d207a1e2cd3cb5b50166c8ed /test/make_512.cpp
parent2c54c052e4cc1ae5fb2c7c73d79228b0f40ab554 (diff)
downloadxbyak-44614abc801ece108985a15a099171c3bf2b6089.tar.gz
xbyak-44614abc801ece108985a15a099171c3bf2b6089.zip
fix encoding of vpbroadcast{b,w,d,q}, vpinsr{b,w}, vpextr{b,w} for disp8Nv5.33
Diffstat (limited to 'test/make_512.cpp')
-rw-r--r--test/make_512.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/make_512.cpp b/test/make_512.cpp
index e090cdb..60132a8 100644
--- a/test/make_512.cpp
+++ b/test/make_512.cpp
@@ -2089,6 +2089,23 @@ public:
put("vextractf32x4", XMM_KZ, _YMM, IMM8);
#endif
}
+ void putDisp8N()
+ {
+ {
+ const int tbl[] = {
+ -129, -128, -127, 0, 1, 64, 65, 127, 128
+ };
+ for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) {
+ char xs[128], ns[128];
+ int v = tbl[i];
+ CYBOZU_SNPRINTF(xs, sizeof(xs), "xmm0, ptr[eax%+d]", v);
+ CYBOZU_SNPRINTF(ns, sizeof(ns), "xmm0, [eax%+d]", v);
+ put("vpbroadcastb", xs, ns);
+ }
+ }
+ {
+ }
+ }
void putAVX512()
{
#ifdef MIN_TEST
@@ -2147,6 +2164,7 @@ public:
putScatter();
separateFunc();
putClass();
+ putDisp8N();
#endif
}
};