| Simon Pilgrim | 26178d4 | 2018-04-21 11:28:59 +0000 | [diff] [blame] | 1 | # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py |
| 2 | # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -instruction-tables < %s | FileCheck %s |
| 3 | |
| 4 | emms |
| 5 | |
| 6 | movd %eax, %mm2 |
| 7 | movd (%rax), %mm2 |
| 8 | |
| 9 | movd %mm0, %ecx |
| 10 | movd %mm0, (%rax) |
| 11 | |
| 12 | movq %rax, %mm2 |
| 13 | movq (%rax), %mm2 |
| 14 | |
| 15 | movq %mm0, %rcx |
| 16 | movq %mm0, (%rax) |
| 17 | |
| 18 | packsswb %mm0, %mm2 |
| 19 | packsswb (%rax), %mm2 |
| 20 | |
| 21 | packssdw %mm0, %mm2 |
| 22 | packssdw (%rax), %mm2 |
| 23 | |
| 24 | packuswb %mm0, %mm2 |
| 25 | packuswb (%rax), %mm2 |
| 26 | |
| 27 | paddb %mm0, %mm2 |
| 28 | paddb (%rax), %mm2 |
| 29 | |
| 30 | paddd %mm0, %mm2 |
| 31 | paddd (%rax), %mm2 |
| 32 | |
| 33 | paddsb %mm0, %mm2 |
| 34 | paddsb (%rax), %mm2 |
| 35 | |
| 36 | paddsw %mm0, %mm2 |
| 37 | paddsw (%rax), %mm2 |
| 38 | |
| 39 | paddusb %mm0, %mm2 |
| 40 | paddusb (%rax), %mm2 |
| 41 | |
| 42 | paddusw %mm0, %mm2 |
| 43 | paddusw (%rax), %mm2 |
| 44 | |
| 45 | paddw %mm0, %mm2 |
| 46 | paddw (%rax), %mm2 |
| 47 | |
| 48 | pand %mm0, %mm2 |
| 49 | pand (%rax), %mm2 |
| 50 | |
| 51 | pandn %mm0, %mm2 |
| 52 | pandn (%rax), %mm2 |
| 53 | |
| 54 | pcmpeqb %mm0, %mm2 |
| 55 | pcmpeqb (%rax), %mm2 |
| 56 | |
| 57 | pcmpeqd %mm0, %mm2 |
| 58 | pcmpeqd (%rax), %mm2 |
| 59 | |
| 60 | pcmpeqw %mm0, %mm2 |
| 61 | pcmpeqw (%rax), %mm2 |
| 62 | |
| 63 | pcmpgtb %mm0, %mm2 |
| 64 | pcmpgtb (%rax), %mm2 |
| 65 | |
| 66 | pcmpgtd %mm0, %mm2 |
| 67 | pcmpgtd (%rax), %mm2 |
| 68 | |
| 69 | pcmpgtw %mm0, %mm2 |
| 70 | pcmpgtw (%rax), %mm2 |
| 71 | |
| 72 | pmaddwd %mm0, %mm2 |
| 73 | pmaddwd (%rax), %mm2 |
| 74 | |
| 75 | pmulhw %mm0, %mm2 |
| 76 | pmulhw (%rax), %mm2 |
| 77 | |
| 78 | pmullw %mm0, %mm2 |
| 79 | pmullw (%rax), %mm2 |
| 80 | |
| 81 | por %mm0, %mm2 |
| 82 | por (%rax), %mm2 |
| 83 | |
| 84 | pslld $1, %mm2 |
| 85 | pslld %mm0, %mm2 |
| 86 | pslld (%rax), %mm2 |
| 87 | |
| 88 | psllq $1, %mm2 |
| 89 | psllq %mm0, %mm2 |
| 90 | psllq (%rax), %mm2 |
| 91 | |
| 92 | psllw $1, %mm2 |
| 93 | psllw %mm0, %mm2 |
| 94 | psllw (%rax), %mm2 |
| 95 | |
| 96 | psrad $1, %mm2 |
| 97 | psrad %mm0, %mm2 |
| 98 | psrad (%rax), %mm2 |
| 99 | |
| 100 | psraw $1, %mm2 |
| 101 | psraw %mm0, %mm2 |
| 102 | psraw (%rax), %mm2 |
| 103 | |
| 104 | psrld $1, %mm2 |
| 105 | psrld %mm0, %mm2 |
| 106 | psrld (%rax), %mm2 |
| 107 | |
| 108 | psrlq $1, %mm2 |
| 109 | psrlq %mm0, %mm2 |
| 110 | psrlq (%rax), %mm2 |
| 111 | |
| 112 | psrlw $1, %mm2 |
| 113 | psrlw %mm0, %mm2 |
| 114 | psrlw (%rax), %mm2 |
| 115 | |
| 116 | psubb %mm0, %mm2 |
| 117 | psubb (%rax), %mm2 |
| 118 | |
| 119 | psubd %mm0, %mm2 |
| 120 | psubd (%rax), %mm2 |
| 121 | |
| 122 | psubsb %mm0, %mm2 |
| 123 | psubsb (%rax), %mm2 |
| 124 | |
| 125 | psubsw %mm0, %mm2 |
| 126 | psubsw (%rax), %mm2 |
| 127 | |
| 128 | psubusb %mm0, %mm2 |
| 129 | psubusb (%rax), %mm2 |
| 130 | |
| 131 | psubusw %mm0, %mm2 |
| 132 | psubusw (%rax), %mm2 |
| 133 | |
| 134 | psubw %mm0, %mm2 |
| 135 | psubw (%rax), %mm2 |
| 136 | |
| 137 | punpckhbw %mm0, %mm2 |
| 138 | punpckhbw (%rax), %mm2 |
| 139 | |
| 140 | punpckhdq %mm0, %mm2 |
| 141 | punpckhdq (%rax), %mm2 |
| 142 | |
| 143 | punpckhwd %mm0, %mm2 |
| 144 | punpckhwd (%rax), %mm2 |
| 145 | |
| 146 | punpcklbw %mm0, %mm2 |
| 147 | punpcklbw (%rax), %mm2 |
| 148 | |
| 149 | punpckldq %mm0, %mm2 |
| 150 | punpckldq (%rax), %mm2 |
| 151 | |
| 152 | punpcklwd %mm0, %mm2 |
| 153 | punpcklwd (%rax), %mm2 |
| 154 | |
| 155 | pxor %mm0, %mm2 |
| 156 | pxor (%rax), %mm2 |
| 157 | |
| 158 | # CHECK: Instruction Info: |
| 159 | # CHECK-NEXT: [1]: #uOps |
| 160 | # CHECK-NEXT: [2]: Latency |
| 161 | # CHECK-NEXT: [3]: RThroughput |
| 162 | # CHECK-NEXT: [4]: MayLoad |
| 163 | # CHECK-NEXT: [5]: MayStore |
| 164 | # CHECK-NEXT: [6]: HasSideEffects |
| 165 | |
| Andrea Di Biagio | 45ccdd1 | 2018-05-16 10:12:06 +0000 | [diff] [blame] | 166 | # CHECK: [1] [2] [3] [4] [5] [6] Instructions: |
| 167 | # CHECK-NEXT: 31 31 10.00 * * * emms |
| 168 | # CHECK-NEXT: 1 1 1.00 movd %eax, %mm2 |
| 169 | # CHECK-NEXT: 1 5 0.50 * movd (%rax), %mm2 |
| 170 | # CHECK-NEXT: 1 1 1.00 movd %mm0, %ecx |
| 171 | # CHECK-NEXT: 2 1 1.00 * * movd %mm0, (%rax) |
| 172 | # CHECK-NEXT: 1 1 1.00 movq %rax, %mm2 |
| 173 | # CHECK-NEXT: 1 5 0.50 * movq (%rax), %mm2 |
| 174 | # CHECK-NEXT: 1 1 1.00 movq %mm0, %rcx |
| 175 | # CHECK-NEXT: 2 1 1.00 * movq %mm0, (%rax) |
| 176 | # CHECK-NEXT: 3 3 2.00 packsswb %mm0, %mm2 |
| 177 | # CHECK-NEXT: 3 7 2.00 * packsswb (%rax), %mm2 |
| 178 | # CHECK-NEXT: 3 3 2.00 packssdw %mm0, %mm2 |
| 179 | # CHECK-NEXT: 3 7 2.00 * packssdw (%rax), %mm2 |
| 180 | # CHECK-NEXT: 3 3 2.00 packuswb %mm0, %mm2 |
| 181 | # CHECK-NEXT: 3 7 2.00 * packuswb (%rax), %mm2 |
| 182 | # CHECK-NEXT: 1 1 0.50 paddb %mm0, %mm2 |
| 183 | # CHECK-NEXT: 2 6 0.50 * paddb (%rax), %mm2 |
| 184 | # CHECK-NEXT: 1 1 0.50 paddd %mm0, %mm2 |
| 185 | # CHECK-NEXT: 2 6 0.50 * paddd (%rax), %mm2 |
| 186 | # CHECK-NEXT: 1 1 0.50 paddsb %mm0, %mm2 |
| 187 | # CHECK-NEXT: 2 6 0.50 * paddsb (%rax), %mm2 |
| 188 | # CHECK-NEXT: 1 1 0.50 paddsw %mm0, %mm2 |
| 189 | # CHECK-NEXT: 2 6 0.50 * paddsw (%rax), %mm2 |
| 190 | # CHECK-NEXT: 1 1 0.50 paddusb %mm0, %mm2 |
| 191 | # CHECK-NEXT: 2 6 0.50 * paddusb (%rax), %mm2 |
| 192 | # CHECK-NEXT: 1 1 0.50 paddusw %mm0, %mm2 |
| 193 | # CHECK-NEXT: 2 6 0.50 * paddusw (%rax), %mm2 |
| 194 | # CHECK-NEXT: 1 1 0.50 paddw %mm0, %mm2 |
| 195 | # CHECK-NEXT: 2 6 0.50 * paddw (%rax), %mm2 |
| 196 | # CHECK-NEXT: 1 1 0.33 pand %mm0, %mm2 |
| 197 | # CHECK-NEXT: 2 6 0.50 * pand (%rax), %mm2 |
| 198 | # CHECK-NEXT: 1 1 0.33 pandn %mm0, %mm2 |
| 199 | # CHECK-NEXT: 2 6 0.50 * pandn (%rax), %mm2 |
| 200 | # CHECK-NEXT: 1 1 0.50 pcmpeqb %mm0, %mm2 |
| 201 | # CHECK-NEXT: 2 6 0.50 * pcmpeqb (%rax), %mm2 |
| 202 | # CHECK-NEXT: 1 1 0.50 pcmpeqd %mm0, %mm2 |
| 203 | # CHECK-NEXT: 2 6 0.50 * pcmpeqd (%rax), %mm2 |
| 204 | # CHECK-NEXT: 1 1 0.50 pcmpeqw %mm0, %mm2 |
| 205 | # CHECK-NEXT: 2 6 0.50 * pcmpeqw (%rax), %mm2 |
| 206 | # CHECK-NEXT: 1 1 0.50 pcmpgtb %mm0, %mm2 |
| 207 | # CHECK-NEXT: 2 6 0.50 * pcmpgtb (%rax), %mm2 |
| 208 | # CHECK-NEXT: 1 1 0.50 pcmpgtd %mm0, %mm2 |
| 209 | # CHECK-NEXT: 2 6 0.50 * pcmpgtd (%rax), %mm2 |
| 210 | # CHECK-NEXT: 1 1 0.50 pcmpgtw %mm0, %mm2 |
| 211 | # CHECK-NEXT: 2 6 0.50 * pcmpgtw (%rax), %mm2 |
| 212 | # CHECK-NEXT: 1 5 1.00 pmaddwd %mm0, %mm2 |
| 213 | # CHECK-NEXT: 2 10 1.00 * pmaddwd (%rax), %mm2 |
| 214 | # CHECK-NEXT: 1 5 1.00 pmulhw %mm0, %mm2 |
| 215 | # CHECK-NEXT: 2 10 1.00 * pmulhw (%rax), %mm2 |
| 216 | # CHECK-NEXT: 1 5 1.00 pmullw %mm0, %mm2 |
| 217 | # CHECK-NEXT: 2 10 1.00 * pmullw (%rax), %mm2 |
| 218 | # CHECK-NEXT: 1 1 0.33 por %mm0, %mm2 |
| 219 | # CHECK-NEXT: 2 6 0.50 * por (%rax), %mm2 |
| 220 | # CHECK-NEXT: 1 1 1.00 pslld $1, %mm2 |
| 221 | # CHECK-NEXT: 1 1 1.00 pslld %mm0, %mm2 |
| 222 | # CHECK-NEXT: 2 6 1.00 * pslld (%rax), %mm2 |
| 223 | # CHECK-NEXT: 1 1 1.00 psllq $1, %mm2 |
| 224 | # CHECK-NEXT: 1 1 1.00 psllq %mm0, %mm2 |
| 225 | # CHECK-NEXT: 2 6 1.00 * psllq (%rax), %mm2 |
| 226 | # CHECK-NEXT: 1 1 1.00 psllw $1, %mm2 |
| 227 | # CHECK-NEXT: 1 1 1.00 psllw %mm0, %mm2 |
| 228 | # CHECK-NEXT: 2 6 1.00 * psllw (%rax), %mm2 |
| 229 | # CHECK-NEXT: 1 1 1.00 psrad $1, %mm2 |
| 230 | # CHECK-NEXT: 1 1 1.00 psrad %mm0, %mm2 |
| 231 | # CHECK-NEXT: 2 6 1.00 * psrad (%rax), %mm2 |
| 232 | # CHECK-NEXT: 1 1 1.00 psraw $1, %mm2 |
| 233 | # CHECK-NEXT: 1 1 1.00 psraw %mm0, %mm2 |
| 234 | # CHECK-NEXT: 2 6 1.00 * psraw (%rax), %mm2 |
| 235 | # CHECK-NEXT: 1 1 1.00 psrld $1, %mm2 |
| 236 | # CHECK-NEXT: 1 1 1.00 psrld %mm0, %mm2 |
| 237 | # CHECK-NEXT: 2 6 1.00 * psrld (%rax), %mm2 |
| 238 | # CHECK-NEXT: 1 1 1.00 psrlq $1, %mm2 |
| 239 | # CHECK-NEXT: 1 1 1.00 psrlq %mm0, %mm2 |
| 240 | # CHECK-NEXT: 2 6 1.00 * psrlq (%rax), %mm2 |
| 241 | # CHECK-NEXT: 1 1 1.00 psrlw $1, %mm2 |
| 242 | # CHECK-NEXT: 1 1 1.00 psrlw %mm0, %mm2 |
| 243 | # CHECK-NEXT: 2 6 1.00 * psrlw (%rax), %mm2 |
| 244 | # CHECK-NEXT: 1 1 0.50 psubb %mm0, %mm2 |
| 245 | # CHECK-NEXT: 2 6 0.50 * psubb (%rax), %mm2 |
| 246 | # CHECK-NEXT: 1 1 0.50 psubd %mm0, %mm2 |
| 247 | # CHECK-NEXT: 2 6 0.50 * psubd (%rax), %mm2 |
| 248 | # CHECK-NEXT: 1 1 0.50 psubsb %mm0, %mm2 |
| 249 | # CHECK-NEXT: 2 6 0.50 * psubsb (%rax), %mm2 |
| 250 | # CHECK-NEXT: 1 1 0.50 psubsw %mm0, %mm2 |
| 251 | # CHECK-NEXT: 2 6 0.50 * psubsw (%rax), %mm2 |
| 252 | # CHECK-NEXT: 1 1 0.50 psubusb %mm0, %mm2 |
| 253 | # CHECK-NEXT: 2 6 0.50 * psubusb (%rax), %mm2 |
| 254 | # CHECK-NEXT: 1 1 0.50 psubusw %mm0, %mm2 |
| 255 | # CHECK-NEXT: 2 6 0.50 * psubusw (%rax), %mm2 |
| 256 | # CHECK-NEXT: 1 1 0.50 psubw %mm0, %mm2 |
| 257 | # CHECK-NEXT: 2 6 0.50 * psubw (%rax), %mm2 |
| 258 | # CHECK-NEXT: 1 1 1.00 punpckhbw %mm0, %mm2 |
| 259 | # CHECK-NEXT: 2 6 1.00 * punpckhbw (%rax), %mm2 |
| 260 | # CHECK-NEXT: 1 1 1.00 punpckhdq %mm0, %mm2 |
| 261 | # CHECK-NEXT: 2 6 1.00 * punpckhdq (%rax), %mm2 |
| 262 | # CHECK-NEXT: 1 1 1.00 punpckhwd %mm0, %mm2 |
| 263 | # CHECK-NEXT: 2 6 1.00 * punpckhwd (%rax), %mm2 |
| 264 | # CHECK-NEXT: 1 1 1.00 punpcklbw %mm0, %mm2 |
| 265 | # CHECK-NEXT: 2 6 1.00 * punpcklbw (%rax), %mm2 |
| 266 | # CHECK-NEXT: 1 1 1.00 punpckldq %mm0, %mm2 |
| 267 | # CHECK-NEXT: 2 6 1.00 * punpckldq (%rax), %mm2 |
| 268 | # CHECK-NEXT: 1 1 1.00 punpcklwd %mm0, %mm2 |
| 269 | # CHECK-NEXT: 2 6 1.00 * punpcklwd (%rax), %mm2 |
| 270 | # CHECK-NEXT: 1 1 0.33 pxor %mm0, %mm2 |
| 271 | # CHECK-NEXT: 2 6 0.50 * pxor (%rax), %mm2 |
| Simon Pilgrim | 26178d4 | 2018-04-21 11:28:59 +0000 | [diff] [blame] | 272 | |
| 273 | # CHECK: Resources: |
| Andrea Di Biagio | 45ccdd1 | 2018-05-16 10:12:06 +0000 | [diff] [blame] | 274 | # CHECK-NEXT: [0] - HWDivider |
| 275 | # CHECK-NEXT: [1] - HWFPDivider |
| 276 | # CHECK-NEXT: [2] - HWPort0 |
| 277 | # CHECK-NEXT: [3] - HWPort1 |
| 278 | # CHECK-NEXT: [4] - HWPort2 |
| 279 | # CHECK-NEXT: [5] - HWPort3 |
| 280 | # CHECK-NEXT: [6] - HWPort4 |
| 281 | # CHECK-NEXT: [7] - HWPort5 |
| 282 | # CHECK-NEXT: [8] - HWPort6 |
| 283 | # CHECK-NEXT: [9] - HWPort7 |
| Simon Pilgrim | 26178d4 | 2018-04-21 11:28:59 +0000 | [diff] [blame] | 284 | |
| 285 | # CHECK: Resource pressure per iteration: |
| 286 | # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] |
| 287 | # CHECK-NEXT: - - 46.67 35.17 23.67 23.67 2.00 57.17 1.00 0.67 |
| 288 | |
| 289 | # CHECK: Resource pressure by instruction: |
| Andrea Di Biagio | 45ccdd1 | 2018-05-16 10:12:06 +0000 | [diff] [blame] | 290 | # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: |
| 291 | # CHECK-NEXT: - - 11.25 11.75 - - - 7.75 0.25 - emms |
| 292 | # CHECK-NEXT: - - - - - - - 1.00 - - movd %eax, %mm2 |
| 293 | # CHECK-NEXT: - - - - 0.50 0.50 - - - - movd (%rax), %mm2 |
| 294 | # CHECK-NEXT: - - 1.00 - - - - - - - movd %mm0, %ecx |
| 295 | # CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 movd %mm0, (%rax) |
| 296 | # CHECK-NEXT: - - - - - - - 1.00 - - movq %rax, %mm2 |
| 297 | # CHECK-NEXT: - - - - 0.50 0.50 - - - - movq (%rax), %mm2 |
| 298 | # CHECK-NEXT: - - 1.00 - - - - - - - movq %mm0, %rcx |
| 299 | # CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 movq %mm0, (%rax) |
| 300 | # CHECK-NEXT: - - 0.25 0.25 - - - 2.25 0.25 - packsswb %mm0, %mm2 |
| 301 | # CHECK-NEXT: - - - - 0.50 0.50 - 2.00 - - packsswb (%rax), %mm2 |
| 302 | # CHECK-NEXT: - - 0.25 0.25 - - - 2.25 0.25 - packssdw %mm0, %mm2 |
| 303 | # CHECK-NEXT: - - - - 0.50 0.50 - 2.00 - - packssdw (%rax), %mm2 |
| 304 | # CHECK-NEXT: - - 0.25 0.25 - - - 2.25 0.25 - packuswb %mm0, %mm2 |
| 305 | # CHECK-NEXT: - - - - 0.50 0.50 - 2.00 - - packuswb (%rax), %mm2 |
| 306 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - paddb %mm0, %mm2 |
| 307 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - paddb (%rax), %mm2 |
| 308 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - paddd %mm0, %mm2 |
| 309 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - paddd (%rax), %mm2 |
| 310 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - paddsb %mm0, %mm2 |
| 311 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - paddsb (%rax), %mm2 |
| 312 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - paddsw %mm0, %mm2 |
| 313 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - paddsw (%rax), %mm2 |
| 314 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - paddusb %mm0, %mm2 |
| 315 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - paddusb (%rax), %mm2 |
| 316 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - paddusw %mm0, %mm2 |
| 317 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - paddusw (%rax), %mm2 |
| 318 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - paddw %mm0, %mm2 |
| 319 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - paddw (%rax), %mm2 |
| 320 | # CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - pand %mm0, %mm2 |
| 321 | # CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - pand (%rax), %mm2 |
| 322 | # CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - pandn %mm0, %mm2 |
| 323 | # CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - pandn (%rax), %mm2 |
| 324 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pcmpeqb %mm0, %mm2 |
| 325 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pcmpeqb (%rax), %mm2 |
| 326 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pcmpeqd %mm0, %mm2 |
| 327 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pcmpeqd (%rax), %mm2 |
| 328 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pcmpeqw %mm0, %mm2 |
| 329 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pcmpeqw (%rax), %mm2 |
| 330 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pcmpgtb %mm0, %mm2 |
| 331 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pcmpgtb (%rax), %mm2 |
| 332 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pcmpgtd %mm0, %mm2 |
| 333 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pcmpgtd (%rax), %mm2 |
| 334 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pcmpgtw %mm0, %mm2 |
| 335 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pcmpgtw (%rax), %mm2 |
| 336 | # CHECK-NEXT: - - 1.00 - - - - - - - pmaddwd %mm0, %mm2 |
| 337 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - pmaddwd (%rax), %mm2 |
| 338 | # CHECK-NEXT: - - 1.00 - - - - - - - pmulhw %mm0, %mm2 |
| 339 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - pmulhw (%rax), %mm2 |
| 340 | # CHECK-NEXT: - - 1.00 - - - - - - - pmullw %mm0, %mm2 |
| 341 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - pmullw (%rax), %mm2 |
| 342 | # CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - por %mm0, %mm2 |
| 343 | # CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - por (%rax), %mm2 |
| 344 | # CHECK-NEXT: - - 1.00 - - - - - - - pslld $1, %mm2 |
| 345 | # CHECK-NEXT: - - 1.00 - - - - - - - pslld %mm0, %mm2 |
| 346 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - pslld (%rax), %mm2 |
| 347 | # CHECK-NEXT: - - 1.00 - - - - - - - psllq $1, %mm2 |
| 348 | # CHECK-NEXT: - - 1.00 - - - - - - - psllq %mm0, %mm2 |
| 349 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - psllq (%rax), %mm2 |
| 350 | # CHECK-NEXT: - - 1.00 - - - - - - - psllw $1, %mm2 |
| 351 | # CHECK-NEXT: - - 1.00 - - - - - - - psllw %mm0, %mm2 |
| 352 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - psllw (%rax), %mm2 |
| 353 | # CHECK-NEXT: - - 1.00 - - - - - - - psrad $1, %mm2 |
| 354 | # CHECK-NEXT: - - 1.00 - - - - - - - psrad %mm0, %mm2 |
| 355 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - psrad (%rax), %mm2 |
| 356 | # CHECK-NEXT: - - 1.00 - - - - - - - psraw $1, %mm2 |
| 357 | # CHECK-NEXT: - - 1.00 - - - - - - - psraw %mm0, %mm2 |
| 358 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - psraw (%rax), %mm2 |
| 359 | # CHECK-NEXT: - - 1.00 - - - - - - - psrld $1, %mm2 |
| 360 | # CHECK-NEXT: - - 1.00 - - - - - - - psrld %mm0, %mm2 |
| 361 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - psrld (%rax), %mm2 |
| 362 | # CHECK-NEXT: - - 1.00 - - - - - - - psrlq $1, %mm2 |
| 363 | # CHECK-NEXT: - - 1.00 - - - - - - - psrlq %mm0, %mm2 |
| 364 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - psrlq (%rax), %mm2 |
| 365 | # CHECK-NEXT: - - 1.00 - - - - - - - psrlw $1, %mm2 |
| 366 | # CHECK-NEXT: - - 1.00 - - - - - - - psrlw %mm0, %mm2 |
| 367 | # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - psrlw (%rax), %mm2 |
| 368 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - psubb %mm0, %mm2 |
| 369 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - psubb (%rax), %mm2 |
| 370 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - psubd %mm0, %mm2 |
| 371 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - psubd (%rax), %mm2 |
| 372 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - psubsb %mm0, %mm2 |
| 373 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - psubsb (%rax), %mm2 |
| 374 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - psubsw %mm0, %mm2 |
| 375 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - psubsw (%rax), %mm2 |
| 376 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - psubusb %mm0, %mm2 |
| 377 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - psubusb (%rax), %mm2 |
| 378 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - psubusw %mm0, %mm2 |
| 379 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - psubusw (%rax), %mm2 |
| 380 | # CHECK-NEXT: - - - 0.50 - - - 0.50 - - psubw %mm0, %mm2 |
| 381 | # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - psubw (%rax), %mm2 |
| 382 | # CHECK-NEXT: - - - - - - - 1.00 - - punpckhbw %mm0, %mm2 |
| 383 | # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - punpckhbw (%rax), %mm2 |
| 384 | # CHECK-NEXT: - - - - - - - 1.00 - - punpckhdq %mm0, %mm2 |
| 385 | # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - punpckhdq (%rax), %mm2 |
| 386 | # CHECK-NEXT: - - - - - - - 1.00 - - punpckhwd %mm0, %mm2 |
| 387 | # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - punpckhwd (%rax), %mm2 |
| 388 | # CHECK-NEXT: - - - - - - - 1.00 - - punpcklbw %mm0, %mm2 |
| 389 | # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - punpcklbw (%rax), %mm2 |
| 390 | # CHECK-NEXT: - - - - - - - 1.00 - - punpckldq %mm0, %mm2 |
| 391 | # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - punpckldq (%rax), %mm2 |
| 392 | # CHECK-NEXT: - - - - - - - 1.00 - - punpcklwd %mm0, %mm2 |
| 393 | # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - punpcklwd (%rax), %mm2 |
| 394 | # CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - pxor %mm0, %mm2 |
| 395 | # CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - pxor (%rax), %mm2 |