diff options
author | MITSUNARI Shigeo <[email protected]> | 2016-12-08 23:11:06 +0900 |
---|---|---|
committer | MITSUNARI Shigeo <[email protected]> | 2016-12-08 23:11:06 +0900 |
commit | 44614abc801ece108985a15a099171c3bf2b6089 (patch) | |
tree | ba907fb358c9a972d207a1e2cd3cb5b50166c8ed /test/make_512.cpp | |
parent | 2c54c052e4cc1ae5fb2c7c73d79228b0f40ab554 (diff) | |
download | xbyak-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.cpp | 18 |
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 } }; |