[llvm] 5b32740 - [X86][test] Add missing encoding/decoding tests for avx512bitalg
Shengchen Kan via llvm-commits
llvm-commits at lists.llvm.org
Wed Dec 13 00:49:43 PST 2023
Author: Shengchen Kan
Date: 2023-12-13T16:48:25+08:00
New Revision: 5b32740631252dd38f41b818a12b28880b02c3b4
URL: https://github.com/llvm/llvm-project/commit/5b32740631252dd38f41b818a12b28880b02c3b4
DIFF: https://github.com/llvm/llvm-project/commit/5b32740631252dd38f41b818a12b28880b02c3b4.diff
LOG: [X86][test] Add missing encoding/decoding tests for avx512bitalg
Added:
llvm/test/MC/Disassembler/X86/avx512bitalg.txt
llvm/test/MC/X86/avx512bitalg-att.s
llvm/test/MC/X86/avx512bitalg-intel.s
Modified:
Removed:
llvm/test/MC/X86/avx512bitalg-encoding.s
################################################################################
diff --git a/llvm/test/MC/Disassembler/X86/avx512bitalg.txt b/llvm/test/MC/Disassembler/X86/avx512bitalg.txt
new file mode 100644
index 00000000000000..13ab5d6dfa8402
--- /dev/null
+++ b/llvm/test/MC/Disassembler/X86/avx512bitalg.txt
@@ -0,0 +1,170 @@
+# RUN: llvm-mc -triple x86_64 -disassemble %s | FileCheck %s --check-prefix=ATT
+# RUN: llvm-mc -triple x86_64 -disassemble -output-asm-variant=1 %s | FileCheck %s --check-prefix=INTEL
+
+# ATT: vpopcntb %zmm23, %zmm21
+# INTEL: vpopcntb zmm21, zmm23
+0x62,0xa2,0x7d,0x48,0x54,0xef
+
+# ATT: vpopcntw %zmm23, %zmm21
+# INTEL: vpopcntw zmm21, zmm23
+0x62,0xa2,0xfd,0x48,0x54,0xef
+
+# ATT: vpopcntb %zmm3, %zmm1 {%k2}
+# INTEL: vpopcntb zmm1 {k2}, zmm3
+0x62,0xf2,0x7d,0x4a,0x54,0xcb
+
+# ATT: vpopcntw %zmm3, %zmm1 {%k2}
+# INTEL: vpopcntw zmm1 {k2}, zmm3
+0x62,0xf2,0xfd,0x4a,0x54,0xcb
+
+# ATT: vpopcntb (%rcx), %zmm1
+# INTEL: vpopcntb zmm1, zmmword ptr [rcx]
+0x62,0xf2,0x7d,0x48,0x54,0x09
+
+# ATT: vpopcntb -256(%rsp), %zmm1
+# INTEL: vpopcntb zmm1, zmmword ptr [rsp - 256]
+0x62,0xf2,0x7d,0x48,0x54,0x4c,0x24,0xfc
+
+# ATT: vpopcntb 256(%rsp), %zmm1
+# INTEL: vpopcntb zmm1, zmmword ptr [rsp + 256]
+0x62,0xf2,0x7d,0x48,0x54,0x4c,0x24,0x04
+
+# ATT: vpopcntb 268435456(%rcx,%r14,8), %zmm1
+# INTEL: vpopcntb zmm1, zmmword ptr [rcx + 8*r14 + 268435456]
+0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0x10
+
+# ATT: vpopcntb -536870912(%rcx,%r14,8), %zmm1
+# INTEL: vpopcntb zmm1, zmmword ptr [rcx + 8*r14 - 536870912]
+0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0xe0
+
+# ATT: vpopcntb -536870910(%rcx,%r14,8), %zmm1
+# INTEL: vpopcntb zmm1, zmmword ptr [rcx + 8*r14 - 536870910]
+0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x02,0x00,0x00,0xe0
+
+# ATT: vpopcntw (%rcx), %zmm1
+# INTEL: vpopcntw zmm1, zmmword ptr [rcx]
+0x62,0xf2,0xfd,0x48,0x54,0x09
+
+# ATT: vpopcntw -256(%rsp), %zmm1
+# INTEL: vpopcntw zmm1, zmmword ptr [rsp - 256]
+0x62,0xf2,0xfd,0x48,0x54,0x4c,0x24,0xfc
+
+# ATT: vpopcntw 256(%rsp), %zmm1
+# INTEL: vpopcntw zmm1, zmmword ptr [rsp + 256]
+0x62,0xf2,0xfd,0x48,0x54,0x4c,0x24,0x04
+
+# ATT: vpopcntw 268435456(%rcx,%r14,8), %zmm1
+# INTEL: vpopcntw zmm1, zmmword ptr [rcx + 8*r14 + 268435456]
+0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0x10
+
+# ATT: vpopcntw -536870912(%rcx,%r14,8), %zmm1
+# INTEL: vpopcntw zmm1, zmmword ptr [rcx + 8*r14 - 536870912]
+0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0xe0
+
+# ATT: vpopcntw -536870910(%rcx,%r14,8), %zmm1
+# INTEL: vpopcntw zmm1, zmmword ptr [rcx + 8*r14 - 536870910]
+0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x02,0x00,0x00,0xe0
+
+# ATT: vpopcntb (%rcx), %zmm21 {%k2}
+# INTEL: vpopcntb zmm21 {k2}, zmmword ptr [rcx]
+0x62,0xe2,0x7d,0x4a,0x54,0x29
+
+# ATT: vpopcntb -256(%rsp), %zmm21 {%k2}
+# INTEL: vpopcntb zmm21 {k2}, zmmword ptr [rsp - 256]
+0x62,0xe2,0x7d,0x4a,0x54,0x6c,0x24,0xfc
+
+# ATT: vpopcntb 256(%rsp), %zmm21 {%k2}
+# INTEL: vpopcntb zmm21 {k2}, zmmword ptr [rsp + 256]
+0x62,0xe2,0x7d,0x4a,0x54,0x6c,0x24,0x04
+
+# ATT: vpopcntb 268435456(%rcx,%r14,8), %zmm21 {%k2}
+# INTEL: vpopcntb zmm21 {k2}, zmmword ptr [rcx + 8*r14 + 268435456]
+0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0x10
+
+# ATT: vpopcntb -536870912(%rcx,%r14,8), %zmm21 {%k2}
+# INTEL: vpopcntb zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870912]
+0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0xe0
+
+# ATT: vpopcntb -536870910(%rcx,%r14,8), %zmm21 {%k2}
+# INTEL: vpopcntb zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870910]
+0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x02,0x00,0x00,0xe0
+
+# ATT: vpopcntw (%rcx), %zmm21 {%k2}
+# INTEL: vpopcntw zmm21 {k2}, zmmword ptr [rcx]
+0x62,0xe2,0xfd,0x4a,0x54,0x29
+
+# ATT: vpopcntw -256(%rsp), %zmm21 {%k2}
+# INTEL: vpopcntw zmm21 {k2}, zmmword ptr [rsp - 256]
+0x62,0xe2,0xfd,0x4a,0x54,0x6c,0x24,0xfc
+
+# ATT: vpopcntw 256(%rsp), %zmm21 {%k2}
+# INTEL: vpopcntw zmm21 {k2}, zmmword ptr [rsp + 256]
+0x62,0xe2,0xfd,0x4a,0x54,0x6c,0x24,0x04
+
+# ATT: vpopcntw 268435456(%rcx,%r14,8), %zmm21 {%k2}
+# INTEL: vpopcntw zmm21 {k2}, zmmword ptr [rcx + 8*r14 + 268435456]
+0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0x10
+
+# ATT: vpopcntw -536870912(%rcx,%r14,8), %zmm21 {%k2}
+# INTEL: vpopcntw zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870912]
+0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0xe0
+
+# ATT: vpopcntw -536870910(%rcx,%r14,8), %zmm21 {%k2}
+# INTEL: vpopcntw zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870910]
+0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x02,0x00,0x00,0xe0
+
+# ATT: vpshufbitqmb %zmm2, %zmm23, %k1
+# INTEL: vpshufbitqmb k1, zmm23, zmm2
+0x62,0xf2,0x45,0x40,0x8f,0xca
+
+# ATT: vpshufbitqmb %zmm2, %zmm23, %k1 {%k2}
+# INTEL: vpshufbitqmb k1 {k2}, zmm23, zmm2
+0x62,0xf2,0x45,0x42,0x8f,0xca
+
+# ATT: vpshufbitqmb (%rcx), %zmm23, %k1
+# INTEL: vpshufbitqmb k1, zmm23, zmmword ptr [rcx]
+0x62,0xf2,0x45,0x40,0x8f,0x09
+
+# ATT: vpshufbitqmb -256(%rsp), %zmm23, %k1
+# INTEL: vpshufbitqmb k1, zmm23, zmmword ptr [rsp - 256]
+0x62,0xf2,0x45,0x40,0x8f,0x4c,0x24,0xfc
+
+# ATT: vpshufbitqmb 256(%rsp), %zmm23, %k1
+# INTEL: vpshufbitqmb k1, zmm23, zmmword ptr [rsp + 256]
+0x62,0xf2,0x45,0x40,0x8f,0x4c,0x24,0x04
+
+# ATT: vpshufbitqmb 268435456(%rcx,%r14,8), %zmm23, %k1
+# INTEL: vpshufbitqmb k1, zmm23, zmmword ptr [rcx + 8*r14 + 268435456]
+0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x00,0x00,0x00,0x10
+
+# ATT: vpshufbitqmb -536870912(%rcx,%r14,8), %zmm23, %k1
+# INTEL: vpshufbitqmb k1, zmm23, zmmword ptr [rcx + 8*r14 - 536870912]
+0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x00,0x00,0x00,0xe0
+
+# ATT: vpshufbitqmb -536870910(%rcx,%r14,8), %zmm23, %k1
+# INTEL: vpshufbitqmb k1, zmm23, zmmword ptr [rcx + 8*r14 - 536870910]
+0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x02,0x00,0x00,0xe0
+
+# ATT: vpshufbitqmb (%rcx), %zmm23, %k1 {%k2}
+# INTEL: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx]
+0x62,0xf2,0x45,0x42,0x8f,0x09
+
+# ATT: vpshufbitqmb -256(%rsp), %zmm23, %k1 {%k2}
+# INTEL: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rsp - 256]
+0x62,0xf2,0x45,0x42,0x8f,0x4c,0x24,0xfc
+
+# ATT: vpshufbitqmb 256(%rsp), %zmm23, %k1 {%k2}
+# INTEL: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rsp + 256]
+0x62,0xf2,0x45,0x42,0x8f,0x4c,0x24,0x04
+
+# ATT: vpshufbitqmb 268435456(%rcx,%r14,8), %zmm23, %k1 {%k2}
+# INTEL: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx + 8*r14 + 268435456]
+0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x00,0x00,0x00,0x10
+
+# ATT: vpshufbitqmb -536870912(%rcx,%r14,8), %zmm23, %k1 {%k2}
+# INTEL: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx + 8*r14 - 536870912]
+0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x00,0x00,0x00,0xe0
+
+# ATT: vpshufbitqmb -536870910(%rcx,%r14,8), %zmm23, %k1 {%k2}
+# INTEL: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx + 8*r14 - 536870910]
+0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x02,0x00,0x00,0xe0
diff --git a/llvm/test/MC/X86/avx512bitalg-att.s b/llvm/test/MC/X86/avx512bitalg-att.s
new file mode 100644
index 00000000000000..3bf11ff8254e11
--- /dev/null
+++ b/llvm/test/MC/X86/avx512bitalg-att.s
@@ -0,0 +1,169 @@
+# RUN: llvm-mc -triple x86_64 -show-encoding %s | FileCheck %s
+
+# CHECK: vpopcntb %zmm23, %zmm21
+# CHECK: encoding: [0x62,0xa2,0x7d,0x48,0x54,0xef]
+ vpopcntb %zmm23, %zmm21
+
+# CHECK: vpopcntw %zmm23, %zmm21
+# CHECK: encoding: [0x62,0xa2,0xfd,0x48,0x54,0xef]
+ vpopcntw %zmm23, %zmm21
+
+# CHECK: vpopcntb %zmm3, %zmm1 {%k2}
+# CHECK: encoding: [0x62,0xf2,0x7d,0x4a,0x54,0xcb]
+ vpopcntb %zmm3, %zmm1 {%k2}
+
+# CHECK: vpopcntw %zmm3, %zmm1 {%k2}
+# CHECK: encoding: [0x62,0xf2,0xfd,0x4a,0x54,0xcb]
+ vpopcntw %zmm3, %zmm1 {%k2}
+
+# CHECK: vpopcntb (%rcx), %zmm1
+# CHECK: encoding: [0x62,0xf2,0x7d,0x48,0x54,0x09]
+ vpopcntb (%rcx), %zmm1
+
+# CHECK: vpopcntb -256(%rsp), %zmm1
+# CHECK: encoding: [0x62,0xf2,0x7d,0x48,0x54,0x4c,0x24,0xfc]
+ vpopcntb -256(%rsp), %zmm1
+
+# CHECK: vpopcntb 256(%rsp), %zmm1
+# CHECK: encoding: [0x62,0xf2,0x7d,0x48,0x54,0x4c,0x24,0x04]
+ vpopcntb 256(%rsp), %zmm1
+
+# CHECK: vpopcntb 268435456(%rcx,%r14,8), %zmm1
+# CHECK: encoding: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0x10]
+ vpopcntb 268435456(%rcx,%r14,8), %zmm1
+
+# CHECK: vpopcntb -536870912(%rcx,%r14,8), %zmm1
+# CHECK: encoding: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0xe0]
+ vpopcntb -536870912(%rcx,%r14,8), %zmm1
+
+# CHECK: vpopcntb -536870910(%rcx,%r14,8), %zmm1
+# CHECK: encoding: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x02,0x00,0x00,0xe0]
+ vpopcntb -536870910(%rcx,%r14,8), %zmm1
+
+# CHECK: vpopcntw (%rcx), %zmm1
+# CHECK: encoding: [0x62,0xf2,0xfd,0x48,0x54,0x09]
+ vpopcntw (%rcx), %zmm1
+
+# CHECK: vpopcntw -256(%rsp), %zmm1
+# CHECK: encoding: [0x62,0xf2,0xfd,0x48,0x54,0x4c,0x24,0xfc]
+ vpopcntw -256(%rsp), %zmm1
+
+# CHECK: vpopcntw 256(%rsp), %zmm1
+# CHECK: encoding: [0x62,0xf2,0xfd,0x48,0x54,0x4c,0x24,0x04]
+ vpopcntw 256(%rsp), %zmm1
+
+# CHECK: vpopcntw 268435456(%rcx,%r14,8), %zmm1
+# CHECK: encoding: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0x10]
+ vpopcntw 268435456(%rcx,%r14,8), %zmm1
+
+# CHECK: vpopcntw -536870912(%rcx,%r14,8), %zmm1
+# CHECK: encoding: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0xe0]
+ vpopcntw -536870912(%rcx,%r14,8), %zmm1
+
+# CHECK: vpopcntw -536870910(%rcx,%r14,8), %zmm1
+# CHECK: encoding: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x02,0x00,0x00,0xe0]
+ vpopcntw -536870910(%rcx,%r14,8), %zmm1
+
+# CHECK: vpopcntb (%rcx), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xe2,0x7d,0x4a,0x54,0x29]
+ vpopcntb (%rcx), %zmm21 {%k2}
+
+# CHECK: vpopcntb -256(%rsp), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xe2,0x7d,0x4a,0x54,0x6c,0x24,0xfc]
+ vpopcntb -256(%rsp), %zmm21 {%k2}
+
+# CHECK: vpopcntb 256(%rsp), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xe2,0x7d,0x4a,0x54,0x6c,0x24,0x04]
+ vpopcntb 256(%rsp), %zmm21 {%k2}
+
+# CHECK: vpopcntb 268435456(%rcx,%r14,8), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0x10]
+ vpopcntb 268435456(%rcx,%r14,8), %zmm21 {%k2}
+
+# CHECK: vpopcntb -536870912(%rcx,%r14,8), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0xe0]
+ vpopcntb -536870912(%rcx,%r14,8), %zmm21 {%k2}
+
+# CHECK: vpopcntb -536870910(%rcx,%r14,8), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x02,0x00,0x00,0xe0]
+ vpopcntb -536870910(%rcx,%r14,8), %zmm21 {%k2}
+
+# CHECK: vpopcntw (%rcx), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xe2,0xfd,0x4a,0x54,0x29]
+ vpopcntw (%rcx), %zmm21 {%k2}
+
+# CHECK: vpopcntw -256(%rsp), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xe2,0xfd,0x4a,0x54,0x6c,0x24,0xfc]
+ vpopcntw -256(%rsp), %zmm21 {%k2}
+
+# CHECK: vpopcntw 256(%rsp), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xe2,0xfd,0x4a,0x54,0x6c,0x24,0x04]
+ vpopcntw 256(%rsp), %zmm21 {%k2}
+
+# CHECK: vpopcntw 268435456(%rcx,%r14,8), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0x10]
+ vpopcntw 268435456(%rcx,%r14,8), %zmm21 {%k2}
+
+# CHECK: vpopcntw -536870912(%rcx,%r14,8), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0xe0]
+ vpopcntw -536870912(%rcx,%r14,8), %zmm21 {%k2}
+
+# CHECK: vpopcntw -536870910(%rcx,%r14,8), %zmm21 {%k2}
+# CHECK: encoding: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x02,0x00,0x00,0xe0]
+ vpopcntw -536870910(%rcx,%r14,8), %zmm21 {%k2}
+
+# CHECK: vpshufbitqmb %zmm2, %zmm23, %k1
+# CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0xca]
+ vpshufbitqmb %zmm2, %zmm23, %k1
+
+# CHECK: vpshufbitqmb %zmm2, %zmm23, %k1 {%k2}
+# CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0xca]
+ vpshufbitqmb %zmm2, %zmm23, %k1 {%k2}
+
+# CHECK: vpshufbitqmb (%rcx), %zmm23, %k1
+# CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0x09]
+ vpshufbitqmb (%rcx), %zmm23, %k1
+
+# CHECK: vpshufbitqmb -256(%rsp), %zmm23, %k1
+# CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0x4c,0x24,0xfc]
+ vpshufbitqmb -256(%rsp), %zmm23, %k1
+
+# CHECK: vpshufbitqmb 256(%rsp), %zmm23, %k1
+# CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0x4c,0x24,0x04]
+ vpshufbitqmb 256(%rsp), %zmm23, %k1
+
+# CHECK: vpshufbitqmb 268435456(%rcx,%r14,8), %zmm23, %k1
+# CHECK: encoding: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x00,0x00,0x00,0x10]
+ vpshufbitqmb 268435456(%rcx,%r14,8), %zmm23, %k1
+
+# CHECK: vpshufbitqmb -536870912(%rcx,%r14,8), %zmm23, %k1
+# CHECK: encoding: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x00,0x00,0x00,0xe0]
+ vpshufbitqmb -536870912(%rcx,%r14,8), %zmm23, %k1
+
+# CHECK: vpshufbitqmb -536870910(%rcx,%r14,8), %zmm23, %k1
+# CHECK: encoding: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x02,0x00,0x00,0xe0]
+ vpshufbitqmb -536870910(%rcx,%r14,8), %zmm23, %k1
+
+# CHECK: vpshufbitqmb (%rcx), %zmm23, %k1 {%k2}
+# CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0x09]
+ vpshufbitqmb (%rcx), %zmm23, %k1 {%k2}
+
+# CHECK: vpshufbitqmb -256(%rsp), %zmm23, %k1 {%k2}
+# CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0x4c,0x24,0xfc]
+ vpshufbitqmb -256(%rsp), %zmm23, %k1 {%k2}
+
+# CHECK: vpshufbitqmb 256(%rsp), %zmm23, %k1 {%k2}
+# CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0x4c,0x24,0x04]
+ vpshufbitqmb 256(%rsp), %zmm23, %k1 {%k2}
+
+# CHECK: vpshufbitqmb 268435456(%rcx,%r14,8), %zmm23, %k1 {%k2}
+# CHECK: encoding: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x00,0x00,0x00,0x10]
+ vpshufbitqmb 268435456(%rcx,%r14,8), %zmm23, %k1 {%k2}
+
+# CHECK: vpshufbitqmb -536870912(%rcx,%r14,8), %zmm23, %k1 {%k2}
+# CHECK: encoding: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x00,0x00,0x00,0xe0]
+ vpshufbitqmb -536870912(%rcx,%r14,8), %zmm23, %k1 {%k2}
+
+# CHECK: vpshufbitqmb -536870910(%rcx,%r14,8), %zmm23, %k1 {%k2}
+# CHECK: encoding: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x02,0x00,0x00,0xe0]
+ vpshufbitqmb -536870910(%rcx,%r14,8), %zmm23, %k1 {%k2}
diff --git a/llvm/test/MC/X86/avx512bitalg-encoding.s b/llvm/test/MC/X86/avx512bitalg-encoding.s
deleted file mode 100644
index f8b507adfc0912..00000000000000
--- a/llvm/test/MC/X86/avx512bitalg-encoding.s
+++ /dev/null
@@ -1,170 +0,0 @@
-// RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding < %s | FileCheck %s
-
-// CHECK: vpopcntb %zmm23, %zmm21
-// CHECK: encoding: [0x62,0xa2,0x7d,0x48,0x54,0xef]
- vpopcntb %zmm23, %zmm21
-
-// CHECK: vpopcntw %zmm23, %zmm21
-// CHECK: encoding: [0x62,0xa2,0xfd,0x48,0x54,0xef]
- vpopcntw %zmm23, %zmm21
-
-// CHECK: vpopcntb %zmm3, %zmm1 {%k2}
-// CHECK: encoding: [0x62,0xf2,0x7d,0x4a,0x54,0xcb]
- vpopcntb %zmm3, %zmm1 {%k2}
-
-// CHECK: vpopcntw %zmm3, %zmm1 {%k2}
-// CHECK: encoding: [0x62,0xf2,0xfd,0x4a,0x54,0xcb]
- vpopcntw %zmm3, %zmm1 {%k2}
-
-// CHECK: vpopcntb (%rcx), %zmm1
-// CHECK: encoding: [0x62,0xf2,0x7d,0x48,0x54,0x09]
- vpopcntb (%rcx), %zmm1
-
-// CHECK: vpopcntb -256(%rsp), %zmm1
-// CHECK: encoding: [0x62,0xf2,0x7d,0x48,0x54,0x4c,0x24,0xfc]
- vpopcntb -256(%rsp), %zmm1
-
-// CHECK: vpopcntb 256(%rsp), %zmm1
-// CHECK: encoding: [0x62,0xf2,0x7d,0x48,0x54,0x4c,0x24,0x04]
- vpopcntb 256(%rsp), %zmm1
-
-// CHECK: vpopcntb 268435456(%rcx,%r14,8), %zmm1
-// CHECK: encoding: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0x10]
- vpopcntb 268435456(%rcx,%r14,8), %zmm1
-
-// CHECK: vpopcntb -536870912(%rcx,%r14,8), %zmm1
-// CHECK: encoding: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0xe0]
- vpopcntb -536870912(%rcx,%r14,8), %zmm1
-
-// CHECK: vpopcntb -536870910(%rcx,%r14,8), %zmm1
-// CHECK: encoding: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x02,0x00,0x00,0xe0]
- vpopcntb -536870910(%rcx,%r14,8), %zmm1
-
-// CHECK: vpopcntw (%rcx), %zmm1
-// CHECK: encoding: [0x62,0xf2,0xfd,0x48,0x54,0x09]
- vpopcntw (%rcx), %zmm1
-
-// CHECK: vpopcntw -256(%rsp), %zmm1
-// CHECK: encoding: [0x62,0xf2,0xfd,0x48,0x54,0x4c,0x24,0xfc]
- vpopcntw -256(%rsp), %zmm1
-
-// CHECK: vpopcntw 256(%rsp), %zmm1
-// CHECK: encoding: [0x62,0xf2,0xfd,0x48,0x54,0x4c,0x24,0x04]
- vpopcntw 256(%rsp), %zmm1
-
-// CHECK: vpopcntw 268435456(%rcx,%r14,8), %zmm1
-// CHECK: encoding: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0x10]
- vpopcntw 268435456(%rcx,%r14,8), %zmm1
-
-// CHECK: vpopcntw -536870912(%rcx,%r14,8), %zmm1
-// CHECK: encoding: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0xe0]
- vpopcntw -536870912(%rcx,%r14,8), %zmm1
-
-// CHECK: vpopcntw -536870910(%rcx,%r14,8), %zmm1
-// CHECK: encoding: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x02,0x00,0x00,0xe0]
- vpopcntw -536870910(%rcx,%r14,8), %zmm1
-
-// CHECK: vpopcntb (%rcx), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xe2,0x7d,0x4a,0x54,0x29]
- vpopcntb (%rcx), %zmm21 {%k2}
-
-// CHECK: vpopcntb -256(%rsp), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xe2,0x7d,0x4a,0x54,0x6c,0x24,0xfc]
- vpopcntb -256(%rsp), %zmm21 {%k2}
-
-// CHECK: vpopcntb 256(%rsp), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xe2,0x7d,0x4a,0x54,0x6c,0x24,0x04]
- vpopcntb 256(%rsp), %zmm21 {%k2}
-
-// CHECK: vpopcntb 268435456(%rcx,%r14,8), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0x10]
- vpopcntb 268435456(%rcx,%r14,8), %zmm21 {%k2}
-
-// CHECK: vpopcntb -536870912(%rcx,%r14,8), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0xe0]
- vpopcntb -536870912(%rcx,%r14,8), %zmm21 {%k2}
-
-// CHECK: vpopcntb -536870910(%rcx,%r14,8), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x02,0x00,0x00,0xe0]
- vpopcntb -536870910(%rcx,%r14,8), %zmm21 {%k2}
-
-// CHECK: vpopcntw (%rcx), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xe2,0xfd,0x4a,0x54,0x29]
- vpopcntw (%rcx), %zmm21 {%k2}
-
-// CHECK: vpopcntw -256(%rsp), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xe2,0xfd,0x4a,0x54,0x6c,0x24,0xfc]
- vpopcntw -256(%rsp), %zmm21 {%k2}
-
-// CHECK: vpopcntw 256(%rsp), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xe2,0xfd,0x4a,0x54,0x6c,0x24,0x04]
- vpopcntw 256(%rsp), %zmm21 {%k2}
-
-// CHECK: vpopcntw 268435456(%rcx,%r14,8), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0x10]
- vpopcntw 268435456(%rcx,%r14,8), %zmm21 {%k2}
-
-// CHECK: vpopcntw -536870912(%rcx,%r14,8), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0xe0]
- vpopcntw -536870912(%rcx,%r14,8), %zmm21 {%k2}
-
-// CHECK: vpopcntw -536870910(%rcx,%r14,8), %zmm21 {%k2}
-// CHECK: encoding: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x02,0x00,0x00,0xe0]
- vpopcntw -536870910(%rcx,%r14,8), %zmm21 {%k2}
-
-// CHECK: vpshufbitqmb %zmm2, %zmm23, %k1
-// CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0xca]
- vpshufbitqmb %zmm2, %zmm23, %k1
-
-// CHECK: vpshufbitqmb %zmm2, %zmm23, %k1 {%k2}
-// CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0xca]
- vpshufbitqmb %zmm2, %zmm23, %k1 {%k2}
-
-// CHECK: vpshufbitqmb (%rcx), %zmm23, %k1
-// CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0x09]
- vpshufbitqmb (%rcx), %zmm23, %k1
-
-// CHECK: vpshufbitqmb -256(%rsp), %zmm23, %k1
-// CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0x4c,0x24,0xfc]
- vpshufbitqmb -256(%rsp), %zmm23, %k1
-
-// CHECK: vpshufbitqmb 256(%rsp), %zmm23, %k1
-// CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0x4c,0x24,0x04]
- vpshufbitqmb 256(%rsp), %zmm23, %k1
-
-// CHECK: vpshufbitqmb 268435456(%rcx,%r14,8), %zmm23, %k1
-// CHECK: encoding: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x00,0x00,0x00,0x10]
- vpshufbitqmb 268435456(%rcx,%r14,8), %zmm23, %k1
-
-// CHECK: vpshufbitqmb -536870912(%rcx,%r14,8), %zmm23, %k1
-// CHECK: encoding: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x00,0x00,0x00,0xe0]
- vpshufbitqmb -536870912(%rcx,%r14,8), %zmm23, %k1
-
-// CHECK: vpshufbitqmb -536870910(%rcx,%r14,8), %zmm23, %k1
-// CHECK: encoding: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x02,0x00,0x00,0xe0]
- vpshufbitqmb -536870910(%rcx,%r14,8), %zmm23, %k1
-
-// CHECK: vpshufbitqmb (%rcx), %zmm23, %k1 {%k2}
-// CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0x09]
- vpshufbitqmb (%rcx), %zmm23, %k1 {%k2}
-
-// CHECK: vpshufbitqmb -256(%rsp), %zmm23, %k1 {%k2}
-// CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0x4c,0x24,0xfc]
- vpshufbitqmb -256(%rsp), %zmm23, %k1 {%k2}
-
-// CHECK: vpshufbitqmb 256(%rsp), %zmm23, %k1 {%k2}
-// CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0x4c,0x24,0x04]
- vpshufbitqmb 256(%rsp), %zmm23, %k1 {%k2}
-
-// CHECK: vpshufbitqmb 268435456(%rcx,%r14,8), %zmm23, %k1 {%k2}
-// CHECK: encoding: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x00,0x00,0x00,0x10]
- vpshufbitqmb 268435456(%rcx,%r14,8), %zmm23, %k1 {%k2}
-
-// CHECK: vpshufbitqmb -536870912(%rcx,%r14,8), %zmm23, %k1 {%k2}
-// CHECK: encoding: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x00,0x00,0x00,0xe0]
- vpshufbitqmb -536870912(%rcx,%r14,8), %zmm23, %k1 {%k2}
-
-// CHECK: vpshufbitqmb -536870910(%rcx,%r14,8), %zmm23, %k1 {%k2}
-// CHECK: encoding: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x02,0x00,0x00,0xe0]
- vpshufbitqmb -536870910(%rcx,%r14,8), %zmm23, %k1 {%k2}
-
diff --git a/llvm/test/MC/X86/avx512bitalg-intel.s b/llvm/test/MC/X86/avx512bitalg-intel.s
new file mode 100644
index 00000000000000..ab5e3ff0c1b7a3
--- /dev/null
+++ b/llvm/test/MC/X86/avx512bitalg-intel.s
@@ -0,0 +1,169 @@
+# RUN: llvm-mc -triple x86_64 -show-encoding -x86-asm-syntax=intel -output-asm-variant=1 %s | FileCheck %s
+
+# CHECK: vpopcntb zmm21, zmm23
+# CHECK: encoding: [0x62,0xa2,0x7d,0x48,0x54,0xef]
+ vpopcntb zmm21, zmm23
+
+# CHECK: vpopcntw zmm21, zmm23
+# CHECK: encoding: [0x62,0xa2,0xfd,0x48,0x54,0xef]
+ vpopcntw zmm21, zmm23
+
+# CHECK: vpopcntb zmm1 {k2}, zmm3
+# CHECK: encoding: [0x62,0xf2,0x7d,0x4a,0x54,0xcb]
+ vpopcntb zmm1 {k2}, zmm3
+
+# CHECK: vpopcntw zmm1 {k2}, zmm3
+# CHECK: encoding: [0x62,0xf2,0xfd,0x4a,0x54,0xcb]
+ vpopcntw zmm1 {k2}, zmm3
+
+# CHECK: vpopcntb zmm1, zmmword ptr [rcx]
+# CHECK: encoding: [0x62,0xf2,0x7d,0x48,0x54,0x09]
+ vpopcntb zmm1, zmmword ptr [rcx]
+
+# CHECK: vpopcntb zmm1, zmmword ptr [rsp - 256]
+# CHECK: encoding: [0x62,0xf2,0x7d,0x48,0x54,0x4c,0x24,0xfc]
+ vpopcntb zmm1, zmmword ptr [rsp - 256]
+
+# CHECK: vpopcntb zmm1, zmmword ptr [rsp + 256]
+# CHECK: encoding: [0x62,0xf2,0x7d,0x48,0x54,0x4c,0x24,0x04]
+ vpopcntb zmm1, zmmword ptr [rsp + 256]
+
+# CHECK: vpopcntb zmm1, zmmword ptr [rcx + 8*r14 + 268435456]
+# CHECK: encoding: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0x10]
+ vpopcntb zmm1, zmmword ptr [rcx + 8*r14 + 268435456]
+
+# CHECK: vpopcntb zmm1, zmmword ptr [rcx + 8*r14 - 536870912]
+# CHECK: encoding: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0xe0]
+ vpopcntb zmm1, zmmword ptr [rcx + 8*r14 - 536870912]
+
+# CHECK: vpopcntb zmm1, zmmword ptr [rcx + 8*r14 - 536870910]
+# CHECK: encoding: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x02,0x00,0x00,0xe0]
+ vpopcntb zmm1, zmmword ptr [rcx + 8*r14 - 536870910]
+
+# CHECK: vpopcntw zmm1, zmmword ptr [rcx]
+# CHECK: encoding: [0x62,0xf2,0xfd,0x48,0x54,0x09]
+ vpopcntw zmm1, zmmword ptr [rcx]
+
+# CHECK: vpopcntw zmm1, zmmword ptr [rsp - 256]
+# CHECK: encoding: [0x62,0xf2,0xfd,0x48,0x54,0x4c,0x24,0xfc]
+ vpopcntw zmm1, zmmword ptr [rsp - 256]
+
+# CHECK: vpopcntw zmm1, zmmword ptr [rsp + 256]
+# CHECK: encoding: [0x62,0xf2,0xfd,0x48,0x54,0x4c,0x24,0x04]
+ vpopcntw zmm1, zmmword ptr [rsp + 256]
+
+# CHECK: vpopcntw zmm1, zmmword ptr [rcx + 8*r14 + 268435456]
+# CHECK: encoding: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0x10]
+ vpopcntw zmm1, zmmword ptr [rcx + 8*r14 + 268435456]
+
+# CHECK: vpopcntw zmm1, zmmword ptr [rcx + 8*r14 - 536870912]
+# CHECK: encoding: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0xe0]
+ vpopcntw zmm1, zmmword ptr [rcx + 8*r14 - 536870912]
+
+# CHECK: vpopcntw zmm1, zmmword ptr [rcx + 8*r14 - 536870910]
+# CHECK: encoding: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x02,0x00,0x00,0xe0]
+ vpopcntw zmm1, zmmword ptr [rcx + 8*r14 - 536870910]
+
+# CHECK: vpopcntb zmm21 {k2}, zmmword ptr [rcx]
+# CHECK: encoding: [0x62,0xe2,0x7d,0x4a,0x54,0x29]
+ vpopcntb zmm21 {k2}, zmmword ptr [rcx]
+
+# CHECK: vpopcntb zmm21 {k2}, zmmword ptr [rsp - 256]
+# CHECK: encoding: [0x62,0xe2,0x7d,0x4a,0x54,0x6c,0x24,0xfc]
+ vpopcntb zmm21 {k2}, zmmword ptr [rsp - 256]
+
+# CHECK: vpopcntb zmm21 {k2}, zmmword ptr [rsp + 256]
+# CHECK: encoding: [0x62,0xe2,0x7d,0x4a,0x54,0x6c,0x24,0x04]
+ vpopcntb zmm21 {k2}, zmmword ptr [rsp + 256]
+
+# CHECK: vpopcntb zmm21 {k2}, zmmword ptr [rcx + 8*r14 + 268435456]
+# CHECK: encoding: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0x10]
+ vpopcntb zmm21 {k2}, zmmword ptr [rcx + 8*r14 + 268435456]
+
+# CHECK: vpopcntb zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870912]
+# CHECK: encoding: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0xe0]
+ vpopcntb zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870912]
+
+# CHECK: vpopcntb zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870910]
+# CHECK: encoding: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x02,0x00,0x00,0xe0]
+ vpopcntb zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870910]
+
+# CHECK: vpopcntw zmm21 {k2}, zmmword ptr [rcx]
+# CHECK: encoding: [0x62,0xe2,0xfd,0x4a,0x54,0x29]
+ vpopcntw zmm21 {k2}, zmmword ptr [rcx]
+
+# CHECK: vpopcntw zmm21 {k2}, zmmword ptr [rsp - 256]
+# CHECK: encoding: [0x62,0xe2,0xfd,0x4a,0x54,0x6c,0x24,0xfc]
+ vpopcntw zmm21 {k2}, zmmword ptr [rsp - 256]
+
+# CHECK: vpopcntw zmm21 {k2}, zmmword ptr [rsp + 256]
+# CHECK: encoding: [0x62,0xe2,0xfd,0x4a,0x54,0x6c,0x24,0x04]
+ vpopcntw zmm21 {k2}, zmmword ptr [rsp + 256]
+
+# CHECK: vpopcntw zmm21 {k2}, zmmword ptr [rcx + 8*r14 + 268435456]
+# CHECK: encoding: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0x10]
+ vpopcntw zmm21 {k2}, zmmword ptr [rcx + 8*r14 + 268435456]
+
+# CHECK: vpopcntw zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870912]
+# CHECK: encoding: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0xe0]
+ vpopcntw zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870912]
+
+# CHECK: vpopcntw zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870910]
+# CHECK: encoding: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x02,0x00,0x00,0xe0]
+ vpopcntw zmm21 {k2}, zmmword ptr [rcx + 8*r14 - 536870910]
+
+# CHECK: vpshufbitqmb k1, zmm23, zmm2
+# CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0xca]
+ vpshufbitqmb k1, zmm23, zmm2
+
+# CHECK: vpshufbitqmb k1 {k2}, zmm23, zmm2
+# CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0xca]
+ vpshufbitqmb k1 {k2}, zmm23, zmm2
+
+# CHECK: vpshufbitqmb k1, zmm23, zmmword ptr [rcx]
+# CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0x09]
+ vpshufbitqmb k1, zmm23, zmmword ptr [rcx]
+
+# CHECK: vpshufbitqmb k1, zmm23, zmmword ptr [rsp - 256]
+# CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0x4c,0x24,0xfc]
+ vpshufbitqmb k1, zmm23, zmmword ptr [rsp - 256]
+
+# CHECK: vpshufbitqmb k1, zmm23, zmmword ptr [rsp + 256]
+# CHECK: encoding: [0x62,0xf2,0x45,0x40,0x8f,0x4c,0x24,0x04]
+ vpshufbitqmb k1, zmm23, zmmword ptr [rsp + 256]
+
+# CHECK: vpshufbitqmb k1, zmm23, zmmword ptr [rcx + 8*r14 + 268435456]
+# CHECK: encoding: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x00,0x00,0x00,0x10]
+ vpshufbitqmb k1, zmm23, zmmword ptr [rcx + 8*r14 + 268435456]
+
+# CHECK: vpshufbitqmb k1, zmm23, zmmword ptr [rcx + 8*r14 - 536870912]
+# CHECK: encoding: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x00,0x00,0x00,0xe0]
+ vpshufbitqmb k1, zmm23, zmmword ptr [rcx + 8*r14 - 536870912]
+
+# CHECK: vpshufbitqmb k1, zmm23, zmmword ptr [rcx + 8*r14 - 536870910]
+# CHECK: encoding: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x02,0x00,0x00,0xe0]
+ vpshufbitqmb k1, zmm23, zmmword ptr [rcx + 8*r14 - 536870910]
+
+# CHECK: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx]
+# CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0x09]
+ vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx]
+
+# CHECK: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rsp - 256]
+# CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0x4c,0x24,0xfc]
+ vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rsp - 256]
+
+# CHECK: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rsp + 256]
+# CHECK: encoding: [0x62,0xf2,0x45,0x42,0x8f,0x4c,0x24,0x04]
+ vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rsp + 256]
+
+# CHECK: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx + 8*r14 + 268435456]
+# CHECK: encoding: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x00,0x00,0x00,0x10]
+ vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx + 8*r14 + 268435456]
+
+# CHECK: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx + 8*r14 - 536870912]
+# CHECK: encoding: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x00,0x00,0x00,0xe0]
+ vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx + 8*r14 - 536870912]
+
+# CHECK: vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx + 8*r14 - 536870910]
+# CHECK: encoding: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x02,0x00,0x00,0xe0]
+ vpshufbitqmb k1 {k2}, zmm23, zmmword ptr [rcx + 8*r14 - 536870910]
More information about the llvm-commits
mailing list