diff --git a/api/docs/release.dox b/api/docs/release.dox
index 5359fe8d8d3..a0333e528e6 100644
--- a/api/docs/release.dox
+++ b/api/docs/release.dox
@@ -143,6 +143,8 @@ Further non-compatibility-affecting changes include:
- Added the AArch64 FPMR register as DR_REG_FPMR.
- Added OPSZ_addr which chooses the appropriate operand size on X86 from 2/4/8 based
on the 32/64 bit mode and the presence or absence of the address size prefix.
+ - Fixed the order of operands for the vpexpandd/vpexpandq opcodes (previously the
+ source and destination operands were reversed).
**************************************************
diff --git a/core/ir/x86/decode_table.c b/core/ir/x86/decode_table.c
index f4edad2003d..4c7d1d869e9 100644
--- a/core/ir/x86/decode_table.c
+++ b/core/ir/x86/decode_table.c
@@ -8995,9 +8995,9 @@ const instr_info_t evex_Wb_extensions[][4] = {
{OP_vpcompressq, 0x66388b48, catSIMD, "vpcompressq", We, xx, KEb, Ve, xx, mrm|evex|reqp|ttt1s, x, END_LIST},
{INVALID, 0x66388b58, catUncategorized, "(bad)", xx,xx,xx,xx,xx,no,x,NA},
}, { /* evex_W_ext 168 */
- {OP_vpexpandd, 0x66388908, catSIMD, "vpexpandd", We, xx, KEw, Ve, xx, mrm|evex|reqp|ttt1s, x, END_LIST},
+ {OP_vpexpandd, 0x66388908, catSIMD, "vpexpandd", Ve, xx, KEw, We, xx, mrm|evex|reqp|ttt1s, x, END_LIST},
{INVALID, 0x66388918, catUncategorized, "(bad)", xx,xx,xx,xx,xx,no,x,NA},
- {OP_vpexpandq, 0x66388948, catSIMD, "vpexpandq", We, xx, KEb, Ve, xx, mrm|evex|reqp|ttt1s, x, END_LIST},
+ {OP_vpexpandq, 0x66388948, catSIMD, "vpexpandq", Ve, xx, KEb, We, xx, mrm|evex|reqp|ttt1s, x, END_LIST},
{INVALID, 0x66388958, catUncategorized, "(bad)", xx,xx,xx,xx,xx,no,x,NA},
}, { /* evex_W_ext 169 */
{OP_vptestmb, 0x66382608, catSIMD, "vptestmb", KPq, xx, KEq, He, We, mrm|evex|ttfvm, x, END_LIST},
diff --git a/suite/tests/api/ir_x86_3args_avx512_evex_mask.h b/suite/tests/api/ir_x86_3args_avx512_evex_mask.h
index ddcb1aa8fb6..b09f92cc2b0 100644
--- a/suite/tests/api/ir_x86_3args_avx512_evex_mask.h
+++ b/suite/tests/api/ir_x86_3args_avx512_evex_mask.h
@@ -2771,42 +2771,42 @@ OPCODE(vpcompressq_zlok0zlo, vpcompressq, vpcompressq_mask, 0, REGARG(ZMM1), REG
REGARG(ZMM0))
OPCODE(vpcompressq_zhik7zhi, vpcompressq, vpcompressq_mask, X64_ONLY, REGARG(ZMM31),
REGARG(K7), REGARG(ZMM16))
-OPCODE(vpexpandd_xlok0st, vpexpandd, vpexpandd_mask, 0, MEMARG(OPSZ_16), REGARG(K0),
- REGARG(XMM0))
-OPCODE(vpexpandd_xlok0xlo, vpexpandd, vpexpandd_mask, 0, REGARG(XMM1), REGARG(K0),
- REGARG(XMM0))
-OPCODE(vpexpandd_xhik7xhi, vpexpandd, vpexpandd_mask, X64_ONLY, REGARG(XMM31), REGARG(K7),
- REGARG(XMM16))
-OPCODE(vpexpandd_ylok0st, vpexpandd, vpexpandd_mask, 0, MEMARG(OPSZ_32), REGARG(K0),
- REGARG(YMM0))
-OPCODE(vpexpandd_ylok0ylo, vpexpandd, vpexpandd_mask, 0, REGARG(YMM1), REGARG(K0),
- REGARG(YMM0))
-OPCODE(vpexpandd_yhik7yhi, vpexpandd, vpexpandd_mask, X64_ONLY, REGARG(YMM31), REGARG(K7),
- REGARG(YMM16))
-OPCODE(vpexpandd_zlok0st, vpexpandd, vpexpandd_mask, 0, MEMARG(OPSZ_64), REGARG(K0),
- REGARG(ZMM0))
-OPCODE(vpexpandd_zlok0zlo, vpexpandd, vpexpandd_mask, 0, REGARG(ZMM1), REGARG(K0),
- REGARG(ZMM0))
-OPCODE(vpexpandd_zhik7zhi, vpexpandd, vpexpandd_mask, X64_ONLY, REGARG(ZMM31), REGARG(K7),
- REGARG(ZMM16))
-OPCODE(vpexpandq_xlok0st, vpexpandq, vpexpandq_mask, 0, MEMARG(OPSZ_16), REGARG(K0),
- REGARG(XMM0))
-OPCODE(vpexpandq_xlok0xlo, vpexpandq, vpexpandq_mask, 0, REGARG(XMM1), REGARG(K0),
- REGARG(XMM0))
-OPCODE(vpexpandq_xhik7xhi, vpexpandq, vpexpandq_mask, X64_ONLY, REGARG(XMM31), REGARG(K7),
- REGARG(XMM16))
-OPCODE(vpexpandq_ylok0st, vpexpandq, vpexpandq_mask, 0, MEMARG(OPSZ_32), REGARG(K0),
- REGARG(YMM0))
-OPCODE(vpexpandq_ylok0ylo, vpexpandq, vpexpandq_mask, 0, REGARG(YMM1), REGARG(K0),
- REGARG(YMM0))
-OPCODE(vpexpandq_yhik7yhi, vpexpandq, vpexpandq_mask, X64_ONLY, REGARG(YMM31), REGARG(K7),
- REGARG(YMM16))
-OPCODE(vpexpandq_zlok0st, vpexpandq, vpexpandq_mask, 0, MEMARG(OPSZ_64), REGARG(K0),
- REGARG(ZMM0))
-OPCODE(vpexpandq_zlok0zlo, vpexpandq, vpexpandq_mask, 0, REGARG(ZMM1), REGARG(K0),
- REGARG(ZMM0))
-OPCODE(vpexpandq_zhik7zhi, vpexpandq, vpexpandq_mask, X64_ONLY, REGARG(ZMM31), REGARG(K7),
- REGARG(ZMM16))
+OPCODE(vpexpandd_xlok0ld, vpexpandd, vpexpandd_mask, 0, REGARG(XMM0), REGARG(K0),
+ MEMARG(OPSZ_16))
+OPCODE(vpexpandd_xlok0xlo, vpexpandd, vpexpandd_mask, 0, REGARG(XMM0), REGARG(K0),
+ REGARG(XMM1))
+OPCODE(vpexpandd_xhik7xhi, vpexpandd, vpexpandd_mask, X64_ONLY, REGARG(XMM16), REGARG(K7),
+ REGARG(XMM31))
+OPCODE(vpexpandd_ylok0ld, vpexpandd, vpexpandd_mask, 0, REGARG(YMM0), REGARG(K0),
+ MEMARG(OPSZ_32))
+OPCODE(vpexpandd_ylok0ylo, vpexpandd, vpexpandd_mask, 0, REGARG(YMM0), REGARG(K0),
+ REGARG(YMM1))
+OPCODE(vpexpandd_yhik7yhi, vpexpandd, vpexpandd_mask, X64_ONLY, REGARG(YMM16), REGARG(K7),
+ REGARG(YMM31))
+OPCODE(vpexpandd_zlok0ld, vpexpandd, vpexpandd_mask, 0, REGARG(ZMM0), REGARG(K0),
+ MEMARG(OPSZ_64))
+OPCODE(vpexpandd_zlok0zlo, vpexpandd, vpexpandd_mask, 0, REGARG(ZMM0), REGARG(K0),
+ REGARG(ZMM1))
+OPCODE(vpexpandd_zhik7zhi, vpexpandd, vpexpandd_mask, X64_ONLY, REGARG(ZMM16), REGARG(K7),
+ REGARG(ZMM31))
+OPCODE(vpexpandq_xlok0ld, vpexpandq, vpexpandq_mask, 0, REGARG(XMM0), REGARG(K0),
+ MEMARG(OPSZ_16))
+OPCODE(vpexpandq_xlok0xlo, vpexpandq, vpexpandq_mask, 0, REGARG(XMM0), REGARG(K0),
+ REGARG(XMM1))
+OPCODE(vpexpandq_xhik7xhi, vpexpandq, vpexpandq_mask, X64_ONLY, REGARG(XMM16), REGARG(K7),
+ REGARG(XMM31))
+OPCODE(vpexpandq_ylok0ld, vpexpandq, vpexpandq_mask, 0, REGARG(YMM0), REGARG(K0),
+ MEMARG(OPSZ_32))
+OPCODE(vpexpandq_ylok0ylo, vpexpandq, vpexpandq_mask, 0, REGARG(YMM0), REGARG(K0),
+ REGARG(YMM1))
+OPCODE(vpexpandq_yhik7yhi, vpexpandq, vpexpandq_mask, X64_ONLY, REGARG(YMM16), REGARG(K7),
+ REGARG(YMM31))
+OPCODE(vpexpandq_zlok0ld, vpexpandq, vpexpandq_mask, 0, REGARG(ZMM0), REGARG(K0),
+ MEMARG(OPSZ_64))
+OPCODE(vpexpandq_zlok0zlo, vpexpandq, vpexpandq_mask, 0, REGARG(ZMM0), REGARG(K0),
+ REGARG(ZMM1))
+OPCODE(vpexpandq_zhik7zhi, vpexpandq, vpexpandq_mask, X64_ONLY, REGARG(ZMM16), REGARG(K7),
+ REGARG(ZMM31))
OPCODE(vrsqrt14ps_xlok0ld, vrsqrt14ps, vrsqrt14ps_mask, 0, REGARG(XMM0), REGARG(K0),
MEMARG(OPSZ_16))
OPCODE(vrsqrt14ps_xlok0bcst, vrsqrt14ps, vrsqrt14ps_mask, 0, REGARG(XMM0), REGARG(K0),
diff --git a/third_party/binutils/test_decenc/drdecode_decenc_x86.expect b/third_party/binutils/test_decenc/drdecode_decenc_x86.expect
index 8e0b22db62a..c9fee1334ef 100644
--- a/third_party/binutils/test_decenc/drdecode_decenc_x86.expect
+++ b/third_party/binutils/test_decenc/drdecode_decenc_x86.expect
@@ -104419,34 +104419,34 @@ test_s:
7b
62 f3 fd 58 00 b2 f8 vpermq -0x00000408(%edx), $0x7b, %zmm6 {%k0}
fb ff ff 7b
- 62 f2 7d 48 89 31 vpexpandd %zmm6, (%ecx) {%k0}
- 62 f2 7d 4f 89 31 vpexpandd %zmm6, (%ecx) {%k7}
- 62 f2 7d cf 89 31 vpexpandd %zmm6, (%ecx) {%k7}
- 62 f2 7d 48 89 b4 f4 vpexpandd %zmm6, -0x0001e240(%esp,%esi,8) {%k0}
- c0 1d fe ff
- 62 f2 7d 48 89 72 7f vpexpandd %zmm6, 0x000001fc(%edx) {%k0}
- 62 f2 7d 48 89 b2 00 vpexpandd %zmm6, 0x00000200(%edx) {%k0}
- 02 00 00
- 62 f2 7d 48 89 72 80 vpexpandd %zmm6, -0x00000200(%edx) {%k0}
- 62 f2 7d 48 89 b2 fc vpexpandd %zmm6, -0x00000204(%edx) {%k0}
- fd ff ff
- 62 f2 7d 48 89 f5 vpexpandd %zmm6, %zmm5 {%k0}
- 62 f2 7d 4f 89 f5 vpexpandd %zmm6, %zmm5 {%k7}
- 62 f2 7d cf 89 f5 vpexpandd %zmm6, %zmm5 {%k7}
- 62 f2 fd 48 89 31 vpexpandq %zmm6, (%ecx) {%k0}
- 62 f2 fd 4f 89 31 vpexpandq %zmm6, (%ecx) {%k7}
- 62 f2 fd cf 89 31 vpexpandq %zmm6, (%ecx) {%k7}
- 62 f2 fd 48 89 b4 f4 vpexpandq %zmm6, -0x0001e240(%esp,%esi,8) {%k0}
- c0 1d fe ff
- 62 f2 fd 48 89 72 7f vpexpandq %zmm6, 0x000003f8(%edx) {%k0}
- 62 f2 fd 48 89 b2 00 vpexpandq %zmm6, 0x00000400(%edx) {%k0}
- 04 00 00
- 62 f2 fd 48 89 72 80 vpexpandq %zmm6, -0x00000400(%edx) {%k0}
- 62 f2 fd 48 89 b2 f8 vpexpandq %zmm6, -0x00000408(%edx) {%k0}
- fb ff ff
- 62 f2 fd 48 89 f5 vpexpandq %zmm6, %zmm5 {%k0}
- 62 f2 fd 4f 89 f5 vpexpandq %zmm6, %zmm5 {%k7}
- 62 f2 fd cf 89 f5 vpexpandq %zmm6, %zmm5 {%k7}
+ 62 f2 7d 48 89 31 vpexpandd (%ecx), %zmm6 {%k0}
+ 62 f2 7d 4f 89 31 vpexpandd (%ecx), %zmm6 {%k7}
+ 62 f2 7d cf 89 31 vpexpandd (%ecx), %zmm6 {%k7}
+ 62 f2 7d 48 89 b4 f4 vpexpandd -0x0001e240(%esp,%esi,8), %zmm6 {%k0}
+ c0 1d fe ff
+ 62 f2 7d 48 89 72 7f vpexpandd 0x000001fc(%edx), %zmm6 {%k0}
+ 62 f2 7d 48 89 b2 00 vpexpandd 0x00000200(%edx), %zmm6 {%k0}
+ 02 00 00
+ 62 f2 7d 48 89 72 80 vpexpandd -0x00000200(%edx), %zmm6 {%k0}
+ 62 f2 7d 48 89 b2 fc vpexpandd -0x00000204(%edx), %zmm6 {%k0}
+ fd ff ff
+ 62 f2 7d 48 89 f5 vpexpandd %zmm5, %zmm6 {%k0}
+ 62 f2 7d 4f 89 f5 vpexpandd %zmm5, %zmm6 {%k7}
+ 62 f2 7d cf 89 f5 vpexpandd %zmm5, %zmm6 {%k7}
+ 62 f2 fd 48 89 31 vpexpandq (%ecx), %zmm6 {%k0}
+ 62 f2 fd 4f 89 31 vpexpandq (%ecx), %zmm6 {%k7}
+ 62 f2 fd cf 89 31 vpexpandq (%ecx), %zmm6 {%k7}
+ 62 f2 fd 48 89 b4 f4 vpexpandq -0x0001e240(%esp,%esi,8), %zmm6 {%k0}
+ c0 1d fe ff
+ 62 f2 fd 48 89 72 7f vpexpandq 0x000003f8(%edx), %zmm6 {%k0}
+ 62 f2 fd 48 89 b2 00 vpexpandq 0x00000400(%edx), %zmm6 {%k0}
+ 04 00 00
+ 62 f2 fd 48 89 72 80 vpexpandq -0x00000400(%edx), %zmm6 {%k0}
+ 62 f2 fd 48 89 b2 f8 vpexpandq -0x00000408(%edx), %zmm6 {%k0}
+ fb ff ff
+ 62 f2 fd 48 89 f5 vpexpandq %zmm5, %zmm6 {%k0}
+ 62 f2 fd 4f 89 f5 vpexpandq %zmm5, %zmm6 {%k7}
+ 62 f2 fd cf 89 f5 vpexpandq %zmm5, %zmm6 {%k7}
62 f2 7d 49 90 b4 fd vpgatherdd 0x0000007b(%ebp,%zmm7,8), %zmm6 {%k1} {%k1}
7b 00 00 00
62 f2 7d 49 90 b4 fd vpgatherdd 0x0000007b(%ebp,%zmm7,8), %zmm6 {%k1} {%k1}
@@ -114138,34 +114138,34 @@ test_s:
7b
62 f3 fd 58 00 b2 f8 vpermq -0x00000408(%edx), $0x7b, %zmm6 {%k0}
fb ff ff 7b
- 62 f2 7d 48 89 31 vpexpandd %zmm6, (%ecx) {%k0}
- 62 f2 7d 4f 89 31 vpexpandd %zmm6, (%ecx) {%k7}
- 62 f2 7d cf 89 31 vpexpandd %zmm6, (%ecx) {%k7}
- 62 f2 7d 48 89 b4 f4 vpexpandd %zmm6, -0x0001e240(%esp,%esi,8) {%k0}
- c0 1d fe ff
- 62 f2 7d 48 89 72 7f vpexpandd %zmm6, 0x000001fc(%edx) {%k0}
- 62 f2 7d 48 89 b2 00 vpexpandd %zmm6, 0x00000200(%edx) {%k0}
- 02 00 00
- 62 f2 7d 48 89 72 80 vpexpandd %zmm6, -0x00000200(%edx) {%k0}
- 62 f2 7d 48 89 b2 fc vpexpandd %zmm6, -0x00000204(%edx) {%k0}
- fd ff ff
- 62 f2 7d 48 89 f5 vpexpandd %zmm6, %zmm5 {%k0}
- 62 f2 7d 4f 89 f5 vpexpandd %zmm6, %zmm5 {%k7}
- 62 f2 7d cf 89 f5 vpexpandd %zmm6, %zmm5 {%k7}
- 62 f2 fd 48 89 31 vpexpandq %zmm6, (%ecx) {%k0}
- 62 f2 fd 4f 89 31 vpexpandq %zmm6, (%ecx) {%k7}
- 62 f2 fd cf 89 31 vpexpandq %zmm6, (%ecx) {%k7}
- 62 f2 fd 48 89 b4 f4 vpexpandq %zmm6, -0x0001e240(%esp,%esi,8) {%k0}
- c0 1d fe ff
- 62 f2 fd 48 89 72 7f vpexpandq %zmm6, 0x000003f8(%edx) {%k0}
- 62 f2 fd 48 89 b2 00 vpexpandq %zmm6, 0x00000400(%edx) {%k0}
- 04 00 00
- 62 f2 fd 48 89 72 80 vpexpandq %zmm6, -0x00000400(%edx) {%k0}
- 62 f2 fd 48 89 b2 f8 vpexpandq %zmm6, -0x00000408(%edx) {%k0}
- fb ff ff
- 62 f2 fd 48 89 f5 vpexpandq %zmm6, %zmm5 {%k0}
- 62 f2 fd 4f 89 f5 vpexpandq %zmm6, %zmm5 {%k7}
- 62 f2 fd cf 89 f5 vpexpandq %zmm6, %zmm5 {%k7}
+ 62 f2 7d 48 89 31 vpexpandd (%ecx), %zmm6 {%k0}
+ 62 f2 7d 4f 89 31 vpexpandd (%ecx), %zmm6 {%k7}
+ 62 f2 7d cf 89 31 vpexpandd (%ecx), %zmm6 {%k7}
+ 62 f2 7d 48 89 b4 f4 vpexpandd -0x0001e240(%esp,%esi,8), %zmm6 {%k0}
+ c0 1d fe ff
+ 62 f2 7d 48 89 72 7f vpexpandd 0x000001fc(%edx), %zmm6 {%k0}
+ 62 f2 7d 48 89 b2 00 vpexpandd 0x00000200(%edx), %zmm6 {%k0}
+ 02 00 00
+ 62 f2 7d 48 89 72 80 vpexpandd -0x00000200(%edx), %zmm6 {%k0}
+ 62 f2 7d 48 89 b2 fc vpexpandd -0x00000204(%edx), %zmm6 {%k0}
+ fd ff ff
+ 62 f2 7d 48 89 f5 vpexpandd %zmm5, %zmm6 {%k0}
+ 62 f2 7d 4f 89 f5 vpexpandd %zmm5, %zmm6 {%k7}
+ 62 f2 7d cf 89 f5 vpexpandd %zmm5, %zmm6 {%k7}
+ 62 f2 fd 48 89 31 vpexpandq (%ecx), %zmm6 {%k0}
+ 62 f2 fd 4f 89 31 vpexpandq (%ecx), %zmm6 {%k7}
+ 62 f2 fd cf 89 31 vpexpandq (%ecx), %zmm6 {%k7}
+ 62 f2 fd 48 89 b4 f4 vpexpandq -0x0001e240(%esp,%esi,8), %zmm6 {%k0}
+ c0 1d fe ff
+ 62 f2 fd 48 89 72 7f vpexpandq 0x000003f8(%edx), %zmm6 {%k0}
+ 62 f2 fd 48 89 b2 00 vpexpandq 0x00000400(%edx), %zmm6 {%k0}
+ 04 00 00
+ 62 f2 fd 48 89 72 80 vpexpandq -0x00000400(%edx), %zmm6 {%k0}
+ 62 f2 fd 48 89 b2 f8 vpexpandq -0x00000408(%edx), %zmm6 {%k0}
+ fb ff ff
+ 62 f2 fd 48 89 f5 vpexpandq %zmm5, %zmm6 {%k0}
+ 62 f2 fd 4f 89 f5 vpexpandq %zmm5, %zmm6 {%k7}
+ 62 f2 fd cf 89 f5 vpexpandq %zmm5, %zmm6 {%k7}
62 f2 7d 49 90 b4 fd vpgatherdd -0x0000007b(%ebp,%zmm7,8), %zmm6 {%k1} {%k1}
85 ff ff ff
62 f2 7d 49 90 b4 fd vpgatherdd -0x0000007b(%ebp,%zmm7,8), %zmm6 {%k1} {%k1}
@@ -121570,54 +121570,54 @@ test_s:
7b
62 f3 fd 3f 00 b2 f8 vpermq -0x00000408(%edx), $0x7b, %ymm6 {%k7}
fb ff ff 7b
- 62 f2 7d 0f 89 31 vpexpandd %xmm6, (%ecx) {%k7}
- 62 f2 7d 8f 89 31 vpexpandd %xmm6, (%ecx) {%k7}
- 62 f2 7d 0f 89 b4 f4 vpexpandd %xmm6, -0x0001e240(%esp,%esi,8) {%k7}
+ 62 f2 7d 0f 89 31 vpexpandd (%ecx), %xmm6 {%k7}
+ 62 f2 7d 8f 89 31 vpexpandd (%ecx), %xmm6 {%k7}
+ 62 f2 7d 0f 89 b4 f4 vpexpandd -0x0001e240(%esp,%esi,8), %xmm6 {%k7}
c0 1d fe ff
- 62 f2 7d 0f 89 72 7f vpexpandd %xmm6, 0x000001fc(%edx) {%k7}
- 62 f2 7d 0f 89 b2 00 vpexpandd %xmm6, 0x00000200(%edx) {%k7}
+ 62 f2 7d 0f 89 72 7f vpexpandd 0x000001fc(%edx), %xmm6 {%k7}
+ 62 f2 7d 0f 89 b2 00 vpexpandd 0x00000200(%edx), %xmm6 {%k7}
02 00 00
- 62 f2 7d 0f 89 72 80 vpexpandd %xmm6, -0x00000200(%edx) {%k7}
- 62 f2 7d 0f 89 b2 fc vpexpandd %xmm6, -0x00000204(%edx) {%k7}
+ 62 f2 7d 0f 89 72 80 vpexpandd -0x00000200(%edx), %xmm6 {%k7}
+ 62 f2 7d 0f 89 b2 fc vpexpandd -0x00000204(%edx), %xmm6 {%k7}
fd ff ff
- 62 f2 7d 2f 89 31 vpexpandd %ymm6, (%ecx) {%k7}
- 62 f2 7d af 89 31 vpexpandd %ymm6, (%ecx) {%k7}
- 62 f2 7d 2f 89 b4 f4 vpexpandd %ymm6, -0x0001e240(%esp,%esi,8) {%k7}
+ 62 f2 7d 2f 89 31 vpexpandd (%ecx), %ymm6 {%k7}
+ 62 f2 7d af 89 31 vpexpandd (%ecx), %ymm6 {%k7}
+ 62 f2 7d 2f 89 b4 f4 vpexpandd -0x0001e240(%esp,%esi,8), %ymm6 {%k7}
c0 1d fe ff
- 62 f2 7d 2f 89 72 7f vpexpandd %ymm6, 0x000001fc(%edx) {%k7}
- 62 f2 7d 2f 89 b2 00 vpexpandd %ymm6, 0x00000200(%edx) {%k7}
+ 62 f2 7d 2f 89 72 7f vpexpandd 0x000001fc(%edx), %ymm6 {%k7}
+ 62 f2 7d 2f 89 b2 00 vpexpandd 0x00000200(%edx), %ymm6 {%k7}
02 00 00
- 62 f2 7d 2f 89 72 80 vpexpandd %ymm6, -0x00000200(%edx) {%k7}
- 62 f2 7d 2f 89 b2 fc vpexpandd %ymm6, -0x00000204(%edx) {%k7}
+ 62 f2 7d 2f 89 72 80 vpexpandd -0x00000200(%edx), %ymm6 {%k7}
+ 62 f2 7d 2f 89 b2 fc vpexpandd -0x00000204(%edx), %ymm6 {%k7}
fd ff ff
- 62 f2 7d 0f 89 f5 vpexpandd %xmm6, %xmm5 {%k7}
- 62 f2 7d 8f 89 f5 vpexpandd %xmm6, %xmm5 {%k7}
- 62 f2 7d 2f 89 f5 vpexpandd %ymm6, %ymm5 {%k7}
- 62 f2 7d af 89 f5 vpexpandd %ymm6, %ymm5 {%k7}
- 62 f2 fd 0f 89 31 vpexpandq %xmm6, (%ecx) {%k7}
- 62 f2 fd 8f 89 31 vpexpandq %xmm6, (%ecx) {%k7}
- 62 f2 fd 0f 89 b4 f4 vpexpandq %xmm6, -0x0001e240(%esp,%esi,8) {%k7}
+ 62 f2 7d 0f 89 f5 vpexpandd %xmm5, %xmm6 {%k7}
+ 62 f2 7d 8f 89 f5 vpexpandd %xmm5, %xmm6 {%k7}
+ 62 f2 7d 2f 89 f5 vpexpandd %ymm5, %ymm6 {%k7}
+ 62 f2 7d af 89 f5 vpexpandd %ymm5, %ymm6 {%k7}
+ 62 f2 fd 0f 89 31 vpexpandq (%ecx), %xmm6 {%k7}
+ 62 f2 fd 8f 89 31 vpexpandq (%ecx), %xmm6 {%k7}
+ 62 f2 fd 0f 89 b4 f4 vpexpandq -0x0001e240(%esp,%esi,8), %xmm6 {%k7}
c0 1d fe ff
- 62 f2 fd 0f 89 72 7f vpexpandq %xmm6, 0x000003f8(%edx) {%k7}
- 62 f2 fd 0f 89 b2 00 vpexpandq %xmm6, 0x00000400(%edx) {%k7}
+ 62 f2 fd 0f 89 72 7f vpexpandq 0x000003f8(%edx), %xmm6 {%k7}
+ 62 f2 fd 0f 89 b2 00 vpexpandq 0x00000400(%edx), %xmm6 {%k7}
04 00 00
- 62 f2 fd 0f 89 72 80 vpexpandq %xmm6, -0x00000400(%edx) {%k7}
- 62 f2 fd 0f 89 b2 f8 vpexpandq %xmm6, -0x00000408(%edx) {%k7}
+ 62 f2 fd 0f 89 72 80 vpexpandq -0x00000400(%edx), %xmm6 {%k7}
+ 62 f2 fd 0f 89 b2 f8 vpexpandq -0x00000408(%edx), %xmm6 {%k7}
fb ff ff
- 62 f2 fd 2f 89 31 vpexpandq %ymm6, (%ecx) {%k7}
- 62 f2 fd af 89 31 vpexpandq %ymm6, (%ecx) {%k7}
- 62 f2 fd 2f 89 b4 f4 vpexpandq %ymm6, -0x0001e240(%esp,%esi,8) {%k7}
+ 62 f2 fd 2f 89 31 vpexpandq (%ecx), %ymm6 {%k7}
+ 62 f2 fd af 89 31 vpexpandq (%ecx), %ymm6 {%k7}
+ 62 f2 fd 2f 89 b4 f4 vpexpandq -0x0001e240(%esp,%esi,8), %ymm6 {%k7}
c0 1d fe ff
- 62 f2 fd 2f 89 72 7f vpexpandq %ymm6, 0x000003f8(%edx) {%k7}
- 62 f2 fd 2f 89 b2 00 vpexpandq %ymm6, 0x00000400(%edx) {%k7}
+ 62 f2 fd 2f 89 72 7f vpexpandq 0x000003f8(%edx), %ymm6 {%k7}
+ 62 f2 fd 2f 89 b2 00 vpexpandq 0x00000400(%edx), %ymm6 {%k7}
04 00 00
- 62 f2 fd 2f 89 72 80 vpexpandq %ymm6, -0x00000400(%edx) {%k7}
- 62 f2 fd 2f 89 b2 f8 vpexpandq %ymm6, -0x00000408(%edx) {%k7}
+ 62 f2 fd 2f 89 72 80 vpexpandq -0x00000400(%edx), %ymm6 {%k7}
+ 62 f2 fd 2f 89 b2 f8 vpexpandq -0x00000408(%edx), %ymm6 {%k7}
fb ff ff
- 62 f2 fd 0f 89 f5 vpexpandq %xmm6, %xmm5 {%k7}
- 62 f2 fd 8f 89 f5 vpexpandq %xmm6, %xmm5 {%k7}
- 62 f2 fd 2f 89 f5 vpexpandq %ymm6, %ymm5 {%k7}
- 62 f2 fd af 89 f5 vpexpandq %ymm6, %ymm5 {%k7}
+ 62 f2 fd 0f 89 f5 vpexpandq %xmm5, %xmm6 {%k7}
+ 62 f2 fd 8f 89 f5 vpexpandq %xmm5, %xmm6 {%k7}
+ 62 f2 fd 2f 89 f5 vpexpandq %ymm5, %ymm6 {%k7}
+ 62 f2 fd af 89 f5 vpexpandq %ymm5, %ymm6 {%k7}
62 f2 7d 09 90 b4 fd vpgatherdd 0x0000007b(%ebp,%xmm7,8), %xmm6 {%k1} {%k1}
7b 00 00 00
62 f2 7d 09 90 74 38 vpgatherdd 0x40(%eax,%xmm7), %xmm6 {%k1} {%k1}
@@ -129774,54 +129774,54 @@ test_s:
7b
62 f3 fd 3f 00 b2 f8 vpermq -0x00000408(%edx), $0x7b, %ymm6 {%k7}
fb ff ff 7b
- 62 f2 7d 0f 89 31 vpexpandd %xmm6, (%ecx) {%k7}
- 62 f2 7d 8f 89 31 vpexpandd %xmm6, (%ecx) {%k7}
- 62 f2 7d 0f 89 b4 f4 vpexpandd %xmm6, -0x0001e240(%esp,%esi,8) {%k7}
+ 62 f2 7d 0f 89 31 vpexpandd (%ecx), %xmm6 {%k7}
+ 62 f2 7d 8f 89 31 vpexpandd (%ecx), %xmm6 {%k7}
+ 62 f2 7d 0f 89 b4 f4 vpexpandd -0x0001e240(%esp,%esi,8), %xmm6 {%k7}
c0 1d fe ff
- 62 f2 7d 0f 89 72 7f vpexpandd %xmm6, 0x000001fc(%edx) {%k7}
- 62 f2 7d 0f 89 b2 00 vpexpandd %xmm6, 0x00000200(%edx) {%k7}
+ 62 f2 7d 0f 89 72 7f vpexpandd 0x000001fc(%edx), %xmm6 {%k7}
+ 62 f2 7d 0f 89 b2 00 vpexpandd 0x00000200(%edx), %xmm6 {%k7}
02 00 00
- 62 f2 7d 0f 89 72 80 vpexpandd %xmm6, -0x00000200(%edx) {%k7}
- 62 f2 7d 0f 89 b2 fc vpexpandd %xmm6, -0x00000204(%edx) {%k7}
+ 62 f2 7d 0f 89 72 80 vpexpandd -0x00000200(%edx), %xmm6 {%k7}
+ 62 f2 7d 0f 89 b2 fc vpexpandd -0x00000204(%edx), %xmm6 {%k7}
fd ff ff
- 62 f2 7d 2f 89 31 vpexpandd %ymm6, (%ecx) {%k7}
- 62 f2 7d af 89 31 vpexpandd %ymm6, (%ecx) {%k7}
- 62 f2 7d 2f 89 b4 f4 vpexpandd %ymm6, -0x0001e240(%esp,%esi,8) {%k7}
+ 62 f2 7d 2f 89 31 vpexpandd (%ecx), %ymm6 {%k7}
+ 62 f2 7d af 89 31 vpexpandd (%ecx), %ymm6 {%k7}
+ 62 f2 7d 2f 89 b4 f4 vpexpandd -0x0001e240(%esp,%esi,8), %ymm6 {%k7}
c0 1d fe ff
- 62 f2 7d 2f 89 72 7f vpexpandd %ymm6, 0x000001fc(%edx) {%k7}
- 62 f2 7d 2f 89 b2 00 vpexpandd %ymm6, 0x00000200(%edx) {%k7}
+ 62 f2 7d 2f 89 72 7f vpexpandd 0x000001fc(%edx), %ymm6 {%k7}
+ 62 f2 7d 2f 89 b2 00 vpexpandd 0x00000200(%edx), %ymm6 {%k7}
02 00 00
- 62 f2 7d 2f 89 72 80 vpexpandd %ymm6, -0x00000200(%edx) {%k7}
- 62 f2 7d 2f 89 b2 fc vpexpandd %ymm6, -0x00000204(%edx) {%k7}
+ 62 f2 7d 2f 89 72 80 vpexpandd -0x00000200(%edx), %ymm6 {%k7}
+ 62 f2 7d 2f 89 b2 fc vpexpandd -0x00000204(%edx), %ymm6 {%k7}
fd ff ff
- 62 f2 7d 0f 89 f5 vpexpandd %xmm6, %xmm5 {%k7}
- 62 f2 7d 8f 89 f5 vpexpandd %xmm6, %xmm5 {%k7}
- 62 f2 7d 2f 89 f5 vpexpandd %ymm6, %ymm5 {%k7}
- 62 f2 7d af 89 f5 vpexpandd %ymm6, %ymm5 {%k7}
- 62 f2 fd 0f 89 31 vpexpandq %xmm6, (%ecx) {%k7}
- 62 f2 fd 8f 89 31 vpexpandq %xmm6, (%ecx) {%k7}
- 62 f2 fd 0f 89 b4 f4 vpexpandq %xmm6, -0x0001e240(%esp,%esi,8) {%k7}
+ 62 f2 7d 0f 89 f5 vpexpandd %xmm5, %xmm6 {%k7}
+ 62 f2 7d 8f 89 f5 vpexpandd %xmm5, %xmm6 {%k7}
+ 62 f2 7d 2f 89 f5 vpexpandd %ymm5, %ymm6 {%k7}
+ 62 f2 7d af 89 f5 vpexpandd %ymm5, %ymm6 {%k7}
+ 62 f2 fd 0f 89 31 vpexpandq (%ecx), %xmm6 {%k7}
+ 62 f2 fd 8f 89 31 vpexpandq (%ecx), %xmm6 {%k7}
+ 62 f2 fd 0f 89 b4 f4 vpexpandq -0x0001e240(%esp,%esi,8), %xmm6 {%k7}
c0 1d fe ff
- 62 f2 fd 0f 89 72 7f vpexpandq %xmm6, 0x000003f8(%edx) {%k7}
- 62 f2 fd 0f 89 b2 00 vpexpandq %xmm6, 0x00000400(%edx) {%k7}
+ 62 f2 fd 0f 89 72 7f vpexpandq 0x000003f8(%edx), %xmm6 {%k7}
+ 62 f2 fd 0f 89 b2 00 vpexpandq 0x00000400(%edx), %xmm6 {%k7}
04 00 00
- 62 f2 fd 0f 89 72 80 vpexpandq %xmm6, -0x00000400(%edx) {%k7}
- 62 f2 fd 0f 89 b2 f8 vpexpandq %xmm6, -0x00000408(%edx) {%k7}
+ 62 f2 fd 0f 89 72 80 vpexpandq -0x00000400(%edx), %xmm6 {%k7}
+ 62 f2 fd 0f 89 b2 f8 vpexpandq -0x00000408(%edx), %xmm6 {%k7}
fb ff ff
- 62 f2 fd 2f 89 31 vpexpandq %ymm6, (%ecx) {%k7}
- 62 f2 fd af 89 31 vpexpandq %ymm6, (%ecx) {%k7}
- 62 f2 fd 2f 89 b4 f4 vpexpandq %ymm6, -0x0001e240(%esp,%esi,8) {%k7}
+ 62 f2 fd 2f 89 31 vpexpandq (%ecx), %ymm6 {%k7}
+ 62 f2 fd af 89 31 vpexpandq (%ecx), %ymm6 {%k7}
+ 62 f2 fd 2f 89 b4 f4 vpexpandq -0x0001e240(%esp,%esi,8), %ymm6 {%k7}
c0 1d fe ff
- 62 f2 fd 2f 89 72 7f vpexpandq %ymm6, 0x000003f8(%edx) {%k7}
- 62 f2 fd 2f 89 b2 00 vpexpandq %ymm6, 0x00000400(%edx) {%k7}
+ 62 f2 fd 2f 89 72 7f vpexpandq 0x000003f8(%edx), %ymm6 {%k7}
+ 62 f2 fd 2f 89 b2 00 vpexpandq 0x00000400(%edx), %ymm6 {%k7}
04 00 00
- 62 f2 fd 2f 89 72 80 vpexpandq %ymm6, -0x00000400(%edx) {%k7}
- 62 f2 fd 2f 89 b2 f8 vpexpandq %ymm6, -0x00000408(%edx) {%k7}
+ 62 f2 fd 2f 89 72 80 vpexpandq -0x00000400(%edx), %ymm6 {%k7}
+ 62 f2 fd 2f 89 b2 f8 vpexpandq -0x00000408(%edx), %ymm6 {%k7}
fb ff ff
- 62 f2 fd 0f 89 f5 vpexpandq %xmm6, %xmm5 {%k7}
- 62 f2 fd 8f 89 f5 vpexpandq %xmm6, %xmm5 {%k7}
- 62 f2 fd 2f 89 f5 vpexpandq %ymm6, %ymm5 {%k7}
- 62 f2 fd af 89 f5 vpexpandq %ymm6, %ymm5 {%k7}
+ 62 f2 fd 0f 89 f5 vpexpandq %xmm5, %xmm6 {%k7}
+ 62 f2 fd 8f 89 f5 vpexpandq %xmm5, %xmm6 {%k7}
+ 62 f2 fd 2f 89 f5 vpexpandq %ymm5, %ymm6 {%k7}
+ 62 f2 fd af 89 f5 vpexpandq %ymm5, %ymm6 {%k7}
62 f2 7d 09 90 b4 fd vpgatherdd -0x0000007b(%ebp,%xmm7,8), %xmm6 {%k1} {%k1}
85 ff ff ff
62 f2 7d 09 90 74 38 vpgatherdd 0x40(%eax,%xmm7), %xmm6 {%k1} {%k1}
diff --git a/third_party/binutils/test_decenc/drdecode_decenc_x86_64.expect b/third_party/binutils/test_decenc/drdecode_decenc_x86_64.expect
index 23be72d66c6..4bf56b4a61d 100644
--- a/third_party/binutils/test_decenc/drdecode_decenc_x86_64.expect
+++ b/third_party/binutils/test_decenc/drdecode_decenc_x86_64.expect
@@ -65700,34 +65700,34 @@ test_x86_64_s:
7b
62 63 fd 58 00 b2 f8 vpermq -0x00000408(%rdx), $0x7b, %zmm30 {%k0}
fb ff ff 7b
- 62 62 7d 48 89 31 vpexpandd %zmm30, (%rcx) {%k0}
- 62 62 7d 4f 89 31 vpexpandd %zmm30, (%rcx) {%k7}
- 62 62 7d cf 89 31 vpexpandd %zmm30, (%rcx) {%k7}
- 62 22 7d 48 89 b4 f0 vpexpandd %zmm30, 0x00000123(%rax,%r14,8) {%k0}
- 23 01 00 00
- 62 62 7d 48 89 72 7f vpexpandd %zmm30, 0x000001fc(%rdx) {%k0}
- 62 62 7d 48 89 b2 00 vpexpandd %zmm30, 0x00000200(%rdx) {%k0}
- 02 00 00
- 62 62 7d 48 89 72 80 vpexpandd %zmm30, -0x00000200(%rdx) {%k0}
- 62 62 7d 48 89 b2 fc vpexpandd %zmm30, -0x00000204(%rdx) {%k0}
- fd ff ff
- 62 02 7d 48 89 f5 vpexpandd %zmm30, %zmm29 {%k0}
- 62 02 7d 4f 89 f5 vpexpandd %zmm30, %zmm29 {%k7}
- 62 02 7d cf 89 f5 vpexpandd %zmm30, %zmm29 {%k7}
- 62 62 fd 48 89 31 vpexpandq %zmm30, (%rcx) {%k0}
- 62 62 fd 4f 89 31 vpexpandq %zmm30, (%rcx) {%k7}
- 62 62 fd cf 89 31 vpexpandq %zmm30, (%rcx) {%k7}
- 62 22 fd 48 89 b4 f0 vpexpandq %zmm30, 0x00000123(%rax,%r14,8) {%k0}
- 23 01 00 00
- 62 62 fd 48 89 72 7f vpexpandq %zmm30, 0x000003f8(%rdx) {%k0}
- 62 62 fd 48 89 b2 00 vpexpandq %zmm30, 0x00000400(%rdx) {%k0}
- 04 00 00
- 62 62 fd 48 89 72 80 vpexpandq %zmm30, -0x00000400(%rdx) {%k0}
- 62 62 fd 48 89 b2 f8 vpexpandq %zmm30, -0x00000408(%rdx) {%k0}
- fb ff ff
- 62 02 fd 48 89 f5 vpexpandq %zmm30, %zmm29 {%k0}
- 62 02 fd 4f 89 f5 vpexpandq %zmm30, %zmm29 {%k7}
- 62 02 fd cf 89 f5 vpexpandq %zmm30, %zmm29 {%k7}
+ 62 62 7d 48 89 31 vpexpandd (%rcx), %zmm30 {%k0}
+ 62 62 7d 4f 89 31 vpexpandd (%rcx), %zmm30 {%k7}
+ 62 62 7d cf 89 31 vpexpandd (%rcx), %zmm30 {%k7}
+ 62 22 7d 48 89 b4 f0 vpexpandd 0x00000123(%rax,%r14,8), %zmm30 {%k0}
+ 23 01 00 00
+ 62 62 7d 48 89 72 7f vpexpandd 0x000001fc(%rdx), %zmm30 {%k0}
+ 62 62 7d 48 89 b2 00 vpexpandd 0x00000200(%rdx), %zmm30 {%k0}
+ 02 00 00
+ 62 62 7d 48 89 72 80 vpexpandd -0x00000200(%rdx), %zmm30 {%k0}
+ 62 62 7d 48 89 b2 fc vpexpandd -0x00000204(%rdx), %zmm30 {%k0}
+ fd ff ff
+ 62 02 7d 48 89 f5 vpexpandd %zmm29, %zmm30 {%k0}
+ 62 02 7d 4f 89 f5 vpexpandd %zmm29, %zmm30 {%k7}
+ 62 02 7d cf 89 f5 vpexpandd %zmm29, %zmm30 {%k7}
+ 62 62 fd 48 89 31 vpexpandq (%rcx), %zmm30 {%k0}
+ 62 62 fd 4f 89 31 vpexpandq (%rcx), %zmm30 {%k7}
+ 62 62 fd cf 89 31 vpexpandq (%rcx), %zmm30 {%k7}
+ 62 22 fd 48 89 b4 f0 vpexpandq 0x00000123(%rax,%r14,8), %zmm30 {%k0}
+ 23 01 00 00
+ 62 62 fd 48 89 72 7f vpexpandq 0x000003f8(%rdx), %zmm30 {%k0}
+ 62 62 fd 48 89 b2 00 vpexpandq 0x00000400(%rdx), %zmm30 {%k0}
+ 04 00 00
+ 62 62 fd 48 89 72 80 vpexpandq -0x00000400(%rdx), %zmm30 {%k0}
+ 62 62 fd 48 89 b2 f8 vpexpandq -0x00000408(%rdx), %zmm30 {%k0}
+ fb ff ff
+ 62 02 fd 48 89 f5 vpexpandq %zmm29, %zmm30 {%k0}
+ 62 02 fd 4f 89 f5 vpexpandq %zmm29, %zmm30 {%k7}
+ 62 02 fd cf 89 f5 vpexpandq %zmm29, %zmm30 {%k7}
62 02 7d 41 90 b4 fe vpgatherdd 0x0000007b(%r14,%zmm31,8), %zmm30 {%k1} {%k1}
7b 00 00 00
62 02 7d 41 90 b4 fe vpgatherdd 0x0000007b(%r14,%zmm31,8), %zmm30 {%k1} {%k1}
@@ -75914,34 +75914,34 @@ test_x86_64_s:
7b
62 63 fd 58 00 b2 f8 vpermq -0x00000408(%rdx), $0x7b, %zmm30 {%k0}
fb ff ff 7b
- 62 62 7d 48 89 31 vpexpandd %zmm30, (%rcx) {%k0}
- 62 62 7d 4f 89 31 vpexpandd %zmm30, (%rcx) {%k7}
- 62 62 7d cf 89 31 vpexpandd %zmm30, (%rcx) {%k7}
- 62 22 7d 48 89 b4 f0 vpexpandd %zmm30, 0x00001234(%rax,%r14,8) {%k0}
- 34 12 00 00
- 62 62 7d 48 89 72 7f vpexpandd %zmm30, 0x000001fc(%rdx) {%k0}
- 62 62 7d 48 89 b2 00 vpexpandd %zmm30, 0x00000200(%rdx) {%k0}
- 02 00 00
- 62 62 7d 48 89 72 80 vpexpandd %zmm30, -0x00000200(%rdx) {%k0}
- 62 62 7d 48 89 b2 fc vpexpandd %zmm30, -0x00000204(%rdx) {%k0}
- fd ff ff
- 62 02 7d 48 89 f5 vpexpandd %zmm30, %zmm29 {%k0}
- 62 02 7d 4f 89 f5 vpexpandd %zmm30, %zmm29 {%k7}
- 62 02 7d cf 89 f5 vpexpandd %zmm30, %zmm29 {%k7}
- 62 62 fd 48 89 31 vpexpandq %zmm30, (%rcx) {%k0}
- 62 62 fd 4f 89 31 vpexpandq %zmm30, (%rcx) {%k7}
- 62 62 fd cf 89 31 vpexpandq %zmm30, (%rcx) {%k7}
- 62 22 fd 48 89 b4 f0 vpexpandq %zmm30, 0x00001234(%rax,%r14,8) {%k0}
- 34 12 00 00
- 62 62 fd 48 89 72 7f vpexpandq %zmm30, 0x000003f8(%rdx) {%k0}
- 62 62 fd 48 89 b2 00 vpexpandq %zmm30, 0x00000400(%rdx) {%k0}
- 04 00 00
- 62 62 fd 48 89 72 80 vpexpandq %zmm30, -0x00000400(%rdx) {%k0}
- 62 62 fd 48 89 b2 f8 vpexpandq %zmm30, -0x00000408(%rdx) {%k0}
- fb ff ff
- 62 02 fd 48 89 f5 vpexpandq %zmm30, %zmm29 {%k0}
- 62 02 fd 4f 89 f5 vpexpandq %zmm30, %zmm29 {%k7}
- 62 02 fd cf 89 f5 vpexpandq %zmm30, %zmm29 {%k7}
+ 62 62 7d 48 89 31 vpexpandd (%rcx), %zmm30 {%k0}
+ 62 62 7d 4f 89 31 vpexpandd (%rcx), %zmm30 {%k7}
+ 62 62 7d cf 89 31 vpexpandd (%rcx), %zmm30 {%k7}
+ 62 22 7d 48 89 b4 f0 vpexpandd 0x00001234(%rax,%r14,8), %zmm30 {%k0}
+ 34 12 00 00
+ 62 62 7d 48 89 72 7f vpexpandd 0x000001fc(%rdx), %zmm30 {%k0}
+ 62 62 7d 48 89 b2 00 vpexpandd 0x00000200(%rdx), %zmm30 {%k0}
+ 02 00 00
+ 62 62 7d 48 89 72 80 vpexpandd -0x00000200(%rdx), %zmm30 {%k0}
+ 62 62 7d 48 89 b2 fc vpexpandd -0x00000204(%rdx), %zmm30 {%k0}
+ fd ff ff
+ 62 02 7d 48 89 f5 vpexpandd %zmm29, %zmm30 {%k0}
+ 62 02 7d 4f 89 f5 vpexpandd %zmm29, %zmm30 {%k7}
+ 62 02 7d cf 89 f5 vpexpandd %zmm29, %zmm30 {%k7}
+ 62 62 fd 48 89 31 vpexpandq (%rcx), %zmm30 {%k0}
+ 62 62 fd 4f 89 31 vpexpandq (%rcx), %zmm30 {%k7}
+ 62 62 fd cf 89 31 vpexpandq (%rcx), %zmm30 {%k7}
+ 62 22 fd 48 89 b4 f0 vpexpandq 0x00001234(%rax,%r14,8), %zmm30 {%k0}
+ 34 12 00 00
+ 62 62 fd 48 89 72 7f vpexpandq 0x000003f8(%rdx), %zmm30 {%k0}
+ 62 62 fd 48 89 b2 00 vpexpandq 0x00000400(%rdx), %zmm30 {%k0}
+ 04 00 00
+ 62 62 fd 48 89 72 80 vpexpandq -0x00000400(%rdx), %zmm30 {%k0}
+ 62 62 fd 48 89 b2 f8 vpexpandq -0x00000408(%rdx), %zmm30 {%k0}
+ fb ff ff
+ 62 02 fd 48 89 f5 vpexpandq %zmm29, %zmm30 {%k0}
+ 62 02 fd 4f 89 f5 vpexpandq %zmm29, %zmm30 {%k7}
+ 62 02 fd cf 89 f5 vpexpandq %zmm29, %zmm30 {%k7}
62 02 7d 41 90 b4 fe vpgatherdd -0x0000007b(%r14,%zmm31,8), %zmm30 {%k1} {%k1}
85 ff ff ff
62 02 7d 41 90 b4 fe vpgatherdd -0x0000007b(%r14,%zmm31,8), %zmm30 {%k1} {%k1}
@@ -83985,62 +83985,62 @@ test_x86_64_s:
7b
62 63 fd 38 00 b2 f8 vpermq -0x00000408(%rdx), $0x7b, %ymm30 {%k0}
fb ff ff 7b
- 62 62 7d 08 89 31 vpexpandd %xmm30, (%rcx) {%k0}
- 62 62 7d 0f 89 31 vpexpandd %xmm30, (%rcx) {%k7}
- 62 62 7d 8f 89 31 vpexpandd %xmm30, (%rcx) {%k7}
- 62 22 7d 08 89 b4 f0 vpexpandd %xmm30, 0x00000123(%rax,%r14,8) {%k0}
- 23 01 00 00
- 62 62 7d 08 89 72 7f vpexpandd %xmm30, 0x000001fc(%rdx) {%k0}
- 62 62 7d 08 89 b2 00 vpexpandd %xmm30, 0x00000200(%rdx) {%k0}
- 02 00 00
- 62 62 7d 08 89 72 80 vpexpandd %xmm30, -0x00000200(%rdx) {%k0}
- 62 62 7d 08 89 b2 fc vpexpandd %xmm30, -0x00000204(%rdx) {%k0}
- fd ff ff
- 62 62 7d 28 89 31 vpexpandd %ymm30, (%rcx) {%k0}
- 62 62 7d 2f 89 31 vpexpandd %ymm30, (%rcx) {%k7}
- 62 62 7d af 89 31 vpexpandd %ymm30, (%rcx) {%k7}
- 62 22 7d 28 89 b4 f0 vpexpandd %ymm30, 0x00000123(%rax,%r14,8) {%k0}
- 23 01 00 00
- 62 62 7d 28 89 72 7f vpexpandd %ymm30, 0x000001fc(%rdx) {%k0}
- 62 62 7d 28 89 b2 00 vpexpandd %ymm30, 0x00000200(%rdx) {%k0}
- 02 00 00
- 62 62 7d 28 89 72 80 vpexpandd %ymm30, -0x00000200(%rdx) {%k0}
- 62 62 7d 28 89 b2 fc vpexpandd %ymm30, -0x00000204(%rdx) {%k0}
- fd ff ff
- 62 02 7d 08 89 f5 vpexpandd %xmm30, %xmm29 {%k0}
- 62 02 7d 0f 89 f5 vpexpandd %xmm30, %xmm29 {%k7}
- 62 02 7d 8f 89 f5 vpexpandd %xmm30, %xmm29 {%k7}
- 62 02 7d 28 89 f5 vpexpandd %ymm30, %ymm29 {%k0}
- 62 02 7d 2f 89 f5 vpexpandd %ymm30, %ymm29 {%k7}
- 62 02 7d af 89 f5 vpexpandd %ymm30, %ymm29 {%k7}
- 62 62 fd 08 89 31 vpexpandq %xmm30, (%rcx) {%k0}
- 62 62 fd 0f 89 31 vpexpandq %xmm30, (%rcx) {%k7}
- 62 62 fd 8f 89 31 vpexpandq %xmm30, (%rcx) {%k7}
- 62 22 fd 08 89 b4 f0 vpexpandq %xmm30, 0x00000123(%rax,%r14,8) {%k0}
- 23 01 00 00
- 62 62 fd 08 89 72 7f vpexpandq %xmm30, 0x000003f8(%rdx) {%k0}
- 62 62 fd 08 89 b2 00 vpexpandq %xmm30, 0x00000400(%rdx) {%k0}
- 04 00 00
- 62 62 fd 08 89 72 80 vpexpandq %xmm30, -0x00000400(%rdx) {%k0}
- 62 62 fd 08 89 b2 f8 vpexpandq %xmm30, -0x00000408(%rdx) {%k0}
- fb ff ff
- 62 62 fd 28 89 31 vpexpandq %ymm30, (%rcx) {%k0}
- 62 62 fd 2f 89 31 vpexpandq %ymm30, (%rcx) {%k7}
- 62 62 fd af 89 31 vpexpandq %ymm30, (%rcx) {%k7}
- 62 22 fd 28 89 b4 f0 vpexpandq %ymm30, 0x00000123(%rax,%r14,8) {%k0}
- 23 01 00 00
- 62 62 fd 28 89 72 7f vpexpandq %ymm30, 0x000003f8(%rdx) {%k0}
- 62 62 fd 28 89 b2 00 vpexpandq %ymm30, 0x00000400(%rdx) {%k0}
- 04 00 00
- 62 62 fd 28 89 72 80 vpexpandq %ymm30, -0x00000400(%rdx) {%k0}
- 62 62 fd 28 89 b2 f8 vpexpandq %ymm30, -0x00000408(%rdx) {%k0}
- fb ff ff
- 62 02 fd 08 89 f5 vpexpandq %xmm30, %xmm29 {%k0}
- 62 02 fd 0f 89 f5 vpexpandq %xmm30, %xmm29 {%k7}
- 62 02 fd 8f 89 f5 vpexpandq %xmm30, %xmm29 {%k7}
- 62 02 fd 28 89 f5 vpexpandq %ymm30, %ymm29 {%k0}
- 62 02 fd 2f 89 f5 vpexpandq %ymm30, %ymm29 {%k7}
- 62 02 fd af 89 f5 vpexpandq %ymm30, %ymm29 {%k7}
+ 62 62 7d 08 89 31 vpexpandd (%rcx), %xmm30 {%k0}
+ 62 62 7d 0f 89 31 vpexpandd (%rcx), %xmm30 {%k7}
+ 62 62 7d 8f 89 31 vpexpandd (%rcx), %xmm30 {%k7}
+ 62 22 7d 08 89 b4 f0 vpexpandd 0x00000123(%rax,%r14,8), %xmm30 {%k0}
+ 23 01 00 00
+ 62 62 7d 08 89 72 7f vpexpandd 0x000001fc(%rdx), %xmm30 {%k0}
+ 62 62 7d 08 89 b2 00 vpexpandd 0x00000200(%rdx), %xmm30 {%k0}
+ 02 00 00
+ 62 62 7d 08 89 72 80 vpexpandd -0x00000200(%rdx), %xmm30 {%k0}
+ 62 62 7d 08 89 b2 fc vpexpandd -0x00000204(%rdx), %xmm30 {%k0}
+ fd ff ff
+ 62 62 7d 28 89 31 vpexpandd (%rcx), %ymm30 {%k0}
+ 62 62 7d 2f 89 31 vpexpandd (%rcx), %ymm30 {%k7}
+ 62 62 7d af 89 31 vpexpandd (%rcx), %ymm30 {%k7}
+ 62 22 7d 28 89 b4 f0 vpexpandd 0x00000123(%rax,%r14,8), %ymm30 {%k0}
+ 23 01 00 00
+ 62 62 7d 28 89 72 7f vpexpandd 0x000001fc(%rdx), %ymm30 {%k0}
+ 62 62 7d 28 89 b2 00 vpexpandd 0x00000200(%rdx), %ymm30 {%k0}
+ 02 00 00
+ 62 62 7d 28 89 72 80 vpexpandd -0x00000200(%rdx), %ymm30 {%k0}
+ 62 62 7d 28 89 b2 fc vpexpandd -0x00000204(%rdx), %ymm30 {%k0}
+ fd ff ff
+ 62 02 7d 08 89 f5 vpexpandd %xmm29, %xmm30 {%k0}
+ 62 02 7d 0f 89 f5 vpexpandd %xmm29, %xmm30 {%k7}
+ 62 02 7d 8f 89 f5 vpexpandd %xmm29, %xmm30 {%k7}
+ 62 02 7d 28 89 f5 vpexpandd %ymm29, %ymm30 {%k0}
+ 62 02 7d 2f 89 f5 vpexpandd %ymm29, %ymm30 {%k7}
+ 62 02 7d af 89 f5 vpexpandd %ymm29, %ymm30 {%k7}
+ 62 62 fd 08 89 31 vpexpandq (%rcx), %xmm30 {%k0}
+ 62 62 fd 0f 89 31 vpexpandq (%rcx), %xmm30 {%k7}
+ 62 62 fd 8f 89 31 vpexpandq (%rcx), %xmm30 {%k7}
+ 62 22 fd 08 89 b4 f0 vpexpandq 0x00000123(%rax,%r14,8), %xmm30 {%k0}
+ 23 01 00 00
+ 62 62 fd 08 89 72 7f vpexpandq 0x000003f8(%rdx), %xmm30 {%k0}
+ 62 62 fd 08 89 b2 00 vpexpandq 0x00000400(%rdx), %xmm30 {%k0}
+ 04 00 00
+ 62 62 fd 08 89 72 80 vpexpandq -0x00000400(%rdx), %xmm30 {%k0}
+ 62 62 fd 08 89 b2 f8 vpexpandq -0x00000408(%rdx), %xmm30 {%k0}
+ fb ff ff
+ 62 62 fd 28 89 31 vpexpandq (%rcx), %ymm30 {%k0}
+ 62 62 fd 2f 89 31 vpexpandq (%rcx), %ymm30 {%k7}
+ 62 62 fd af 89 31 vpexpandq (%rcx), %ymm30 {%k7}
+ 62 22 fd 28 89 b4 f0 vpexpandq 0x00000123(%rax,%r14,8), %ymm30 {%k0}
+ 23 01 00 00
+ 62 62 fd 28 89 72 7f vpexpandq 0x000003f8(%rdx), %ymm30 {%k0}
+ 62 62 fd 28 89 b2 00 vpexpandq 0x00000400(%rdx), %ymm30 {%k0}
+ 04 00 00
+ 62 62 fd 28 89 72 80 vpexpandq -0x00000400(%rdx), %ymm30 {%k0}
+ 62 62 fd 28 89 b2 f8 vpexpandq -0x00000408(%rdx), %ymm30 {%k0}
+ fb ff ff
+ 62 02 fd 08 89 f5 vpexpandq %xmm29, %xmm30 {%k0}
+ 62 02 fd 0f 89 f5 vpexpandq %xmm29, %xmm30 {%k7}
+ 62 02 fd 8f 89 f5 vpexpandq %xmm29, %xmm30 {%k7}
+ 62 02 fd 28 89 f5 vpexpandq %ymm29, %ymm30 {%k0}
+ 62 02 fd 2f 89 f5 vpexpandq %ymm29, %ymm30 {%k7}
+ 62 02 fd af 89 f5 vpexpandq %ymm29, %ymm30 {%k7}
62 02 7d 01 90 b4 fe vpgatherdd 0x0000007b(%r14,%xmm31,8), %xmm30 {%k1} {%k1}
7b 00 00 00
62 02 7d 01 90 74 39 vpgatherdd 0x40(%r9,%xmm31), %xmm30 {%k1} {%k1}
@@ -92841,62 +92841,62 @@ test_x86_64_s:
7b
62 63 fd 38 00 b2 f8 vpermq -0x00000408(%rdx), $0x7b, %ymm30 {%k0}
fb ff ff 7b
- 62 62 7d 08 89 31 vpexpandd %xmm30, (%rcx) {%k0}
- 62 62 7d 0f 89 31 vpexpandd %xmm30, (%rcx) {%k7}
- 62 62 7d 8f 89 31 vpexpandd %xmm30, (%rcx) {%k7}
- 62 22 7d 08 89 b4 f0 vpexpandd %xmm30, 0x00001234(%rax,%r14,8) {%k0}
- 34 12 00 00
- 62 62 7d 08 89 72 7f vpexpandd %xmm30, 0x000001fc(%rdx) {%k0}
- 62 62 7d 08 89 b2 00 vpexpandd %xmm30, 0x00000200(%rdx) {%k0}
- 02 00 00
- 62 62 7d 08 89 72 80 vpexpandd %xmm30, -0x00000200(%rdx) {%k0}
- 62 62 7d 08 89 b2 fc vpexpandd %xmm30, -0x00000204(%rdx) {%k0}
- fd ff ff
- 62 62 7d 28 89 31 vpexpandd %ymm30, (%rcx) {%k0}
- 62 62 7d 2f 89 31 vpexpandd %ymm30, (%rcx) {%k7}
- 62 62 7d af 89 31 vpexpandd %ymm30, (%rcx) {%k7}
- 62 22 7d 28 89 b4 f0 vpexpandd %ymm30, 0x00001234(%rax,%r14,8) {%k0}
- 34 12 00 00
- 62 62 7d 28 89 72 7f vpexpandd %ymm30, 0x000001fc(%rdx) {%k0}
- 62 62 7d 28 89 b2 00 vpexpandd %ymm30, 0x00000200(%rdx) {%k0}
- 02 00 00
- 62 62 7d 28 89 72 80 vpexpandd %ymm30, -0x00000200(%rdx) {%k0}
- 62 62 7d 28 89 b2 fc vpexpandd %ymm30, -0x00000204(%rdx) {%k0}
- fd ff ff
- 62 02 7d 08 89 f5 vpexpandd %xmm30, %xmm29 {%k0}
- 62 02 7d 0f 89 f5 vpexpandd %xmm30, %xmm29 {%k7}
- 62 02 7d 8f 89 f5 vpexpandd %xmm30, %xmm29 {%k7}
- 62 02 7d 28 89 f5 vpexpandd %ymm30, %ymm29 {%k0}
- 62 02 7d 2f 89 f5 vpexpandd %ymm30, %ymm29 {%k7}
- 62 02 7d af 89 f5 vpexpandd %ymm30, %ymm29 {%k7}
- 62 62 fd 08 89 31 vpexpandq %xmm30, (%rcx) {%k0}
- 62 62 fd 0f 89 31 vpexpandq %xmm30, (%rcx) {%k7}
- 62 62 fd 8f 89 31 vpexpandq %xmm30, (%rcx) {%k7}
- 62 22 fd 08 89 b4 f0 vpexpandq %xmm30, 0x00001234(%rax,%r14,8) {%k0}
- 34 12 00 00
- 62 62 fd 08 89 72 7f vpexpandq %xmm30, 0x000003f8(%rdx) {%k0}
- 62 62 fd 08 89 b2 00 vpexpandq %xmm30, 0x00000400(%rdx) {%k0}
- 04 00 00
- 62 62 fd 08 89 72 80 vpexpandq %xmm30, -0x00000400(%rdx) {%k0}
- 62 62 fd 08 89 b2 f8 vpexpandq %xmm30, -0x00000408(%rdx) {%k0}
- fb ff ff
- 62 62 fd 28 89 31 vpexpandq %ymm30, (%rcx) {%k0}
- 62 62 fd 2f 89 31 vpexpandq %ymm30, (%rcx) {%k7}
- 62 62 fd af 89 31 vpexpandq %ymm30, (%rcx) {%k7}
- 62 22 fd 28 89 b4 f0 vpexpandq %ymm30, 0x00001234(%rax,%r14,8) {%k0}
- 34 12 00 00
- 62 62 fd 28 89 72 7f vpexpandq %ymm30, 0x000003f8(%rdx) {%k0}
- 62 62 fd 28 89 b2 00 vpexpandq %ymm30, 0x00000400(%rdx) {%k0}
- 04 00 00
- 62 62 fd 28 89 72 80 vpexpandq %ymm30, -0x00000400(%rdx) {%k0}
- 62 62 fd 28 89 b2 f8 vpexpandq %ymm30, -0x00000408(%rdx) {%k0}
- fb ff ff
- 62 02 fd 08 89 f5 vpexpandq %xmm30, %xmm29 {%k0}
- 62 02 fd 0f 89 f5 vpexpandq %xmm30, %xmm29 {%k7}
- 62 02 fd 8f 89 f5 vpexpandq %xmm30, %xmm29 {%k7}
- 62 02 fd 28 89 f5 vpexpandq %ymm30, %ymm29 {%k0}
- 62 02 fd 2f 89 f5 vpexpandq %ymm30, %ymm29 {%k7}
- 62 02 fd af 89 f5 vpexpandq %ymm30, %ymm29 {%k7}
+ 62 62 7d 08 89 31 vpexpandd (%rcx), %xmm30 {%k0}
+ 62 62 7d 0f 89 31 vpexpandd (%rcx), %xmm30 {%k7}
+ 62 62 7d 8f 89 31 vpexpandd (%rcx), %xmm30 {%k7}
+ 62 22 7d 08 89 b4 f0 vpexpandd 0x00001234(%rax,%r14,8), %xmm30 {%k0}
+ 34 12 00 00
+ 62 62 7d 08 89 72 7f vpexpandd 0x000001fc(%rdx), %xmm30 {%k0}
+ 62 62 7d 08 89 b2 00 vpexpandd 0x00000200(%rdx), %xmm30 {%k0}
+ 02 00 00
+ 62 62 7d 08 89 72 80 vpexpandd -0x00000200(%rdx), %xmm30 {%k0}
+ 62 62 7d 08 89 b2 fc vpexpandd -0x00000204(%rdx), %xmm30 {%k0}
+ fd ff ff
+ 62 62 7d 28 89 31 vpexpandd (%rcx), %ymm30 {%k0}
+ 62 62 7d 2f 89 31 vpexpandd (%rcx), %ymm30 {%k7}
+ 62 62 7d af 89 31 vpexpandd (%rcx), %ymm30 {%k7}
+ 62 22 7d 28 89 b4 f0 vpexpandd 0x00001234(%rax,%r14,8), %ymm30 {%k0}
+ 34 12 00 00
+ 62 62 7d 28 89 72 7f vpexpandd 0x000001fc(%rdx), %ymm30 {%k0}
+ 62 62 7d 28 89 b2 00 vpexpandd 0x00000200(%rdx), %ymm30 {%k0}
+ 02 00 00
+ 62 62 7d 28 89 72 80 vpexpandd -0x00000200(%rdx), %ymm30 {%k0}
+ 62 62 7d 28 89 b2 fc vpexpandd -0x00000204(%rdx), %ymm30 {%k0}
+ fd ff ff
+ 62 02 7d 08 89 f5 vpexpandd %xmm29, %xmm30 {%k0}
+ 62 02 7d 0f 89 f5 vpexpandd %xmm29, %xmm30 {%k7}
+ 62 02 7d 8f 89 f5 vpexpandd %xmm29, %xmm30 {%k7}
+ 62 02 7d 28 89 f5 vpexpandd %ymm29, %ymm30 {%k0}
+ 62 02 7d 2f 89 f5 vpexpandd %ymm29, %ymm30 {%k7}
+ 62 02 7d af 89 f5 vpexpandd %ymm29, %ymm30 {%k7}
+ 62 62 fd 08 89 31 vpexpandq (%rcx), %xmm30 {%k0}
+ 62 62 fd 0f 89 31 vpexpandq (%rcx), %xmm30 {%k7}
+ 62 62 fd 8f 89 31 vpexpandq (%rcx), %xmm30 {%k7}
+ 62 22 fd 08 89 b4 f0 vpexpandq 0x00001234(%rax,%r14,8), %xmm30 {%k0}
+ 34 12 00 00
+ 62 62 fd 08 89 72 7f vpexpandq 0x000003f8(%rdx), %xmm30 {%k0}
+ 62 62 fd 08 89 b2 00 vpexpandq 0x00000400(%rdx), %xmm30 {%k0}
+ 04 00 00
+ 62 62 fd 08 89 72 80 vpexpandq -0x00000400(%rdx), %xmm30 {%k0}
+ 62 62 fd 08 89 b2 f8 vpexpandq -0x00000408(%rdx), %xmm30 {%k0}
+ fb ff ff
+ 62 62 fd 28 89 31 vpexpandq (%rcx), %ymm30 {%k0}
+ 62 62 fd 2f 89 31 vpexpandq (%rcx), %ymm30 {%k7}
+ 62 62 fd af 89 31 vpexpandq (%rcx), %ymm30 {%k7}
+ 62 22 fd 28 89 b4 f0 vpexpandq 0x00001234(%rax,%r14,8), %ymm30 {%k0}
+ 34 12 00 00
+ 62 62 fd 28 89 72 7f vpexpandq 0x000003f8(%rdx), %ymm30 {%k0}
+ 62 62 fd 28 89 b2 00 vpexpandq 0x00000400(%rdx), %ymm30 {%k0}
+ 04 00 00
+ 62 62 fd 28 89 72 80 vpexpandq -0x00000400(%rdx), %ymm30 {%k0}
+ 62 62 fd 28 89 b2 f8 vpexpandq -0x00000408(%rdx), %ymm30 {%k0}
+ fb ff ff
+ 62 02 fd 08 89 f5 vpexpandq %xmm29, %xmm30 {%k0}
+ 62 02 fd 0f 89 f5 vpexpandq %xmm29, %xmm30 {%k7}
+ 62 02 fd 8f 89 f5 vpexpandq %xmm29, %xmm30 {%k7}
+ 62 02 fd 28 89 f5 vpexpandq %ymm29, %ymm30 {%k0}
+ 62 02 fd 2f 89 f5 vpexpandq %ymm29, %ymm30 {%k7}
+ 62 02 fd af 89 f5 vpexpandq %ymm29, %ymm30 {%k7}
62 02 7d 01 90 b4 fe vpgatherdd -0x0000007b(%r14,%xmm31,8), %xmm30 {%k1} {%k1}
85 ff ff ff
62 02 7d 01 90 74 39 vpgatherdd 0x40(%r9,%xmm31), %xmm30 {%k1} {%k1}