1# Check EVEX WIG instructions 2 3 .allow_index_reg 4 .text 5_start: 6 7 {evex} vcvtsi2ss %eax, %xmm0, %xmm0 8 {evex} vcvtsi2ss 4(%eax), %xmm0, %xmm0 9 10 {evex} vcvtsi2sd %eax, %xmm0, %xmm0 11 {evex} vcvtsi2sd 4(%eax), %xmm0, %xmm0 12 13 {evex} vcvtss2si %xmm0, %eax 14 15 {evex} vcvtsd2si %xmm0, %eax 16 17 {evex} vcvttss2si %xmm0, %eax 18 19 {evex} vcvttsd2si %xmm0, %eax 20 21 vcvtusi2ss %eax, %xmm0, %xmm0 22 vcvtusi2ss 4(%eax), %xmm0, %xmm0 23 24 vcvtusi2sd %eax, %xmm0, %xmm0 25 vcvtusi2sd 4(%eax), %xmm0, %xmm0 26 27 vcvtss2usi %xmm0, %eax 28 29 vcvtsd2usi %xmm0, %eax 30 31 vcvttss2usi %xmm0, %eax 32 33 vcvttsd2usi %xmm0, %eax 34 35 {evex} vextractps $0, %xmm0, %eax 36 {evex} vextractps $0, %xmm0, 4(%eax) 37 38 {evex} vmovd %eax, %xmm0 39 {evex} vmovd 4(%eax), %xmm0 40 41 {evex} vmovd %xmm0, %eax 42 {evex} vmovd %xmm0, 4(%eax) 43 44 vpbroadcastd %eax, %xmm0 45 46 {evex} vpextrb $0, %xmm0, %eax 47 {evex} vpextrb $0, %xmm0, 1(%eax) 48 49 {evex} vpextrd $0, %xmm0, %eax 50 {evex} vpextrd $0, %xmm0, 4(%eax) 51 52 {evex} vpextrw $0, %xmm0, %eax 53 {evex} {store} vpextrw $0, %xmm0, %eax 54 {evex} vpextrw $0, %xmm0, 2(%eax) 55 56 {evex} vpinsrb $0, %eax, %xmm0, %xmm0 57 {evex} vpinsrb $0, 1(%eax), %xmm0, %xmm0 58 59 {evex} vpinsrd $0, %eax, %xmm0, %xmm0 60 {evex} vpinsrd $0, 4(%eax), %xmm0, %xmm0 61 62 {evex} vpinsrw $0, %eax, %xmm0, %xmm0 63 {evex} vpinsrw $0, 2(%eax), %xmm0, %xmm0 64 65 vpmovsxbd %xmm5, %zmm6{%k7} # AVX512 66 vpmovsxbd %xmm5, %zmm6{%k7}{z} # AVX512 67 vpmovsxbd (%ecx), %zmm6{%k7} # AVX512 68 vpmovsxbd -123456(%esp,%esi,8), %zmm6{%k7} # AVX512 69 vpmovsxbd 2032(%edx), %zmm6{%k7} # AVX512 Disp8 70 vpmovsxbd 2048(%edx), %zmm6{%k7} # AVX512 71 vpmovsxbd -2048(%edx), %zmm6{%k7} # AVX512 Disp8 72 vpmovsxbd -2064(%edx), %zmm6{%k7} # AVX512 73 74 vpmovsxbq %xmm5, %zmm6{%k7} # AVX512 75 vpmovsxbq %xmm5, %zmm6{%k7}{z} # AVX512 76 vpmovsxbq (%ecx), %zmm6{%k7} # AVX512 77 vpmovsxbq -123456(%esp,%esi,8), %zmm6{%k7} # AVX512 78 vpmovsxbq 1016(%edx), %zmm6{%k7} # AVX512 Disp8 79 vpmovsxbq 1024(%edx), %zmm6{%k7} # AVX512 80 vpmovsxbq -1024(%edx), %zmm6{%k7} # AVX512 Disp8 81 vpmovsxbq -1032(%edx), %zmm6{%k7} # AVX512 82 83 vpmovsxwd %ymm5, %zmm6{%k7} # AVX512 84 vpmovsxwd %ymm5, %zmm6{%k7}{z} # AVX512 85 vpmovsxwd (%ecx), %zmm6{%k7} # AVX512 86 vpmovsxwd -123456(%esp,%esi,8), %zmm6{%k7} # AVX512 87 vpmovsxwd 4064(%edx), %zmm6{%k7} # AVX512 Disp8 88 vpmovsxwd 4096(%edx), %zmm6{%k7} # AVX512 89 vpmovsxwd -4096(%edx), %zmm6{%k7} # AVX512 Disp8 90 vpmovsxwd -4128(%edx), %zmm6{%k7} # AVX512 91 92 vpmovsxwq %xmm5, %zmm6{%k7} # AVX512 93 vpmovsxwq %xmm5, %zmm6{%k7}{z} # AVX512 94 vpmovsxwq (%ecx), %zmm6{%k7} # AVX512 95 vpmovsxwq -123456(%esp,%esi,8), %zmm6{%k7} # AVX512 96 vpmovsxwq 2032(%edx), %zmm6{%k7} # AVX512 Disp8 97 vpmovsxwq 2048(%edx), %zmm6{%k7} # AVX512 98 vpmovsxwq -2048(%edx), %zmm6{%k7} # AVX512 Disp8 99 vpmovsxwq -2064(%edx), %zmm6{%k7} # AVX512 100 101 vpmovzxbd %xmm5, %zmm6{%k7} # AVX512 102 vpmovzxbd %xmm5, %zmm6{%k7}{z} # AVX512 103 vpmovzxbd (%ecx), %zmm6{%k7} # AVX512 104 vpmovzxbd -123456(%esp,%esi,8), %zmm6{%k7} # AVX512 105 vpmovzxbd 2032(%edx), %zmm6{%k7} # AVX512 Disp8 106 vpmovzxbd 2048(%edx), %zmm6{%k7} # AVX512 107 vpmovzxbd -2048(%edx), %zmm6{%k7} # AVX512 Disp8 108 vpmovzxbd -2064(%edx), %zmm6{%k7} # AVX512 109 110 vpmovzxbq %xmm5, %zmm6{%k7} # AVX512 111 vpmovzxbq %xmm5, %zmm6{%k7}{z} # AVX512 112 vpmovzxbq (%ecx), %zmm6{%k7} # AVX512 113 vpmovzxbq -123456(%esp,%esi,8), %zmm6{%k7} # AVX512 114 vpmovzxbq 1016(%edx), %zmm6{%k7} # AVX512 Disp8 115 vpmovzxbq 1024(%edx), %zmm6{%k7} # AVX512 116 vpmovzxbq -1024(%edx), %zmm6{%k7} # AVX512 Disp8 117 vpmovzxbq -1032(%edx), %zmm6{%k7} # AVX512 118 119 vpmovzxwd %ymm5, %zmm6{%k7} # AVX512 120 vpmovzxwd %ymm5, %zmm6{%k7}{z} # AVX512 121 vpmovzxwd (%ecx), %zmm6{%k7} # AVX512 122 vpmovzxwd -123456(%esp,%esi,8), %zmm6{%k7} # AVX512 123 vpmovzxwd 4064(%edx), %zmm6{%k7} # AVX512 Disp8 124 vpmovzxwd 4096(%edx), %zmm6{%k7} # AVX512 125 vpmovzxwd -4096(%edx), %zmm6{%k7} # AVX512 Disp8 126 vpmovzxwd -4128(%edx), %zmm6{%k7} # AVX512 127 128 vpmovzxwq %xmm5, %zmm6{%k7} # AVX512 129 vpmovzxwq %xmm5, %zmm6{%k7}{z} # AVX512 130 vpmovzxwq (%ecx), %zmm6{%k7} # AVX512 131 vpmovzxwq -123456(%esp,%esi,8), %zmm6{%k7} # AVX512 132 vpmovzxwq 2032(%edx), %zmm6{%k7} # AVX512 Disp8 133 vpmovzxwq 2048(%edx), %zmm6{%k7} # AVX512 134 vpmovzxwq -2048(%edx), %zmm6{%k7} # AVX512 Disp8 135 vpmovzxwq -2064(%edx), %zmm6{%k7} # AVX512 136 137 .intel_syntax noprefix 138 vpmovsxbd zmm6{k7}, xmm5 # AVX512 139 vpmovsxbd zmm6{k7}{z}, xmm5 # AVX512 140 vpmovsxbd zmm6{k7}, XMMWORD PTR [ecx] # AVX512 141 vpmovsxbd zmm6{k7}, XMMWORD PTR [esp+esi*8-123456] # AVX512 142 vpmovsxbd zmm6{k7}, XMMWORD PTR [edx+2032] # AVX512 Disp8 143 vpmovsxbd zmm6{k7}, XMMWORD PTR [edx+2048] # AVX512 144 vpmovsxbd zmm6{k7}, XMMWORD PTR [edx-2048] # AVX512 Disp8 145 vpmovsxbd zmm6{k7}, XMMWORD PTR [edx-2064] # AVX512 146 147 vpmovsxbq zmm6{k7}, xmm5 # AVX512 148 vpmovsxbq zmm6{k7}{z}, xmm5 # AVX512 149 vpmovsxbq zmm6{k7}, QWORD PTR [ecx] # AVX512 150 vpmovsxbq zmm6{k7}, QWORD PTR [esp+esi*8-123456] # AVX512 151 vpmovsxbq zmm6{k7}, QWORD PTR [edx+1016] # AVX512 Disp8 152 vpmovsxbq zmm6{k7}, QWORD PTR [edx+1024] # AVX512 153 vpmovsxbq zmm6{k7}, QWORD PTR [edx-1024] # AVX512 Disp8 154 vpmovsxbq zmm6{k7}, QWORD PTR [edx-1032] # AVX512 155 156 vpmovsxwd zmm6{k7}, ymm5 # AVX512 157 vpmovsxwd zmm6{k7}{z}, ymm5 # AVX512 158 vpmovsxwd zmm6{k7}, YMMWORD PTR [ecx] # AVX512 159 vpmovsxwd zmm6{k7}, YMMWORD PTR [esp+esi*8-123456] # AVX512 160 vpmovsxwd zmm6{k7}, YMMWORD PTR [edx+4064] # AVX512 Disp8 161 vpmovsxwd zmm6{k7}, YMMWORD PTR [edx+4096] # AVX512 162 vpmovsxwd zmm6{k7}, YMMWORD PTR [edx-4096] # AVX512 Disp8 163 vpmovsxwd zmm6{k7}, YMMWORD PTR [edx-4128] # AVX512 164 165 vpmovsxwq zmm6{k7}, xmm5 # AVX512 166 vpmovsxwq zmm6{k7}{z}, xmm5 # AVX512 167 vpmovsxwq zmm6{k7}, XMMWORD PTR [ecx] # AVX512 168 vpmovsxwq zmm6{k7}, XMMWORD PTR [esp+esi*8-123456] # AVX512 169 vpmovsxwq zmm6{k7}, XMMWORD PTR [edx+2032] # AVX512 Disp8 170 vpmovsxwq zmm6{k7}, XMMWORD PTR [edx+2048] # AVX512 171 vpmovsxwq zmm6{k7}, XMMWORD PTR [edx-2048] # AVX512 Disp8 172 vpmovsxwq zmm6{k7}, XMMWORD PTR [edx-2064] # AVX512 173 174 vpmovzxbd zmm6{k7}, xmm5 # AVX512 175 vpmovzxbd zmm6{k7}{z}, xmm5 # AVX512 176 vpmovzxbd zmm6{k7}, XMMWORD PTR [ecx] # AVX512 177 vpmovzxbd zmm6{k7}, XMMWORD PTR [esp+esi*8-123456] # AVX512 178 vpmovzxbd zmm6{k7}, XMMWORD PTR [edx+2032] # AVX512 Disp8 179 vpmovzxbd zmm6{k7}, XMMWORD PTR [edx+2048] # AVX512 180 vpmovzxbd zmm6{k7}, XMMWORD PTR [edx-2048] # AVX512 Disp8 181 vpmovzxbd zmm6{k7}, XMMWORD PTR [edx-2064] # AVX512 182 183 vpmovzxbq zmm6{k7}, xmm5 # AVX512 184 vpmovzxbq zmm6{k7}{z}, xmm5 # AVX512 185 vpmovzxbq zmm6{k7}, QWORD PTR [ecx] # AVX512 186 vpmovzxbq zmm6{k7}, QWORD PTR [esp+esi*8-123456] # AVX512 187 vpmovzxbq zmm6{k7}, QWORD PTR [edx+1016] # AVX512 Disp8 188 vpmovzxbq zmm6{k7}, QWORD PTR [edx+1024] # AVX512 189 vpmovzxbq zmm6{k7}, QWORD PTR [edx-1024] # AVX512 Disp8 190 vpmovzxbq zmm6{k7}, QWORD PTR [edx-1032] # AVX512 191 192 vpmovzxwd zmm6{k7}, ymm5 # AVX512 193 vpmovzxwd zmm6{k7}{z}, ymm5 # AVX512 194 vpmovzxwd zmm6{k7}, YMMWORD PTR [ecx] # AVX512 195 vpmovzxwd zmm6{k7}, YMMWORD PTR [esp+esi*8-123456] # AVX512 196 vpmovzxwd zmm6{k7}, YMMWORD PTR [edx+4064] # AVX512 Disp8 197 vpmovzxwd zmm6{k7}, YMMWORD PTR [edx+4096] # AVX512 198 vpmovzxwd zmm6{k7}, YMMWORD PTR [edx-4096] # AVX512 Disp8 199 vpmovzxwd zmm6{k7}, YMMWORD PTR [edx-4128] # AVX512 200 201 vpmovzxwq zmm6{k7}, xmm5 # AVX512 202 vpmovzxwq zmm6{k7}{z}, xmm5 # AVX512 203 vpmovzxwq zmm6{k7}, XMMWORD PTR [ecx] # AVX512 204 vpmovzxwq zmm6{k7}, XMMWORD PTR [esp+esi*8-123456] # AVX512 205 vpmovzxwq zmm6{k7}, XMMWORD PTR [edx+2032] # AVX512 Disp8 206 vpmovzxwq zmm6{k7}, XMMWORD PTR [edx+2048] # AVX512 207 vpmovzxwq zmm6{k7}, XMMWORD PTR [edx-2048] # AVX512 Disp8 208 vpmovzxwq zmm6{k7}, XMMWORD PTR [edx-2064] # AVX512 209 210