| 1 | # Check 32bit AVX512BITALG instructions |
| 2 | |
| 3 | .allow_index_reg |
| 4 | .text |
| 5 | _start: |
| 6 | vpshufbitqmb %zmm4, %zmm5, %k5 # AVX512BITALG |
| 7 | vpshufbitqmb %zmm4, %zmm5, %k5{%k7} # AVX512BITALG |
| 8 | vpshufbitqmb -123456(%esp,%esi,8), %zmm5, %k5 # AVX512BITALG |
| 9 | vpshufbitqmb 8128(%edx), %zmm5, %k5 # AVX512BITALG Disp8 |
| 10 | |
| 11 | vpopcntb %zmm5, %zmm6 # AVX512BITALG |
| 12 | vpopcntb %zmm5, %zmm6{%k7} # AVX512BITALG |
| 13 | vpopcntb %zmm5, %zmm6{%k7}{z} # AVX512BITALG |
| 14 | vpopcntb -123456(%esp,%esi,8), %zmm6 # AVX512BITALG |
| 15 | vpopcntb 8128(%edx), %zmm6 # AVX512BITALG Disp8 |
| 16 | |
| 17 | vpopcntw %zmm5, %zmm6 # AVX512BITALG |
| 18 | vpopcntw %zmm5, %zmm6{%k7} # AVX512BITALG |
| 19 | vpopcntw %zmm5, %zmm6{%k7}{z} # AVX512BITALG |
| 20 | vpopcntw -123456(%esp,%esi,8), %zmm6 # AVX512BITALG |
| 21 | vpopcntw 8128(%edx), %zmm6 # AVX512BITALG Disp8 |
| 22 | vpopcntd %zmm5, %zmm6 # AVX512BITALG |
| 23 | |
| 24 | vpopcntd %zmm5, %zmm6{%k7} # AVX512BITALG |
| 25 | vpopcntd %zmm5, %zmm6{%k7}{z} # AVX512BITALG |
| 26 | vpopcntd -123456(%esp,%esi,8), %zmm6 # AVX512BITALG |
| 27 | vpopcntd 8128(%edx), %zmm6 # AVX512BITALG Disp8 |
| 28 | vpopcntd 508(%edx){1to16}, %zmm6 # AVX512BITALG Disp8 |
| 29 | vpopcntq %zmm5, %zmm6 # AVX512BITALG |
| 30 | |
| 31 | vpopcntq %zmm5, %zmm6{%k7} # AVX512BITALG |
| 32 | vpopcntq %zmm5, %zmm6{%k7}{z} # AVX512BITALG |
| 33 | vpopcntq -123456(%esp,%esi,8), %zmm6 # AVX512BITALG |
| 34 | vpopcntq 8128(%edx), %zmm6 # AVX512BITALG Disp8 |
| 35 | vpopcntq 1016(%edx){1to8}, %zmm6 # AVX512BITALG Disp8 |
| 36 | |
| 37 | .intel_syntax noprefix |
| 38 | vpshufbitqmb k5, zmm5, zmm4 # AVX512BITALG |
| 39 | vpshufbitqmb k5{k7}, zmm5, zmm4 # AVX512BITALG |
| 40 | vpshufbitqmb k5, zmm5, ZMMWORD PTR [esp+esi*8-123456] # AVX512BITALG |
| 41 | vpshufbitqmb k5, zmm5, ZMMWORD PTR [edx+8128] # AVX512BITALG Disp8 |
| 42 | vpopcntb zmm6, zmm5 # AVX512BITALG |
| 43 | |
| 44 | vpopcntb zmm6{k7}, zmm5 # AVX512BITALG |
| 45 | vpopcntb zmm6{k7}{z}, zmm5 # AVX512BITALG |
| 46 | vpopcntb zmm6, ZMMWORD PTR [esp+esi*8-123456] # AVX512BITALG |
| 47 | vpopcntb zmm6, ZMMWORD PTR [edx+8128] # AVX512BITALG Disp8 |
| 48 | vpopcntw zmm6, zmm5 # AVX512BITALG |
| 49 | |
| 50 | vpopcntw zmm6{k7}, zmm5 # AVX512BITALG |
| 51 | vpopcntw zmm6{k7}{z}, zmm5 # AVX512BITALG |
| 52 | vpopcntw zmm6, ZMMWORD PTR [esp+esi*8-123456] # AVX512BITALG |
| 53 | vpopcntw zmm6, ZMMWORD PTR [edx+8128] # AVX512BITALG Disp8 |
| 54 | vpopcntd zmm6, zmm5 # AVX512BITALG |
| 55 | |
| 56 | vpopcntd zmm6{k7}, zmm5 # AVX512BITALG |
| 57 | vpopcntd zmm6{k7}{z}, zmm5 # AVX512BITALG |
| 58 | vpopcntd zmm6, ZMMWORD PTR [esp+esi*8-123456] # AVX512BITALG |
| 59 | vpopcntd zmm6, ZMMWORD PTR [edx+8128] # AVX512BITALG Disp8 |
| 60 | vpopcntd zmm6, [edx+508]{1to16} # AVX512BITALG Disp8 |
| 61 | vpopcntq zmm6, zmm5 # AVX512BITALG |
| 62 | |
| 63 | vpopcntq zmm6{k7}, zmm5 # AVX512BITALG |
| 64 | vpopcntq zmm6{k7}{z}, zmm5 # AVX512BITALG |
| 65 | vpopcntq zmm6, ZMMWORD PTR [esp+esi*8-123456] # AVX512BITALG |
| 66 | vpopcntq zmm6, ZMMWORD PTR [edx+8128] # AVX512BITALG Disp8 |
| 67 | vpopcntq zmm6, [edx+1016]{1to8} # AVX512BITALG Disp8 |