[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