1 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py 2 # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=atom -instruction-tables < %s | FileCheck %s 3 4 addpd %xmm0, %xmm2 5 addpd (%rax), %xmm2 6 7 addsd %xmm0, %xmm2 8 addsd (%rax), %xmm2 9 10 andnpd %xmm0, %xmm2 11 andnpd (%rax), %xmm2 12 13 andpd %xmm0, %xmm2 14 andpd (%rax), %xmm2 15 16 clflush (%rax) 17 18 cmppd $0, %xmm0, %xmm2 19 cmppd $0, (%rax), %xmm2 20 21 cmpsd $0, %xmm0, %xmm2 22 cmpsd $0, (%rax), %xmm2 23 24 comisd %xmm0, %xmm1 25 comisd (%rax), %xmm1 26 27 cvtdq2pd %xmm0, %xmm2 28 cvtdq2pd (%rax), %xmm2 29 30 cvtdq2ps %xmm0, %xmm2 31 cvtdq2ps (%rax), %xmm2 32 33 cvtpd2dq %xmm0, %xmm2 34 cvtpd2dq (%rax), %xmm2 35 36 cvtpd2pi %xmm0, %mm2 37 cvtpd2pi (%rax), %mm2 38 39 cvtpd2ps %xmm0, %xmm2 40 cvtpd2ps (%rax), %xmm2 41 42 cvtpi2pd %mm0, %xmm2 43 cvtpi2pd (%rax), %xmm2 44 45 cvtps2dq %xmm0, %xmm2 46 cvtps2dq (%rax), %xmm2 47 48 cvtps2pd %xmm0, %xmm2 49 cvtps2pd (%rax), %xmm2 50 51 cvtsd2si %xmm0, %ecx 52 cvtsd2si %xmm0, %rcx 53 cvtsd2si (%rax), %ecx 54 cvtsd2si (%rax), %rcx 55 56 cvtsd2ss %xmm0, %xmm2 57 cvtsd2ss (%rax), %xmm2 58 59 cvtsi2sd %ecx, %xmm2 60 cvtsi2sd %rcx, %xmm2 61 cvtsi2sd (%rax), %xmm2 62 cvtsi2sd (%rax), %xmm2 63 64 cvtss2sd %xmm0, %xmm2 65 cvtss2sd (%rax), %xmm2 66 67 cvttpd2dq %xmm0, %xmm2 68 cvttpd2dq (%rax), %xmm2 69 70 cvttpd2pi %xmm0, %mm2 71 cvttpd2pi (%rax), %mm2 72 73 cvttps2dq %xmm0, %xmm2 74 cvttps2dq (%rax), %xmm2 75 76 cvttsd2si %xmm0, %ecx 77 cvttsd2si %xmm0, %rcx 78 cvttsd2si (%rax), %ecx 79 cvttsd2si (%rax), %rcx 80 81 divpd %xmm0, %xmm2 82 divpd (%rax), %xmm2 83 84 divsd %xmm0, %xmm2 85 divsd (%rax), %xmm2 86 87 lfence 88 89 maskmovdqu %xmm0, %xmm1 90 91 maxpd %xmm0, %xmm2 92 maxpd (%rax), %xmm2 93 94 maxsd %xmm0, %xmm2 95 maxsd (%rax), %xmm2 96 97 minpd %xmm0, %xmm2 98 minpd (%rax), %xmm2 99 100 minsd %xmm0, %xmm2 101 minsd (%rax), %xmm2 102 103 movapd %xmm0, %xmm2 104 movapd %xmm0, (%rax) 105 movapd (%rax), %xmm2 106 107 movd %eax, %xmm2 108 movd (%rax), %xmm2 109 110 movd %xmm0, %ecx 111 movd %xmm0, (%rax) 112 113 movdqa %xmm0, %xmm2 114 movdqa %xmm0, (%rax) 115 movdqa (%rax), %xmm2 116 117 movdqu %xmm0, %xmm2 118 movdqu %xmm0, (%rax) 119 movdqu (%rax), %xmm2 120 121 movdq2q %xmm0, %mm2 122 123 movhpd %xmm0, (%rax) 124 movhpd (%rax), %xmm2 125 126 movlpd %xmm0, (%rax) 127 movlpd (%rax), %xmm2 128 129 movmskpd %xmm0, %rcx 130 131 movntil %eax, (%rax) 132 movntiq %rax, (%rax) 133 134 movntdq %xmm0, (%rax) 135 movntpd %xmm0, (%rax) 136 137 movq %xmm0, %xmm2 138 139 movq %rax, %xmm2 140 movq (%rax), %xmm2 141 142 movq %xmm0, %rcx 143 movq %xmm0, (%rax) 144 145 movq2dq %mm0, %xmm2 146 147 movsd %xmm0, %xmm2 148 movsd %xmm0, (%rax) 149 movsd (%rax), %xmm2 150 151 movupd %xmm0, %xmm2 152 movupd %xmm0, (%rax) 153 movupd (%rax), %xmm2 154 155 mulpd %xmm0, %xmm2 156 mulpd (%rax), %xmm2 157 158 mulsd %xmm0, %xmm2 159 mulsd (%rax), %xmm2 160 161 orpd %xmm0, %xmm2 162 orpd (%rax), %xmm2 163 164 packssdw %xmm0, %xmm2 165 packssdw (%rax), %xmm2 166 167 packsswb %xmm0, %xmm2 168 packsswb (%rax), %xmm2 169 170 packuswb %xmm0, %xmm2 171 packuswb (%rax), %xmm2 172 173 paddb %xmm0, %xmm2 174 paddb (%rax), %xmm2 175 176 paddd %xmm0, %xmm2 177 paddd (%rax), %xmm2 178 179 paddq %mm0, %mm2 180 paddq (%rax), %mm2 181 182 paddq %xmm0, %xmm2 183 paddq (%rax), %xmm2 184 185 paddsb %xmm0, %xmm2 186 paddsb (%rax), %xmm2 187 188 paddsw %xmm0, %xmm2 189 paddsw (%rax), %xmm2 190 191 paddusb %xmm0, %xmm2 192 paddusb (%rax), %xmm2 193 194 paddusw %xmm0, %xmm2 195 paddusw (%rax), %xmm2 196 197 paddw %xmm0, %xmm2 198 paddw (%rax), %xmm2 199 200 pand %xmm0, %xmm2 201 pand (%rax), %xmm2 202 203 pandn %xmm0, %xmm2 204 pandn (%rax), %xmm2 205 206 pavgb %xmm0, %xmm2 207 pavgb (%rax), %xmm2 208 209 pavgw %xmm0, %xmm2 210 pavgw (%rax), %xmm2 211 212 pcmpeqb %xmm0, %xmm2 213 pcmpeqb (%rax), %xmm2 214 215 pcmpeqd %xmm0, %xmm2 216 pcmpeqd (%rax), %xmm2 217 218 pcmpeqw %xmm0, %xmm2 219 pcmpeqw (%rax), %xmm2 220 221 pcmpgtb %xmm0, %xmm2 222 pcmpgtb (%rax), %xmm2 223 224 pcmpgtd %xmm0, %xmm2 225 pcmpgtd (%rax), %xmm2 226 227 pcmpgtw %xmm0, %xmm2 228 pcmpgtw (%rax), %xmm2 229 230 pextrw $1, %xmm0, %rcx 231 232 pmaddwd %xmm0, %xmm2 233 pmaddwd (%rax), %xmm2 234 235 pmaxsw %xmm0, %xmm2 236 pmaxsw (%rax), %xmm2 237 238 pmaxub %xmm0, %xmm2 239 pmaxub (%rax), %xmm2 240 241 pminsw %xmm0, %xmm2 242 pminsw (%rax), %xmm2 243 244 pminub %xmm0, %xmm2 245 pminub (%rax), %xmm2 246 247 pmovmskb %xmm0, %rcx 248 249 pmulhuw %xmm0, %xmm2 250 pmulhuw (%rax), %xmm2 251 252 pmulhw %xmm0, %xmm2 253 pmulhw (%rax), %xmm2 254 255 pmullw %xmm0, %xmm2 256 pmullw (%rax), %xmm2 257 258 pmuludq %mm0, %mm2 259 pmuludq (%rax), %mm2 260 261 pmuludq %xmm0, %xmm2 262 pmuludq (%rax), %xmm2 263 264 por %xmm0, %xmm2 265 por (%rax), %xmm2 266 267 psadbw %xmm0, %xmm2 268 psadbw (%rax), %xmm2 269 270 pshufd $1, %xmm0, %xmm2 271 pshufd $1, (%rax), %xmm2 272 273 pshufhw $1, %xmm0, %xmm2 274 pshufhw $1, (%rax), %xmm2 275 276 pshuflw $1, %xmm0, %xmm2 277 pshuflw $1, (%rax), %xmm2 278 279 pslld $1, %xmm2 280 pslld %xmm0, %xmm2 281 pslld (%rax), %xmm2 282 283 pslldq $1, %xmm2 284 285 psllq $1, %xmm2 286 psllq %xmm0, %xmm2 287 psllq (%rax), %xmm2 288 289 psllw $1, %xmm2 290 psllw %xmm0, %xmm2 291 psllw (%rax), %xmm2 292 293 psrad $1, %xmm2 294 psrad %xmm0, %xmm2 295 psrad (%rax), %xmm2 296 297 psraw $1, %xmm2 298 psraw %xmm0, %xmm2 299 psraw (%rax), %xmm2 300 301 psrld $1, %xmm2 302 psrld %xmm0, %xmm2 303 psrld (%rax), %xmm2 304 305 psrldq $1, %xmm2 306 307 psrlq $1, %xmm2 308 psrlq %xmm0, %xmm2 309 psrlq (%rax), %xmm2 310 311 psrlw $1, %xmm2 312 psrlw %xmm0, %xmm2 313 psrlw (%rax), %xmm2 314 315 psubb %xmm0, %xmm2 316 psubb (%rax), %xmm2 317 318 psubd %xmm0, %xmm2 319 psubd (%rax), %xmm2 320 321 psubq %mm0, %mm2 322 psubq (%rax), %mm2 323 324 psubq %xmm0, %xmm2 325 psubq (%rax), %xmm2 326 327 psubsb %xmm0, %xmm2 328 psubsb (%rax), %xmm2 329 330 psubsw %xmm0, %xmm2 331 psubsw (%rax), %xmm2 332 333 psubusb %xmm0, %xmm2 334 psubusb (%rax), %xmm2 335 336 psubusw %xmm0, %xmm2 337 psubusw (%rax), %xmm2 338 339 psubw %xmm0, %xmm2 340 psubw (%rax), %xmm2 341 342 punpckhbw %xmm0, %xmm2 343 punpckhbw (%rax), %xmm2 344 345 punpckhdq %xmm0, %xmm2 346 punpckhdq (%rax), %xmm2 347 348 punpckhqdq %xmm0, %xmm2 349 punpckhqdq (%rax), %xmm2 350 351 punpckhwd %xmm0, %xmm2 352 punpckhwd (%rax), %xmm2 353 354 punpcklbw %xmm0, %xmm2 355 punpcklbw (%rax), %xmm2 356 357 punpckldq %xmm0, %xmm2 358 punpckldq (%rax), %xmm2 359 360 punpcklqdq %xmm0, %xmm2 361 punpcklqdq (%rax), %xmm2 362 363 punpcklwd %xmm0, %xmm2 364 punpcklwd (%rax), %xmm2 365 366 pxor %xmm0, %xmm2 367 pxor (%rax), %xmm2 368 369 shufpd $1, %xmm0, %xmm2 370 shufpd $1, (%rax), %xmm2 371 372 sqrtpd %xmm0, %xmm2 373 sqrtpd (%rax), %xmm2 374 375 sqrtsd %xmm0, %xmm2 376 sqrtsd (%rax), %xmm2 377 378 subpd %xmm0, %xmm2 379 subpd (%rax), %xmm2 380 381 subsd %xmm0, %xmm2 382 subsd (%rax), %xmm2 383 384 ucomisd %xmm0, %xmm1 385 ucomisd (%rax), %xmm1 386 387 unpckhpd %xmm0, %xmm2 388 unpckhpd (%rax), %xmm2 389 390 unpcklpd %xmm0, %xmm2 391 unpcklpd (%rax), %xmm2 392 393 xorpd %xmm0, %xmm2 394 xorpd (%rax), %xmm2 395 396 # CHECK: Instruction Info: 397 # CHECK-NEXT: [1]: #uOps 398 # CHECK-NEXT: [2]: Latency 399 # CHECK-NEXT: [3]: RThroughput 400 # CHECK-NEXT: [4]: MayLoad 401 # CHECK-NEXT: [5]: MayStore 402 # CHECK-NEXT: [6]: HasSideEffects (U) 403 404 # CHECK: [1] [2] [3] [4] [5] [6] Instructions: 405 # CHECK-NEXT: 1 6 3.00 addpd %xmm0, %xmm2 406 # CHECK-NEXT: 1 7 3.50 * addpd (%rax), %xmm2 407 # CHECK-NEXT: 1 5 5.00 addsd %xmm0, %xmm2 408 # CHECK-NEXT: 1 5 5.00 * addsd (%rax), %xmm2 409 # CHECK-NEXT: 1 1 0.50 andnpd %xmm0, %xmm2 410 # CHECK-NEXT: 1 1 1.00 * andnpd (%rax), %xmm2 411 # CHECK-NEXT: 1 1 0.50 andpd %xmm0, %xmm2 412 # CHECK-NEXT: 1 1 1.00 * andpd (%rax), %xmm2 413 # CHECK-NEXT: 1 1 1.00 * * U clflush (%rax) 414 # CHECK-NEXT: 1 6 3.00 cmppd $0, %xmm0, %xmm2 415 # CHECK-NEXT: 1 7 3.50 * cmppd $0, (%rax), %xmm2 416 # CHECK-NEXT: 1 5 5.00 cmpsd $0, %xmm0, %xmm2 417 # CHECK-NEXT: 1 5 5.00 * cmpsd $0, (%rax), %xmm2 418 # CHECK-NEXT: 1 9 4.50 comisd %xmm0, %xmm1 419 # CHECK-NEXT: 1 10 5.00 * comisd (%rax), %xmm1 420 # CHECK-NEXT: 1 7 3.50 cvtdq2pd %xmm0, %xmm2 421 # CHECK-NEXT: 1 8 4.00 * cvtdq2pd (%rax), %xmm2 422 # CHECK-NEXT: 1 6 3.00 cvtdq2ps %xmm0, %xmm2 423 # CHECK-NEXT: 1 7 3.50 * cvtdq2ps (%rax), %xmm2 424 # CHECK-NEXT: 1 7 3.50 cvtpd2dq %xmm0, %xmm2 425 # CHECK-NEXT: 1 8 4.00 * cvtpd2dq (%rax), %xmm2 426 # CHECK-NEXT: 1 7 3.50 cvtpd2pi %xmm0, %mm2 427 # CHECK-NEXT: 1 8 4.00 * cvtpd2pi (%rax), %mm2 428 # CHECK-NEXT: 1 7 3.50 cvtpd2ps %xmm0, %xmm2 429 # CHECK-NEXT: 1 8 4.00 * cvtpd2ps (%rax), %xmm2 430 # CHECK-NEXT: 1 7 3.50 cvtpi2pd %mm0, %xmm2 431 # CHECK-NEXT: 1 8 4.00 * cvtpi2pd (%rax), %xmm2 432 # CHECK-NEXT: 1 6 3.00 cvtps2dq %xmm0, %xmm2 433 # CHECK-NEXT: 1 7 3.50 * cvtps2dq (%rax), %xmm2 434 # CHECK-NEXT: 1 7 3.50 cvtps2pd %xmm0, %xmm2 435 # CHECK-NEXT: 1 8 4.00 * cvtps2pd (%rax), %xmm2 436 # CHECK-NEXT: 1 8 4.00 cvtsd2si %xmm0, %ecx 437 # CHECK-NEXT: 1 8 4.00 cvtsd2si %xmm0, %rcx 438 # CHECK-NEXT: 1 9 4.50 * cvtsd2si (%rax), %ecx 439 # CHECK-NEXT: 1 9 4.50 * cvtsd2si (%rax), %rcx 440 # CHECK-NEXT: 1 6 3.00 cvtsd2ss %xmm0, %xmm2 441 # CHECK-NEXT: 1 7 3.50 * cvtsd2ss (%rax), %xmm2 442 # CHECK-NEXT: 1 6 3.00 cvtsi2sdl %ecx, %xmm2 443 # CHECK-NEXT: 1 6 3.00 cvtsi2sdq %rcx, %xmm2 444 # CHECK-NEXT: 1 7 3.50 * cvtsi2sdl (%rax), %xmm2 445 # CHECK-NEXT: 1 7 3.50 * cvtsi2sdl (%rax), %xmm2 446 # CHECK-NEXT: 1 6 3.00 cvtss2sd %xmm0, %xmm2 447 # CHECK-NEXT: 1 7 3.50 * cvtss2sd (%rax), %xmm2 448 # CHECK-NEXT: 1 7 3.50 cvttpd2dq %xmm0, %xmm2 449 # CHECK-NEXT: 1 8 4.00 * cvttpd2dq (%rax), %xmm2 450 # CHECK-NEXT: 1 7 3.50 cvttpd2pi %xmm0, %mm2 451 # CHECK-NEXT: 1 8 4.00 * cvttpd2pi (%rax), %mm2 452 # CHECK-NEXT: 1 6 3.00 cvttps2dq %xmm0, %xmm2 453 # CHECK-NEXT: 1 7 3.50 * cvttps2dq (%rax), %xmm2 454 # CHECK-NEXT: 1 8 4.00 cvttsd2si %xmm0, %ecx 455 # CHECK-NEXT: 1 8 4.00 cvttsd2si %xmm0, %rcx 456 # CHECK-NEXT: 1 9 4.50 * cvttsd2si (%rax), %ecx 457 # CHECK-NEXT: 1 9 4.50 * cvttsd2si (%rax), %rcx 458 # CHECK-NEXT: 1 125 62.50 divpd %xmm0, %xmm2 459 # CHECK-NEXT: 1 125 62.50 * divpd (%rax), %xmm2 460 # CHECK-NEXT: 1 62 31.00 divsd %xmm0, %xmm2 461 # CHECK-NEXT: 1 62 31.00 * divsd (%rax), %xmm2 462 # CHECK-NEXT: 1 1 0.50 * * U lfence 463 # CHECK-NEXT: 1 2 1.00 * * U maskmovdqu %xmm0, %xmm1 464 # CHECK-NEXT: 1 6 3.00 maxpd %xmm0, %xmm2 465 # CHECK-NEXT: 1 7 3.50 * maxpd (%rax), %xmm2 466 # CHECK-NEXT: 1 5 5.00 maxsd %xmm0, %xmm2 467 # CHECK-NEXT: 1 5 5.00 * maxsd (%rax), %xmm2 468 # CHECK-NEXT: 1 6 3.00 minpd %xmm0, %xmm2 469 # CHECK-NEXT: 1 7 3.50 * minpd (%rax), %xmm2 470 # CHECK-NEXT: 1 5 5.00 minsd %xmm0, %xmm2 471 # CHECK-NEXT: 1 5 5.00 * minsd (%rax), %xmm2 472 # CHECK-NEXT: 1 1 0.50 movapd %xmm0, %xmm2 473 # CHECK-NEXT: 1 1 1.00 * movapd %xmm0, (%rax) 474 # CHECK-NEXT: 1 1 1.00 * movapd (%rax), %xmm2 475 # CHECK-NEXT: 1 1 1.00 movd %eax, %xmm2 476 # CHECK-NEXT: 1 1 1.00 * movd (%rax), %xmm2 477 # CHECK-NEXT: 1 3 3.00 movd %xmm0, %ecx 478 # CHECK-NEXT: 1 1 1.00 * movd %xmm0, (%rax) 479 # CHECK-NEXT: 1 1 0.50 movdqa %xmm0, %xmm2 480 # CHECK-NEXT: 1 1 1.00 * movdqa %xmm0, (%rax) 481 # CHECK-NEXT: 1 1 1.00 * movdqa (%rax), %xmm2 482 # CHECK-NEXT: 1 1 0.50 movdqu %xmm0, %xmm2 483 # CHECK-NEXT: 1 2 1.00 * movdqu %xmm0, (%rax) 484 # CHECK-NEXT: 1 3 1.50 * movdqu (%rax), %xmm2 485 # CHECK-NEXT: 1 1 0.50 movdq2q %xmm0, %mm2 486 # CHECK-NEXT: 1 1 1.00 * movhpd %xmm0, (%rax) 487 # CHECK-NEXT: 1 1 1.00 * movhpd (%rax), %xmm2 488 # CHECK-NEXT: 1 1 1.00 * movlpd %xmm0, (%rax) 489 # CHECK-NEXT: 1 1 1.00 * movlpd (%rax), %xmm2 490 # CHECK-NEXT: 1 3 3.00 movmskpd %xmm0, %ecx 491 # CHECK-NEXT: 1 1 1.00 * movntil %eax, (%rax) 492 # CHECK-NEXT: 1 1 1.00 * movntiq %rax, (%rax) 493 # CHECK-NEXT: 1 1 1.00 * movntdq %xmm0, (%rax) 494 # CHECK-NEXT: 1 1 1.00 * movntpd %xmm0, (%rax) 495 # CHECK-NEXT: 1 1 0.50 movq %xmm0, %xmm2 496 # CHECK-NEXT: 1 1 1.00 movq %rax, %xmm2 497 # CHECK-NEXT: 1 1 1.00 * movq (%rax), %xmm2 498 # CHECK-NEXT: 1 3 3.00 movq %xmm0, %rcx 499 # CHECK-NEXT: 1 1 1.00 * movq %xmm0, (%rax) 500 # CHECK-NEXT: 1 1 0.50 movq2dq %mm0, %xmm2 501 # CHECK-NEXT: 1 1 1.00 movsd %xmm0, %xmm2 502 # CHECK-NEXT: 1 1 1.00 * movsd %xmm0, (%rax) 503 # CHECK-NEXT: 1 1 1.00 * movsd (%rax), %xmm2 504 # CHECK-NEXT: 1 1 0.50 movupd %xmm0, %xmm2 505 # CHECK-NEXT: 1 2 1.00 * movupd %xmm0, (%rax) 506 # CHECK-NEXT: 1 3 1.50 * movupd (%rax), %xmm2 507 # CHECK-NEXT: 1 9 4.50 mulpd %xmm0, %xmm2 508 # CHECK-NEXT: 1 10 5.00 * mulpd (%rax), %xmm2 509 # CHECK-NEXT: 1 5 5.00 mulsd %xmm0, %xmm2 510 # CHECK-NEXT: 1 5 5.00 * mulsd (%rax), %xmm2 511 # CHECK-NEXT: 1 1 0.50 orpd %xmm0, %xmm2 512 # CHECK-NEXT: 1 1 1.00 * orpd (%rax), %xmm2 513 # CHECK-NEXT: 1 1 1.00 packssdw %xmm0, %xmm2 514 # CHECK-NEXT: 1 1 1.00 * packssdw (%rax), %xmm2 515 # CHECK-NEXT: 1 1 1.00 packsswb %xmm0, %xmm2 516 # CHECK-NEXT: 1 1 1.00 * packsswb (%rax), %xmm2 517 # CHECK-NEXT: 1 1 1.00 packuswb %xmm0, %xmm2 518 # CHECK-NEXT: 1 1 1.00 * packuswb (%rax), %xmm2 519 # CHECK-NEXT: 1 1 0.50 paddb %xmm0, %xmm2 520 # CHECK-NEXT: 1 1 1.00 * paddb (%rax), %xmm2 521 # CHECK-NEXT: 1 1 0.50 paddd %xmm0, %xmm2 522 # CHECK-NEXT: 1 1 1.00 * paddd (%rax), %xmm2 523 # CHECK-NEXT: 1 2 1.00 paddq %mm0, %mm2 524 # CHECK-NEXT: 1 3 1.50 * paddq (%rax), %mm2 525 # CHECK-NEXT: 1 2 1.00 paddq %xmm0, %xmm2 526 # CHECK-NEXT: 1 3 1.50 * paddq (%rax), %xmm2 527 # CHECK-NEXT: 1 1 0.50 paddsb %xmm0, %xmm2 528 # CHECK-NEXT: 1 1 1.00 * paddsb (%rax), %xmm2 529 # CHECK-NEXT: 1 1 0.50 paddsw %xmm0, %xmm2 530 # CHECK-NEXT: 1 1 1.00 * paddsw (%rax), %xmm2 531 # CHECK-NEXT: 1 1 0.50 paddusb %xmm0, %xmm2 532 # CHECK-NEXT: 1 1 1.00 * paddusb (%rax), %xmm2 533 # CHECK-NEXT: 1 1 0.50 paddusw %xmm0, %xmm2 534 # CHECK-NEXT: 1 1 1.00 * paddusw (%rax), %xmm2 535 # CHECK-NEXT: 1 1 0.50 paddw %xmm0, %xmm2 536 # CHECK-NEXT: 1 1 1.00 * paddw (%rax), %xmm2 537 # CHECK-NEXT: 1 1 0.50 pand %xmm0, %xmm2 538 # CHECK-NEXT: 1 1 1.00 * pand (%rax), %xmm2 539 # CHECK-NEXT: 1 1 0.50 pandn %xmm0, %xmm2 540 # CHECK-NEXT: 1 1 1.00 * pandn (%rax), %xmm2 541 # CHECK-NEXT: 1 1 0.50 pavgb %xmm0, %xmm2 542 # CHECK-NEXT: 1 1 1.00 * pavgb (%rax), %xmm2 543 # CHECK-NEXT: 1 1 0.50 pavgw %xmm0, %xmm2 544 # CHECK-NEXT: 1 1 1.00 * pavgw (%rax), %xmm2 545 # CHECK-NEXT: 1 1 0.50 pcmpeqb %xmm0, %xmm2 546 # CHECK-NEXT: 1 1 1.00 * pcmpeqb (%rax), %xmm2 547 # CHECK-NEXT: 1 1 0.50 pcmpeqd %xmm0, %xmm2 548 # CHECK-NEXT: 1 1 1.00 * pcmpeqd (%rax), %xmm2 549 # CHECK-NEXT: 1 1 0.50 pcmpeqw %xmm0, %xmm2 550 # CHECK-NEXT: 1 1 1.00 * pcmpeqw (%rax), %xmm2 551 # CHECK-NEXT: 1 1 0.50 pcmpgtb %xmm0, %xmm2 552 # CHECK-NEXT: 1 1 1.00 * pcmpgtb (%rax), %xmm2 553 # CHECK-NEXT: 1 1 0.50 pcmpgtd %xmm0, %xmm2 554 # CHECK-NEXT: 1 1 1.00 * pcmpgtd (%rax), %xmm2 555 # CHECK-NEXT: 1 1 0.50 pcmpgtw %xmm0, %xmm2 556 # CHECK-NEXT: 1 1 1.00 * pcmpgtw (%rax), %xmm2 557 # CHECK-NEXT: 1 4 2.00 pextrw $1, %xmm0, %ecx 558 # CHECK-NEXT: 1 5 5.00 pmaddwd %xmm0, %xmm2 559 # CHECK-NEXT: 1 5 5.00 * pmaddwd (%rax), %xmm2 560 # CHECK-NEXT: 1 1 0.50 pmaxsw %xmm0, %xmm2 561 # CHECK-NEXT: 1 1 1.00 * pmaxsw (%rax), %xmm2 562 # CHECK-NEXT: 1 1 0.50 pmaxub %xmm0, %xmm2 563 # CHECK-NEXT: 1 1 1.00 * pmaxub (%rax), %xmm2 564 # CHECK-NEXT: 1 1 0.50 pminsw %xmm0, %xmm2 565 # CHECK-NEXT: 1 1 1.00 * pminsw (%rax), %xmm2 566 # CHECK-NEXT: 1 1 0.50 pminub %xmm0, %xmm2 567 # CHECK-NEXT: 1 1 1.00 * pminub (%rax), %xmm2 568 # CHECK-NEXT: 1 3 3.00 pmovmskb %xmm0, %ecx 569 # CHECK-NEXT: 1 5 5.00 pmulhuw %xmm0, %xmm2 570 # CHECK-NEXT: 1 5 5.00 * pmulhuw (%rax), %xmm2 571 # CHECK-NEXT: 1 5 5.00 pmulhw %xmm0, %xmm2 572 # CHECK-NEXT: 1 5 5.00 * pmulhw (%rax), %xmm2 573 # CHECK-NEXT: 1 5 5.00 pmullw %xmm0, %xmm2 574 # CHECK-NEXT: 1 5 5.00 * pmullw (%rax), %xmm2 575 # CHECK-NEXT: 1 4 4.00 pmuludq %mm0, %mm2 576 # CHECK-NEXT: 1 4 4.00 * pmuludq (%rax), %mm2 577 # CHECK-NEXT: 1 5 5.00 pmuludq %xmm0, %xmm2 578 # CHECK-NEXT: 1 5 5.00 * pmuludq (%rax), %xmm2 579 # CHECK-NEXT: 1 1 0.50 por %xmm0, %xmm2 580 # CHECK-NEXT: 1 1 1.00 * por (%rax), %xmm2 581 # CHECK-NEXT: 1 5 5.00 psadbw %xmm0, %xmm2 582 # CHECK-NEXT: 1 5 5.00 * psadbw (%rax), %xmm2 583 # CHECK-NEXT: 1 1 1.00 pshufd $1, %xmm0, %xmm2 584 # CHECK-NEXT: 1 1 1.00 * pshufd $1, (%rax), %xmm2 585 # CHECK-NEXT: 1 1 1.00 pshufhw $1, %xmm0, %xmm2 586 # CHECK-NEXT: 1 1 1.00 * pshufhw $1, (%rax), %xmm2 587 # CHECK-NEXT: 1 1 1.00 pshuflw $1, %xmm0, %xmm2 588 # CHECK-NEXT: 1 1 1.00 * pshuflw $1, (%rax), %xmm2 589 # CHECK-NEXT: 1 1 0.50 pslld $1, %xmm2 590 # CHECK-NEXT: 1 2 1.00 pslld %xmm0, %xmm2 591 # CHECK-NEXT: 1 3 1.50 * pslld (%rax), %xmm2 592 # CHECK-NEXT: 1 1 0.50 pslldq $1, %xmm2 593 # CHECK-NEXT: 1 1 0.50 psllq $1, %xmm2 594 # CHECK-NEXT: 1 2 1.00 psllq %xmm0, %xmm2 595 # CHECK-NEXT: 1 3 1.50 * psllq (%rax), %xmm2 596 # CHECK-NEXT: 1 1 0.50 psllw $1, %xmm2 597 # CHECK-NEXT: 1 2 1.00 psllw %xmm0, %xmm2 598 # CHECK-NEXT: 1 3 1.50 * psllw (%rax), %xmm2 599 # CHECK-NEXT: 1 1 0.50 psrad $1, %xmm2 600 # CHECK-NEXT: 1 2 1.00 psrad %xmm0, %xmm2 601 # CHECK-NEXT: 1 3 1.50 * psrad (%rax), %xmm2 602 # CHECK-NEXT: 1 1 0.50 psraw $1, %xmm2 603 # CHECK-NEXT: 1 2 1.00 psraw %xmm0, %xmm2 604 # CHECK-NEXT: 1 3 1.50 * psraw (%rax), %xmm2 605 # CHECK-NEXT: 1 1 0.50 psrld $1, %xmm2 606 # CHECK-NEXT: 1 2 1.00 psrld %xmm0, %xmm2 607 # CHECK-NEXT: 1 3 1.50 * psrld (%rax), %xmm2 608 # CHECK-NEXT: 1 1 0.50 psrldq $1, %xmm2 609 # CHECK-NEXT: 1 1 0.50 psrlq $1, %xmm2 610 # CHECK-NEXT: 1 2 1.00 psrlq %xmm0, %xmm2 611 # CHECK-NEXT: 1 3 1.50 * psrlq (%rax), %xmm2 612 # CHECK-NEXT: 1 1 0.50 psrlw $1, %xmm2 613 # CHECK-NEXT: 1 2 1.00 psrlw %xmm0, %xmm2 614 # CHECK-NEXT: 1 3 1.50 * psrlw (%rax), %xmm2 615 # CHECK-NEXT: 1 1 0.50 psubb %xmm0, %xmm2 616 # CHECK-NEXT: 1 1 1.00 * psubb (%rax), %xmm2 617 # CHECK-NEXT: 1 1 0.50 psubd %xmm0, %xmm2 618 # CHECK-NEXT: 1 1 1.00 * psubd (%rax), %xmm2 619 # CHECK-NEXT: 1 2 1.00 psubq %mm0, %mm2 620 # CHECK-NEXT: 1 3 1.50 * psubq (%rax), %mm2 621 # CHECK-NEXT: 1 2 1.00 psubq %xmm0, %xmm2 622 # CHECK-NEXT: 1 3 1.50 * psubq (%rax), %xmm2 623 # CHECK-NEXT: 1 1 0.50 psubsb %xmm0, %xmm2 624 # CHECK-NEXT: 1 1 1.00 * psubsb (%rax), %xmm2 625 # CHECK-NEXT: 1 1 0.50 psubsw %xmm0, %xmm2 626 # CHECK-NEXT: 1 1 1.00 * psubsw (%rax), %xmm2 627 # CHECK-NEXT: 1 1 0.50 psubusb %xmm0, %xmm2 628 # CHECK-NEXT: 1 1 1.00 * psubusb (%rax), %xmm2 629 # CHECK-NEXT: 1 1 0.50 psubusw %xmm0, %xmm2 630 # CHECK-NEXT: 1 1 1.00 * psubusw (%rax), %xmm2 631 # CHECK-NEXT: 1 1 0.50 psubw %xmm0, %xmm2 632 # CHECK-NEXT: 1 1 1.00 * psubw (%rax), %xmm2 633 # CHECK-NEXT: 1 1 1.00 punpckhbw %xmm0, %xmm2 634 # CHECK-NEXT: 1 1 1.00 * punpckhbw (%rax), %xmm2 635 # CHECK-NEXT: 1 1 1.00 punpckhdq %xmm0, %xmm2 636 # CHECK-NEXT: 1 1 1.00 * punpckhdq (%rax), %xmm2 637 # CHECK-NEXT: 1 1 1.00 punpckhqdq %xmm0, %xmm2 638 # CHECK-NEXT: 1 1 1.00 * punpckhqdq (%rax), %xmm2 639 # CHECK-NEXT: 1 1 1.00 punpckhwd %xmm0, %xmm2 640 # CHECK-NEXT: 1 1 1.00 * punpckhwd (%rax), %xmm2 641 # CHECK-NEXT: 1 1 1.00 punpcklbw %xmm0, %xmm2 642 # CHECK-NEXT: 1 1 1.00 * punpcklbw (%rax), %xmm2 643 # CHECK-NEXT: 1 1 1.00 punpckldq %xmm0, %xmm2 644 # CHECK-NEXT: 1 1 1.00 * punpckldq (%rax), %xmm2 645 # CHECK-NEXT: 1 1 1.00 punpcklqdq %xmm0, %xmm2 646 # CHECK-NEXT: 1 1 1.00 * punpcklqdq (%rax), %xmm2 647 # CHECK-NEXT: 1 1 1.00 punpcklwd %xmm0, %xmm2 648 # CHECK-NEXT: 1 1 1.00 * punpcklwd (%rax), %xmm2 649 # CHECK-NEXT: 1 1 0.50 pxor %xmm0, %xmm2 650 # CHECK-NEXT: 1 1 1.00 * pxor (%rax), %xmm2 651 # CHECK-NEXT: 1 1 1.00 shufpd $1, %xmm0, %xmm2 652 # CHECK-NEXT: 1 1 1.00 * shufpd $1, (%rax), %xmm2 653 # CHECK-NEXT: 1 125 62.50 sqrtpd %xmm0, %xmm2 654 # CHECK-NEXT: 1 125 62.50 * sqrtpd (%rax), %xmm2 655 # CHECK-NEXT: 1 62 31.00 sqrtsd %xmm0, %xmm2 656 # CHECK-NEXT: 1 62 31.00 * sqrtsd (%rax), %xmm2 657 # CHECK-NEXT: 1 6 3.00 subpd %xmm0, %xmm2 658 # CHECK-NEXT: 1 7 3.50 * subpd (%rax), %xmm2 659 # CHECK-NEXT: 1 5 5.00 subsd %xmm0, %xmm2 660 # CHECK-NEXT: 1 5 5.00 * subsd (%rax), %xmm2 661 # CHECK-NEXT: 1 9 4.50 ucomisd %xmm0, %xmm1 662 # CHECK-NEXT: 1 10 5.00 * ucomisd (%rax), %xmm1 663 # CHECK-NEXT: 1 1 1.00 unpckhpd %xmm0, %xmm2 664 # CHECK-NEXT: 1 1 1.00 * unpckhpd (%rax), %xmm2 665 # CHECK-NEXT: 1 1 1.00 unpcklpd %xmm0, %xmm2 666 # CHECK-NEXT: 1 1 1.00 * unpcklpd (%rax), %xmm2 667 # CHECK-NEXT: 1 1 0.50 xorpd %xmm0, %xmm2 668 # CHECK-NEXT: 1 1 1.00 * xorpd (%rax), %xmm2 669 670 # CHECK: Resources: 671 # CHECK-NEXT: [0] - AtomPort0 672 # CHECK-NEXT: [1] - AtomPort1 673 674 # CHECK: Resource pressure per iteration: 675 # CHECK-NEXT: [0] [1] 676 # CHECK-NEXT: 868.50 638.50 677 678 # CHECK: Resource pressure by instruction: 679 # CHECK-NEXT: [0] [1] Instructions: 680 # CHECK-NEXT: 3.00 3.00 addpd %xmm0, %xmm2 681 # CHECK-NEXT: 3.50 3.50 addpd (%rax), %xmm2 682 # CHECK-NEXT: 5.00 - addsd %xmm0, %xmm2 683 # CHECK-NEXT: 5.00 - addsd (%rax), %xmm2 684 # CHECK-NEXT: 0.50 0.50 andnpd %xmm0, %xmm2 685 # CHECK-NEXT: 1.00 - andnpd (%rax), %xmm2 686 # CHECK-NEXT: 0.50 0.50 andpd %xmm0, %xmm2 687 # CHECK-NEXT: 1.00 - andpd (%rax), %xmm2 688 # CHECK-NEXT: 1.00 - clflush (%rax) 689 # CHECK-NEXT: 3.00 3.00 cmppd $0, %xmm0, %xmm2 690 # CHECK-NEXT: 3.50 3.50 cmppd $0, (%rax), %xmm2 691 # CHECK-NEXT: 5.00 - cmpsd $0, %xmm0, %xmm2 692 # CHECK-NEXT: 5.00 - cmpsd $0, (%rax), %xmm2 693 # CHECK-NEXT: 4.50 4.50 comisd %xmm0, %xmm1 694 # CHECK-NEXT: 5.00 5.00 comisd (%rax), %xmm1 695 # CHECK-NEXT: 3.50 3.50 cvtdq2pd %xmm0, %xmm2 696 # CHECK-NEXT: 4.00 4.00 cvtdq2pd (%rax), %xmm2 697 # CHECK-NEXT: 3.00 3.00 cvtdq2ps %xmm0, %xmm2 698 # CHECK-NEXT: 3.50 3.50 cvtdq2ps (%rax), %xmm2 699 # CHECK-NEXT: 3.50 3.50 cvtpd2dq %xmm0, %xmm2 700 # CHECK-NEXT: 4.00 4.00 cvtpd2dq (%rax), %xmm2 701 # CHECK-NEXT: 3.50 3.50 cvtpd2pi %xmm0, %mm2 702 # CHECK-NEXT: 4.00 4.00 cvtpd2pi (%rax), %mm2 703 # CHECK-NEXT: 3.50 3.50 cvtpd2ps %xmm0, %xmm2 704 # CHECK-NEXT: 4.00 4.00 cvtpd2ps (%rax), %xmm2 705 # CHECK-NEXT: 3.50 3.50 cvtpi2pd %mm0, %xmm2 706 # CHECK-NEXT: 4.00 4.00 cvtpi2pd (%rax), %xmm2 707 # CHECK-NEXT: 3.00 3.00 cvtps2dq %xmm0, %xmm2 708 # CHECK-NEXT: 3.50 3.50 cvtps2dq (%rax), %xmm2 709 # CHECK-NEXT: 3.50 3.50 cvtps2pd %xmm0, %xmm2 710 # CHECK-NEXT: 4.00 4.00 cvtps2pd (%rax), %xmm2 711 # CHECK-NEXT: 4.00 4.00 cvtsd2si %xmm0, %ecx 712 # CHECK-NEXT: 4.00 4.00 cvtsd2si %xmm0, %rcx 713 # CHECK-NEXT: 4.50 4.50 cvtsd2si (%rax), %ecx 714 # CHECK-NEXT: 4.50 4.50 cvtsd2si (%rax), %rcx 715 # CHECK-NEXT: 3.00 3.00 cvtsd2ss %xmm0, %xmm2 716 # CHECK-NEXT: 3.50 3.50 cvtsd2ss (%rax), %xmm2 717 # CHECK-NEXT: 3.00 3.00 cvtsi2sdl %ecx, %xmm2 718 # CHECK-NEXT: 3.00 3.00 cvtsi2sdq %rcx, %xmm2 719 # CHECK-NEXT: 3.50 3.50 cvtsi2sdl (%rax), %xmm2 720 # CHECK-NEXT: 3.50 3.50 cvtsi2sdl (%rax), %xmm2 721 # CHECK-NEXT: 3.00 3.00 cvtss2sd %xmm0, %xmm2 722 # CHECK-NEXT: 3.50 3.50 cvtss2sd (%rax), %xmm2 723 # CHECK-NEXT: 3.50 3.50 cvttpd2dq %xmm0, %xmm2 724 # CHECK-NEXT: 4.00 4.00 cvttpd2dq (%rax), %xmm2 725 # CHECK-NEXT: 3.50 3.50 cvttpd2pi %xmm0, %mm2 726 # CHECK-NEXT: 4.00 4.00 cvttpd2pi (%rax), %mm2 727 # CHECK-NEXT: 3.00 3.00 cvttps2dq %xmm0, %xmm2 728 # CHECK-NEXT: 3.50 3.50 cvttps2dq (%rax), %xmm2 729 # CHECK-NEXT: 4.00 4.00 cvttsd2si %xmm0, %ecx 730 # CHECK-NEXT: 4.00 4.00 cvttsd2si %xmm0, %rcx 731 # CHECK-NEXT: 4.50 4.50 cvttsd2si (%rax), %ecx 732 # CHECK-NEXT: 4.50 4.50 cvttsd2si (%rax), %rcx 733 # CHECK-NEXT: 62.50 62.50 divpd %xmm0, %xmm2 734 # CHECK-NEXT: 62.50 62.50 divpd (%rax), %xmm2 735 # CHECK-NEXT: 31.00 31.00 divsd %xmm0, %xmm2 736 # CHECK-NEXT: 31.00 31.00 divsd (%rax), %xmm2 737 # CHECK-NEXT: 0.50 0.50 lfence 738 # CHECK-NEXT: 1.00 1.00 maskmovdqu %xmm0, %xmm1 739 # CHECK-NEXT: 3.00 3.00 maxpd %xmm0, %xmm2 740 # CHECK-NEXT: 3.50 3.50 maxpd (%rax), %xmm2 741 # CHECK-NEXT: 5.00 - maxsd %xmm0, %xmm2 742 # CHECK-NEXT: 5.00 - maxsd (%rax), %xmm2 743 # CHECK-NEXT: 3.00 3.00 minpd %xmm0, %xmm2 744 # CHECK-NEXT: 3.50 3.50 minpd (%rax), %xmm2 745 # CHECK-NEXT: 5.00 - minsd %xmm0, %xmm2 746 # CHECK-NEXT: 5.00 - minsd (%rax), %xmm2 747 # CHECK-NEXT: 0.50 0.50 movapd %xmm0, %xmm2 748 # CHECK-NEXT: 1.00 - movapd %xmm0, (%rax) 749 # CHECK-NEXT: 1.00 - movapd (%rax), %xmm2 750 # CHECK-NEXT: 1.00 - movd %eax, %xmm2 751 # CHECK-NEXT: 1.00 - movd (%rax), %xmm2 752 # CHECK-NEXT: 3.00 - movd %xmm0, %ecx 753 # CHECK-NEXT: 1.00 - movd %xmm0, (%rax) 754 # CHECK-NEXT: 0.50 0.50 movdqa %xmm0, %xmm2 755 # CHECK-NEXT: 1.00 - movdqa %xmm0, (%rax) 756 # CHECK-NEXT: 1.00 - movdqa (%rax), %xmm2 757 # CHECK-NEXT: 0.50 0.50 movdqu %xmm0, %xmm2 758 # CHECK-NEXT: 1.00 1.00 movdqu %xmm0, (%rax) 759 # CHECK-NEXT: 1.50 1.50 movdqu (%rax), %xmm2 760 # CHECK-NEXT: 0.50 0.50 movdq2q %xmm0, %mm2 761 # CHECK-NEXT: 1.00 - movhpd %xmm0, (%rax) 762 # CHECK-NEXT: 1.00 - movhpd (%rax), %xmm2 763 # CHECK-NEXT: 1.00 - movlpd %xmm0, (%rax) 764 # CHECK-NEXT: 1.00 - movlpd (%rax), %xmm2 765 # CHECK-NEXT: 3.00 - movmskpd %xmm0, %ecx 766 # CHECK-NEXT: 1.00 - movntil %eax, (%rax) 767 # CHECK-NEXT: 1.00 - movntiq %rax, (%rax) 768 # CHECK-NEXT: 1.00 - movntdq %xmm0, (%rax) 769 # CHECK-NEXT: 1.00 - movntpd %xmm0, (%rax) 770 # CHECK-NEXT: 0.50 0.50 movq %xmm0, %xmm2 771 # CHECK-NEXT: 1.00 - movq %rax, %xmm2 772 # CHECK-NEXT: 1.00 - movq (%rax), %xmm2 773 # CHECK-NEXT: 3.00 - movq %xmm0, %rcx 774 # CHECK-NEXT: 1.00 - movq %xmm0, (%rax) 775 # CHECK-NEXT: 0.50 0.50 movq2dq %mm0, %xmm2 776 # CHECK-NEXT: 1.00 - movsd %xmm0, %xmm2 777 # CHECK-NEXT: 1.00 - movsd %xmm0, (%rax) 778 # CHECK-NEXT: 1.00 - movsd (%rax), %xmm2 779 # CHECK-NEXT: 0.50 0.50 movupd %xmm0, %xmm2 780 # CHECK-NEXT: 1.00 1.00 movupd %xmm0, (%rax) 781 # CHECK-NEXT: 1.50 1.50 movupd (%rax), %xmm2 782 # CHECK-NEXT: 4.50 4.50 mulpd %xmm0, %xmm2 783 # CHECK-NEXT: 5.00 5.00 mulpd (%rax), %xmm2 784 # CHECK-NEXT: 5.00 - mulsd %xmm0, %xmm2 785 # CHECK-NEXT: 5.00 - mulsd (%rax), %xmm2 786 # CHECK-NEXT: 0.50 0.50 orpd %xmm0, %xmm2 787 # CHECK-NEXT: 1.00 - orpd (%rax), %xmm2 788 # CHECK-NEXT: 1.00 - packssdw %xmm0, %xmm2 789 # CHECK-NEXT: 1.00 - packssdw (%rax), %xmm2 790 # CHECK-NEXT: 1.00 - packsswb %xmm0, %xmm2 791 # CHECK-NEXT: 1.00 - packsswb (%rax), %xmm2 792 # CHECK-NEXT: 1.00 - packuswb %xmm0, %xmm2 793 # CHECK-NEXT: 1.00 - packuswb (%rax), %xmm2 794 # CHECK-NEXT: 0.50 0.50 paddb %xmm0, %xmm2 795 # CHECK-NEXT: 1.00 - paddb (%rax), %xmm2 796 # CHECK-NEXT: 0.50 0.50 paddd %xmm0, %xmm2 797 # CHECK-NEXT: 1.00 - paddd (%rax), %xmm2 798 # CHECK-NEXT: 1.00 1.00 paddq %mm0, %mm2 799 # CHECK-NEXT: 1.50 1.50 paddq (%rax), %mm2 800 # CHECK-NEXT: 1.00 1.00 paddq %xmm0, %xmm2 801 # CHECK-NEXT: 1.50 1.50 paddq (%rax), %xmm2 802 # CHECK-NEXT: 0.50 0.50 paddsb %xmm0, %xmm2 803 # CHECK-NEXT: 1.00 - paddsb (%rax), %xmm2 804 # CHECK-NEXT: 0.50 0.50 paddsw %xmm0, %xmm2 805 # CHECK-NEXT: 1.00 - paddsw (%rax), %xmm2 806 # CHECK-NEXT: 0.50 0.50 paddusb %xmm0, %xmm2 807 # CHECK-NEXT: 1.00 - paddusb (%rax), %xmm2 808 # CHECK-NEXT: 0.50 0.50 paddusw %xmm0, %xmm2 809 # CHECK-NEXT: 1.00 - paddusw (%rax), %xmm2 810 # CHECK-NEXT: 0.50 0.50 paddw %xmm0, %xmm2 811 # CHECK-NEXT: 1.00 - paddw (%rax), %xmm2 812 # CHECK-NEXT: 0.50 0.50 pand %xmm0, %xmm2 813 # CHECK-NEXT: 1.00 - pand (%rax), %xmm2 814 # CHECK-NEXT: 0.50 0.50 pandn %xmm0, %xmm2 815 # CHECK-NEXT: 1.00 - pandn (%rax), %xmm2 816 # CHECK-NEXT: 0.50 0.50 pavgb %xmm0, %xmm2 817 # CHECK-NEXT: 1.00 - pavgb (%rax), %xmm2 818 # CHECK-NEXT: 0.50 0.50 pavgw %xmm0, %xmm2 819 # CHECK-NEXT: 1.00 - pavgw (%rax), %xmm2 820 # CHECK-NEXT: 0.50 0.50 pcmpeqb %xmm0, %xmm2 821 # CHECK-NEXT: 1.00 - pcmpeqb (%rax), %xmm2 822 # CHECK-NEXT: 0.50 0.50 pcmpeqd %xmm0, %xmm2 823 # CHECK-NEXT: 1.00 - pcmpeqd (%rax), %xmm2 824 # CHECK-NEXT: 0.50 0.50 pcmpeqw %xmm0, %xmm2 825 # CHECK-NEXT: 1.00 - pcmpeqw (%rax), %xmm2 826 # CHECK-NEXT: 0.50 0.50 pcmpgtb %xmm0, %xmm2 827 # CHECK-NEXT: 1.00 - pcmpgtb (%rax), %xmm2 828 # CHECK-NEXT: 0.50 0.50 pcmpgtd %xmm0, %xmm2 829 # CHECK-NEXT: 1.00 - pcmpgtd (%rax), %xmm2 830 # CHECK-NEXT: 0.50 0.50 pcmpgtw %xmm0, %xmm2 831 # CHECK-NEXT: 1.00 - pcmpgtw (%rax), %xmm2 832 # CHECK-NEXT: 2.00 2.00 pextrw $1, %xmm0, %ecx 833 # CHECK-NEXT: 5.00 - pmaddwd %xmm0, %xmm2 834 # CHECK-NEXT: 5.00 - pmaddwd (%rax), %xmm2 835 # CHECK-NEXT: 0.50 0.50 pmaxsw %xmm0, %xmm2 836 # CHECK-NEXT: 1.00 - pmaxsw (%rax), %xmm2 837 # CHECK-NEXT: 0.50 0.50 pmaxub %xmm0, %xmm2 838 # CHECK-NEXT: 1.00 - pmaxub (%rax), %xmm2 839 # CHECK-NEXT: 0.50 0.50 pminsw %xmm0, %xmm2 840 # CHECK-NEXT: 1.00 - pminsw (%rax), %xmm2 841 # CHECK-NEXT: 0.50 0.50 pminub %xmm0, %xmm2 842 # CHECK-NEXT: 1.00 - pminub (%rax), %xmm2 843 # CHECK-NEXT: 3.00 - pmovmskb %xmm0, %ecx 844 # CHECK-NEXT: 5.00 - pmulhuw %xmm0, %xmm2 845 # CHECK-NEXT: 5.00 - pmulhuw (%rax), %xmm2 846 # CHECK-NEXT: 5.00 - pmulhw %xmm0, %xmm2 847 # CHECK-NEXT: 5.00 - pmulhw (%rax), %xmm2 848 # CHECK-NEXT: 5.00 - pmullw %xmm0, %xmm2 849 # CHECK-NEXT: 5.00 - pmullw (%rax), %xmm2 850 # CHECK-NEXT: 4.00 - pmuludq %mm0, %mm2 851 # CHECK-NEXT: 4.00 - pmuludq (%rax), %mm2 852 # CHECK-NEXT: 5.00 - pmuludq %xmm0, %xmm2 853 # CHECK-NEXT: 5.00 - pmuludq (%rax), %xmm2 854 # CHECK-NEXT: 0.50 0.50 por %xmm0, %xmm2 855 # CHECK-NEXT: 1.00 - por (%rax), %xmm2 856 # CHECK-NEXT: 5.00 - psadbw %xmm0, %xmm2 857 # CHECK-NEXT: 5.00 - psadbw (%rax), %xmm2 858 # CHECK-NEXT: 1.00 - pshufd $1, %xmm0, %xmm2 859 # CHECK-NEXT: 1.00 - pshufd $1, (%rax), %xmm2 860 # CHECK-NEXT: 1.00 - pshufhw $1, %xmm0, %xmm2 861 # CHECK-NEXT: 1.00 - pshufhw $1, (%rax), %xmm2 862 # CHECK-NEXT: 1.00 - pshuflw $1, %xmm0, %xmm2 863 # CHECK-NEXT: 1.00 - pshuflw $1, (%rax), %xmm2 864 # CHECK-NEXT: 0.50 0.50 pslld $1, %xmm2 865 # CHECK-NEXT: 1.00 1.00 pslld %xmm0, %xmm2 866 # CHECK-NEXT: 1.50 1.50 pslld (%rax), %xmm2 867 # CHECK-NEXT: 0.50 0.50 pslldq $1, %xmm2 868 # CHECK-NEXT: 0.50 0.50 psllq $1, %xmm2 869 # CHECK-NEXT: 1.00 1.00 psllq %xmm0, %xmm2 870 # CHECK-NEXT: 1.50 1.50 psllq (%rax), %xmm2 871 # CHECK-NEXT: 0.50 0.50 psllw $1, %xmm2 872 # CHECK-NEXT: 1.00 1.00 psllw %xmm0, %xmm2 873 # CHECK-NEXT: 1.50 1.50 psllw (%rax), %xmm2 874 # CHECK-NEXT: 0.50 0.50 psrad $1, %xmm2 875 # CHECK-NEXT: 1.00 1.00 psrad %xmm0, %xmm2 876 # CHECK-NEXT: 1.50 1.50 psrad (%rax), %xmm2 877 # CHECK-NEXT: 0.50 0.50 psraw $1, %xmm2 878 # CHECK-NEXT: 1.00 1.00 psraw %xmm0, %xmm2 879 # CHECK-NEXT: 1.50 1.50 psraw (%rax), %xmm2 880 # CHECK-NEXT: 0.50 0.50 psrld $1, %xmm2 881 # CHECK-NEXT: 1.00 1.00 psrld %xmm0, %xmm2 882 # CHECK-NEXT: 1.50 1.50 psrld (%rax), %xmm2 883 # CHECK-NEXT: 0.50 0.50 psrldq $1, %xmm2 884 # CHECK-NEXT: 0.50 0.50 psrlq $1, %xmm2 885 # CHECK-NEXT: 1.00 1.00 psrlq %xmm0, %xmm2 886 # CHECK-NEXT: 1.50 1.50 psrlq (%rax), %xmm2 887 # CHECK-NEXT: 0.50 0.50 psrlw $1, %xmm2 888 # CHECK-NEXT: 1.00 1.00 psrlw %xmm0, %xmm2 889 # CHECK-NEXT: 1.50 1.50 psrlw (%rax), %xmm2 890 # CHECK-NEXT: 0.50 0.50 psubb %xmm0, %xmm2 891 # CHECK-NEXT: 1.00 - psubb (%rax), %xmm2 892 # CHECK-NEXT: 0.50 0.50 psubd %xmm0, %xmm2 893 # CHECK-NEXT: 1.00 - psubd (%rax), %xmm2 894 # CHECK-NEXT: 1.00 1.00 psubq %mm0, %mm2 895 # CHECK-NEXT: 1.50 1.50 psubq (%rax), %mm2 896 # CHECK-NEXT: 1.00 1.00 psubq %xmm0, %xmm2 897 # CHECK-NEXT: 1.50 1.50 psubq (%rax), %xmm2 898 # CHECK-NEXT: 0.50 0.50 psubsb %xmm0, %xmm2 899 # CHECK-NEXT: 1.00 - psubsb (%rax), %xmm2 900 # CHECK-NEXT: 0.50 0.50 psubsw %xmm0, %xmm2 901 # CHECK-NEXT: 1.00 - psubsw (%rax), %xmm2 902 # CHECK-NEXT: 0.50 0.50 psubusb %xmm0, %xmm2 903 # CHECK-NEXT: 1.00 - psubusb (%rax), %xmm2 904 # CHECK-NEXT: 0.50 0.50 psubusw %xmm0, %xmm2 905 # CHECK-NEXT: 1.00 - psubusw (%rax), %xmm2 906 # CHECK-NEXT: 0.50 0.50 psubw %xmm0, %xmm2 907 # CHECK-NEXT: 1.00 - psubw (%rax), %xmm2 908 # CHECK-NEXT: 1.00 - punpckhbw %xmm0, %xmm2 909 # CHECK-NEXT: 1.00 - punpckhbw (%rax), %xmm2 910 # CHECK-NEXT: 1.00 - punpckhdq %xmm0, %xmm2 911 # CHECK-NEXT: 1.00 - punpckhdq (%rax), %xmm2 912 # CHECK-NEXT: 1.00 - punpckhqdq %xmm0, %xmm2 913 # CHECK-NEXT: 1.00 - punpckhqdq (%rax), %xmm2 914 # CHECK-NEXT: 1.00 - punpckhwd %xmm0, %xmm2 915 # CHECK-NEXT: 1.00 - punpckhwd (%rax), %xmm2 916 # CHECK-NEXT: 1.00 - punpcklbw %xmm0, %xmm2 917 # CHECK-NEXT: 1.00 - punpcklbw (%rax), %xmm2 918 # CHECK-NEXT: 1.00 - punpckldq %xmm0, %xmm2 919 # CHECK-NEXT: 1.00 - punpckldq (%rax), %xmm2 920 # CHECK-NEXT: 1.00 - punpcklqdq %xmm0, %xmm2 921 # CHECK-NEXT: 1.00 - punpcklqdq (%rax), %xmm2 922 # CHECK-NEXT: 1.00 - punpcklwd %xmm0, %xmm2 923 # CHECK-NEXT: 1.00 - punpcklwd (%rax), %xmm2 924 # CHECK-NEXT: 0.50 0.50 pxor %xmm0, %xmm2 925 # CHECK-NEXT: 1.00 - pxor (%rax), %xmm2 926 # CHECK-NEXT: 1.00 - shufpd $1, %xmm0, %xmm2 927 # CHECK-NEXT: 1.00 - shufpd $1, (%rax), %xmm2 928 # CHECK-NEXT: 62.50 62.50 sqrtpd %xmm0, %xmm2 929 # CHECK-NEXT: 62.50 62.50 sqrtpd (%rax), %xmm2 930 # CHECK-NEXT: 31.00 31.00 sqrtsd %xmm0, %xmm2 931 # CHECK-NEXT: 31.00 31.00 sqrtsd (%rax), %xmm2 932 # CHECK-NEXT: 3.00 3.00 subpd %xmm0, %xmm2 933 # CHECK-NEXT: 3.50 3.50 subpd (%rax), %xmm2 934 # CHECK-NEXT: 5.00 - subsd %xmm0, %xmm2 935 # CHECK-NEXT: 5.00 - subsd (%rax), %xmm2 936 # CHECK-NEXT: 4.50 4.50 ucomisd %xmm0, %xmm1 937 # CHECK-NEXT: 5.00 5.00 ucomisd (%rax), %xmm1 938 # CHECK-NEXT: 1.00 - unpckhpd %xmm0, %xmm2 939 # CHECK-NEXT: 1.00 - unpckhpd (%rax), %xmm2 940 # CHECK-NEXT: 1.00 - unpcklpd %xmm0, %xmm2 941 # CHECK-NEXT: 1.00 - unpcklpd (%rax), %xmm2 942 # CHECK-NEXT: 0.50 0.50 xorpd %xmm0, %xmm2 943 # CHECK-NEXT: 1.00 - xorpd (%rax), %xmm2 944