llvm/llvm/test/MC/Disassembler/X86/avx512bitalg.txt

# 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