diff options
Diffstat (limited to 'llvm/test/MC/X86/avx512-encodings.s')
| -rw-r--r-- | llvm/test/MC/X86/avx512-encodings.s | 192 |
1 files changed, 192 insertions, 0 deletions
diff --git a/llvm/test/MC/X86/avx512-encodings.s b/llvm/test/MC/X86/avx512-encodings.s index 70191bde9f8..245f3a64419 100644 --- a/llvm/test/MC/X86/avx512-encodings.s +++ b/llvm/test/MC/X86/avx512-encodings.s @@ -14958,6 +14958,198 @@ vpermilpd $0x23, 0x400(%rbx), %zmm2 // CHECK: encoding: [0x62,0xf2,0xc5,0x08,0x43,0x92,0xf8,0xfb,0xff,0xff] vgetexpsd -1032(%rdx), %xmm7, %xmm2 +// CHECK: vextractf32x4 $171, %zmm21, %xmm15 +// CHECK: encoding: [0x62,0xc3,0x7d,0x48,0x19,0xef,0xab] + vextractf32x4 $0xab, %zmm21, %xmm15 + +// CHECK: vextractf32x4 $171, %zmm21, %xmm15 {%k1} +// CHECK: encoding: [0x62,0xc3,0x7d,0x49,0x19,0xef,0xab] + vextractf32x4 $0xab, %zmm21, %xmm15 {%k1} + +// CHECK: vextractf32x4 $171, %zmm21, %xmm15 {%k1} {z} +// CHECK: encoding: [0x62,0xc3,0x7d,0xc9,0x19,0xef,0xab] + vextractf32x4 $0xab, %zmm21, %xmm15 {%k1} {z} + +// CHECK: vextractf32x4 $123, %zmm21, %xmm15 +// CHECK: encoding: [0x62,0xc3,0x7d,0x48,0x19,0xef,0x7b] + vextractf32x4 $0x7b, %zmm21, %xmm15 + +// CHECK: vextractf32x4 $171, %zmm20, (%rcx) +// CHECK: encoding: [0x62,0xe3,0x7d,0x48,0x19,0x21,0xab] + vextractf32x4 $0xab, %zmm20, (%rcx) + +// CHECK: vextractf32x4 $171, %zmm20, (%rcx) {%k7} +// CHECK: encoding: [0x62,0xe3,0x7d,0x4f,0x19,0x21,0xab] + vextractf32x4 $0xab, %zmm20, (%rcx) {%k7} + +// CHECK: vextractf32x4 $123, %zmm20, (%rcx) +// CHECK: encoding: [0x62,0xe3,0x7d,0x48,0x19,0x21,0x7b] + vextractf32x4 $0x7b, %zmm20, (%rcx) + +// CHECK: vextractf32x4 $123, %zmm20, 291(%rax,%r14,8) +// CHECK: encoding: [0x62,0xa3,0x7d,0x48,0x19,0xa4,0xf0,0x23,0x01,0x00,0x00,0x7b] + vextractf32x4 $0x7b, %zmm20, 291(%rax,%r14,8) + +// CHECK: vextractf32x4 $123, %zmm20, 2032(%rdx) +// CHECK: encoding: [0x62,0xe3,0x7d,0x48,0x19,0x62,0x7f,0x7b] + vextractf32x4 $0x7b, %zmm20, 2032(%rdx) + +// CHECK: vextractf32x4 $123, %zmm20, 2048(%rdx) +// CHECK: encoding: [0x62,0xe3,0x7d,0x48,0x19,0xa2,0x00,0x08,0x00,0x00,0x7b] + vextractf32x4 $0x7b, %zmm20, 2048(%rdx) + +// CHECK: vextractf32x4 $123, %zmm20, -2048(%rdx) +// CHECK: encoding: [0x62,0xe3,0x7d,0x48,0x19,0x62,0x80,0x7b] + vextractf32x4 $0x7b, %zmm20, -2048(%rdx) + +// CHECK: vextractf32x4 $123, %zmm20, -2064(%rdx) +// CHECK: encoding: [0x62,0xe3,0x7d,0x48,0x19,0xa2,0xf0,0xf7,0xff,0xff,0x7b] + vextractf32x4 $0x7b, %zmm20, -2064(%rdx) + +// CHECK: vextractf64x4 $171, %zmm24, %ymm11 +// CHECK: encoding: [0x62,0x43,0xfd,0x48,0x1b,0xc3,0xab] + vextractf64x4 $0xab, %zmm24, %ymm11 + +// CHECK: vextractf64x4 $171, %zmm24, %ymm11 {%k5} +// CHECK: encoding: [0x62,0x43,0xfd,0x4d,0x1b,0xc3,0xab] + vextractf64x4 $0xab, %zmm24, %ymm11 {%k5} + +// CHECK: vextractf64x4 $171, %zmm24, %ymm11 {%k5} {z} +// CHECK: encoding: [0x62,0x43,0xfd,0xcd,0x1b,0xc3,0xab] + vextractf64x4 $0xab, %zmm24, %ymm11 {%k5} {z} + +// CHECK: vextractf64x4 $123, %zmm24, %ymm11 +// CHECK: encoding: [0x62,0x43,0xfd,0x48,0x1b,0xc3,0x7b] + vextractf64x4 $0x7b, %zmm24, %ymm11 + +// CHECK: vextractf64x4 $171, %zmm5, (%rcx) +// CHECK: encoding: [0x62,0xf3,0xfd,0x48,0x1b,0x29,0xab] + vextractf64x4 $0xab, %zmm5, (%rcx) + +// CHECK: vextractf64x4 $171, %zmm5, (%rcx) {%k4} +// CHECK: encoding: [0x62,0xf3,0xfd,0x4c,0x1b,0x29,0xab] + vextractf64x4 $0xab, %zmm5, (%rcx) {%k4} + +// CHECK: vextractf64x4 $123, %zmm5, (%rcx) +// CHECK: encoding: [0x62,0xf3,0xfd,0x48,0x1b,0x29,0x7b] + vextractf64x4 $0x7b, %zmm5, (%rcx) + +// CHECK: vextractf64x4 $123, %zmm5, 291(%rax,%r14,8) +// CHECK: encoding: [0x62,0xb3,0xfd,0x48,0x1b,0xac,0xf0,0x23,0x01,0x00,0x00,0x7b] + vextractf64x4 $0x7b, %zmm5, 291(%rax,%r14,8) + +// CHECK: vextractf64x4 $123, %zmm5, 4064(%rdx) +// CHECK: encoding: [0x62,0xf3,0xfd,0x48,0x1b,0x6a,0x7f,0x7b] + vextractf64x4 $0x7b, %zmm5, 4064(%rdx) + +// CHECK: vextractf64x4 $123, %zmm5, 4096(%rdx) +// CHECK: encoding: [0x62,0xf3,0xfd,0x48,0x1b,0xaa,0x00,0x10,0x00,0x00,0x7b] + vextractf64x4 $0x7b, %zmm5, 4096(%rdx) + +// CHECK: vextractf64x4 $123, %zmm5, -4096(%rdx) +// CHECK: encoding: [0x62,0xf3,0xfd,0x48,0x1b,0x6a,0x80,0x7b] + vextractf64x4 $0x7b, %zmm5, -4096(%rdx) + +// CHECK: vextractf64x4 $123, %zmm5, -4128(%rdx) +// CHECK: encoding: [0x62,0xf3,0xfd,0x48,0x1b,0xaa,0xe0,0xef,0xff,0xff,0x7b] + vextractf64x4 $0x7b, %zmm5, -4128(%rdx) + +// CHECK: vextracti32x4 $171, %zmm16, %xmm13 +// CHECK: encoding: [0x62,0xc3,0x7d,0x48,0x39,0xc5,0xab] + vextracti32x4 $0xab, %zmm16, %xmm13 + +// CHECK: vextracti32x4 $171, %zmm16, %xmm13 {%k5} +// CHECK: encoding: [0x62,0xc3,0x7d,0x4d,0x39,0xc5,0xab] + vextracti32x4 $0xab, %zmm16, %xmm13 {%k5} + +// CHECK: vextracti32x4 $171, %zmm16, %xmm13 {%k5} {z} +// CHECK: encoding: [0x62,0xc3,0x7d,0xcd,0x39,0xc5,0xab] + vextracti32x4 $0xab, %zmm16, %xmm13 {%k5} {z} + +// CHECK: vextracti32x4 $123, %zmm16, %xmm13 +// CHECK: encoding: [0x62,0xc3,0x7d,0x48,0x39,0xc5,0x7b] + vextracti32x4 $0x7b, %zmm16, %xmm13 + +// CHECK: vextracti32x4 $171, %zmm29, (%rcx) +// CHECK: encoding: [0x62,0x63,0x7d,0x48,0x39,0x29,0xab] + vextracti32x4 $0xab, %zmm29, (%rcx) + +// CHECK: vextracti32x4 $171, %zmm29, (%rcx) {%k2} +// CHECK: encoding: [0x62,0x63,0x7d,0x4a,0x39,0x29,0xab] + vextracti32x4 $0xab, %zmm29, (%rcx) {%k2} + +// CHECK: vextracti32x4 $123, %zmm29, (%rcx) +// CHECK: encoding: [0x62,0x63,0x7d,0x48,0x39,0x29,0x7b] + vextracti32x4 $0x7b, %zmm29, (%rcx) + +// CHECK: vextracti32x4 $123, %zmm29, 291(%rax,%r14,8) +// CHECK: encoding: [0x62,0x23,0x7d,0x48,0x39,0xac,0xf0,0x23,0x01,0x00,0x00,0x7b] + vextracti32x4 $0x7b, %zmm29, 291(%rax,%r14,8) + +// CHECK: vextracti32x4 $123, %zmm29, 2032(%rdx) +// CHECK: encoding: [0x62,0x63,0x7d,0x48,0x39,0x6a,0x7f,0x7b] + vextracti32x4 $0x7b, %zmm29, 2032(%rdx) + +// CHECK: vextracti32x4 $123, %zmm29, 2048(%rdx) +// CHECK: encoding: [0x62,0x63,0x7d,0x48,0x39,0xaa,0x00,0x08,0x00,0x00,0x7b] + vextracti32x4 $0x7b, %zmm29, 2048(%rdx) + +// CHECK: vextracti32x4 $123, %zmm29, -2048(%rdx) +// CHECK: encoding: [0x62,0x63,0x7d,0x48,0x39,0x6a,0x80,0x7b] + vextracti32x4 $0x7b, %zmm29, -2048(%rdx) + +// CHECK: vextracti32x4 $123, %zmm29, -2064(%rdx) +// CHECK: encoding: [0x62,0x63,0x7d,0x48,0x39,0xaa,0xf0,0xf7,0xff,0xff,0x7b] + vextracti32x4 $0x7b, %zmm29, -2064(%rdx) + +// CHECK: vextracti64x4 $171, %zmm16, %ymm13 +// CHECK: encoding: [0x62,0xc3,0xfd,0x48,0x3b,0xc5,0xab] + vextracti64x4 $0xab, %zmm16, %ymm13 + +// CHECK: vextracti64x4 $171, %zmm16, %ymm13 {%k3} +// CHECK: encoding: [0x62,0xc3,0xfd,0x4b,0x3b,0xc5,0xab] + vextracti64x4 $0xab, %zmm16, %ymm13 {%k3} + +// CHECK: vextracti64x4 $171, %zmm16, %ymm13 {%k3} {z} +// CHECK: encoding: [0x62,0xc3,0xfd,0xcb,0x3b,0xc5,0xab] + vextracti64x4 $0xab, %zmm16, %ymm13 {%k3} {z} + +// CHECK: vextracti64x4 $123, %zmm16, %ymm13 +// CHECK: encoding: [0x62,0xc3,0xfd,0x48,0x3b,0xc5,0x7b] + vextracti64x4 $0x7b, %zmm16, %ymm13 + +// CHECK: vextracti64x4 $171, %zmm30, (%rcx) +// CHECK: encoding: [0x62,0x63,0xfd,0x48,0x3b,0x31,0xab] + vextracti64x4 $0xab, %zmm30, (%rcx) + +// CHECK: vextracti64x4 $171, %zmm30, (%rcx) {%k4} +// CHECK: encoding: [0x62,0x63,0xfd,0x4c,0x3b,0x31,0xab] + vextracti64x4 $0xab, %zmm30, (%rcx) {%k4} + +// CHECK: vextracti64x4 $123, %zmm30, (%rcx) +// CHECK: encoding: [0x62,0x63,0xfd,0x48,0x3b,0x31,0x7b] + vextracti64x4 $0x7b, %zmm30, (%rcx) + +// CHECK: vextracti64x4 $123, %zmm30, 291(%rax,%r14,8) +// CHECK: encoding: [0x62,0x23,0xfd,0x48,0x3b,0xb4,0xf0,0x23,0x01,0x00,0x00,0x7b] + vextracti64x4 $0x7b, %zmm30, 291(%rax,%r14,8) + +// CHECK: vextracti64x4 $123, %zmm30, 4064(%rdx) +// CHECK: encoding: [0x62,0x63,0xfd,0x48,0x3b,0x72,0x7f,0x7b] + vextracti64x4 $0x7b, %zmm30, 4064(%rdx) + +// CHECK: vextracti64x4 $123, %zmm30, 4096(%rdx) +// CHECK: encoding: [0x62,0x63,0xfd,0x48,0x3b,0xb2,0x00,0x10,0x00,0x00,0x7b] + vextracti64x4 $0x7b, %zmm30, 4096(%rdx) + +// CHECK: vextracti64x4 $123, %zmm30, -4096(%rdx) +// CHECK: encoding: [0x62,0x63,0xfd,0x48,0x3b,0x72,0x80,0x7b] + vextracti64x4 $0x7b, %zmm30, -4096(%rdx) + +// CHECK: vextracti64x4 $123, %zmm30, -4128(%rdx) +// CHECK: encoding: [0x62,0x63,0xfd,0x48,0x3b,0xb2,0xe0,0xef,0xff,0xff,0x7b] + vextracti64x4 $0x7b, %zmm30, -4128(%rdx) + // CHECK: kunpckbw %k6, %k5, %k5 // CHECK: encoding: [0xc5,0xd5,0x4b,0xee] kunpckbw %k6, %k5, %k5 |

