1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py 2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=sandybridge -instruction-tables < %s | FileCheck %s 3 4blendpd $11, %xmm0, %xmm2 5blendpd $11, (%rax), %xmm2 6 7blendps $11, %xmm0, %xmm2 8blendps $11, (%rax), %xmm2 9 10blendvpd %xmm0, %xmm2 11blendvpd (%rax), %xmm2 12 13blendvps %xmm0, %xmm2 14blendvps (%rax), %xmm2 15 16dppd $22, %xmm0, %xmm2 17dppd $22, (%rax), %xmm2 18 19dpps $22, %xmm0, %xmm2 20dpps $22, (%rax), %xmm2 21 22extractps $1, %xmm0, %rcx 23extractps $1, %xmm0, (%rax) 24 25insertps $1, %xmm0, %xmm2 26insertps $1, (%rax), %xmm2 27 28movntdqa (%rax), %xmm2 29 30mpsadbw $1, %xmm0, %xmm2 31mpsadbw $1, (%rax), %xmm2 32 33packusdw %xmm0, %xmm2 34packusdw (%rax), %xmm2 35 36pblendvb %xmm0, %xmm2 37pblendvb (%rax), %xmm2 38 39pblendw $11, %xmm0, %xmm2 40pblendw $11, (%rax), %xmm2 41 42pcmpeqq %xmm0, %xmm2 43pcmpeqq (%rax), %xmm2 44 45pextrb $1, %xmm0, %ecx 46pextrb $1, %xmm0, (%rax) 47 48pextrd $1, %xmm0, %ecx 49pextrd $1, %xmm0, (%rax) 50 51pextrq $1, %xmm0, %rcx 52pextrq $1, %xmm0, (%rax) 53 54pextrw $1, %xmm0, (%rax) 55 56phminposuw %xmm0, %xmm2 57phminposuw (%rax), %xmm2 58 59pinsrb $1, %eax, %xmm1 60pinsrb $1, (%rax), %xmm1 61 62pinsrd $1, %eax, %xmm1 63pinsrd $1, (%rax), %xmm1 64 65pinsrq $1, %rax, %xmm1 66pinsrq $1, (%rax), %xmm1 67 68pmaxsb %xmm0, %xmm2 69pmaxsb (%rax), %xmm2 70 71pmaxsd %xmm0, %xmm2 72pmaxsd (%rax), %xmm2 73 74pmaxud %xmm0, %xmm2 75pmaxud (%rax), %xmm2 76 77pmaxuw %xmm0, %xmm2 78pmaxuw (%rax), %xmm2 79 80pminsb %xmm0, %xmm2 81pminsb (%rax), %xmm2 82 83pminsd %xmm0, %xmm2 84pminsd (%rax), %xmm2 85 86pminud %xmm0, %xmm2 87pminud (%rax), %xmm2 88 89pminuw %xmm0, %xmm2 90pminuw (%rax), %xmm2 91 92pmovsxbd %xmm0, %xmm2 93pmovsxbd (%rax), %xmm2 94 95pmovsxbq %xmm0, %xmm2 96pmovsxbq (%rax), %xmm2 97 98pmovsxbw %xmm0, %xmm2 99pmovsxbw (%rax), %xmm2 100 101pmovsxdq %xmm0, %xmm2 102pmovsxdq (%rax), %xmm2 103 104pmovsxwd %xmm0, %xmm2 105pmovsxwd (%rax), %xmm2 106 107pmovsxwq %xmm0, %xmm2 108pmovsxwq (%rax), %xmm2 109 110pmovzxbd %xmm0, %xmm2 111pmovzxbd (%rax), %xmm2 112 113pmovzxbq %xmm0, %xmm2 114pmovzxbq (%rax), %xmm2 115 116pmovzxbw %xmm0, %xmm2 117pmovzxbw (%rax), %xmm2 118 119pmovzxdq %xmm0, %xmm2 120pmovzxdq (%rax), %xmm2 121 122pmovzxwd %xmm0, %xmm2 123pmovzxwd (%rax), %xmm2 124 125pmovzxwq %xmm0, %xmm2 126pmovzxwq (%rax), %xmm2 127 128pmuldq %xmm0, %xmm2 129pmuldq (%rax), %xmm2 130 131pmulld %xmm0, %xmm2 132pmulld (%rax), %xmm2 133 134ptest %xmm0, %xmm1 135ptest (%rax), %xmm1 136 137roundpd $1, %xmm0, %xmm2 138roundpd $1, (%rax), %xmm2 139 140roundps $1, %xmm0, %xmm2 141roundps $1, (%rax), %xmm2 142 143roundsd $1, %xmm0, %xmm2 144roundsd $1, (%rax), %xmm2 145 146roundss $1, %xmm0, %xmm2 147roundss $1, (%rax), %xmm2 148 149# CHECK: Instruction Info: 150# CHECK-NEXT: [1]: #uOps 151# CHECK-NEXT: [2]: Latency 152# CHECK-NEXT: [3]: RThroughput 153# CHECK-NEXT: [4]: MayLoad 154# CHECK-NEXT: [5]: MayStore 155# CHECK-NEXT: [6]: HasSideEffects (U) 156 157# CHECK: [1] [2] [3] [4] [5] [6] Instructions: 158# CHECK-NEXT: 1 1 0.50 blendpd $11, %xmm0, %xmm2 159# CHECK-NEXT: 2 7 0.50 * blendpd $11, (%rax), %xmm2 160# CHECK-NEXT: 1 1 0.50 blendps $11, %xmm0, %xmm2 161# CHECK-NEXT: 2 7 0.50 * blendps $11, (%rax), %xmm2 162# CHECK-NEXT: 2 2 1.00 blendvpd %xmm0, %xmm0, %xmm2 163# CHECK-NEXT: 3 8 1.00 * blendvpd %xmm0, (%rax), %xmm2 164# CHECK-NEXT: 2 2 1.00 blendvps %xmm0, %xmm0, %xmm2 165# CHECK-NEXT: 3 8 1.00 * blendvps %xmm0, (%rax), %xmm2 166# CHECK-NEXT: 3 9 1.00 dppd $22, %xmm0, %xmm2 167# CHECK-NEXT: 4 15 1.00 * dppd $22, (%rax), %xmm2 168# CHECK-NEXT: 4 12 2.00 dpps $22, %xmm0, %xmm2 169# CHECK-NEXT: 5 18 2.00 * dpps $22, (%rax), %xmm2 170# CHECK-NEXT: 2 3 1.00 extractps $1, %xmm0, %ecx 171# CHECK-NEXT: 3 5 1.00 * extractps $1, %xmm0, (%rax) 172# CHECK-NEXT: 1 1 1.00 insertps $1, %xmm0, %xmm2 173# CHECK-NEXT: 2 7 1.00 * insertps $1, (%rax), %xmm2 174# CHECK-NEXT: 1 6 0.50 * movntdqa (%rax), %xmm2 175# CHECK-NEXT: 3 7 1.00 mpsadbw $1, %xmm0, %xmm2 176# CHECK-NEXT: 4 13 1.00 * mpsadbw $1, (%rax), %xmm2 177# CHECK-NEXT: 1 1 0.50 packusdw %xmm0, %xmm2 178# CHECK-NEXT: 2 7 0.50 * packusdw (%rax), %xmm2 179# CHECK-NEXT: 2 2 1.00 pblendvb %xmm0, %xmm0, %xmm2 180# CHECK-NEXT: 3 8 1.00 * pblendvb %xmm0, (%rax), %xmm2 181# CHECK-NEXT: 1 1 0.50 pblendw $11, %xmm0, %xmm2 182# CHECK-NEXT: 2 7 0.50 * pblendw $11, (%rax), %xmm2 183# CHECK-NEXT: 1 1 0.50 pcmpeqq %xmm0, %xmm2 184# CHECK-NEXT: 2 7 0.50 * pcmpeqq (%rax), %xmm2 185# CHECK-NEXT: 2 3 1.00 pextrb $1, %xmm0, %ecx 186# CHECK-NEXT: 3 5 1.00 * pextrb $1, %xmm0, (%rax) 187# CHECK-NEXT: 2 3 1.00 pextrd $1, %xmm0, %ecx 188# CHECK-NEXT: 4 5 1.00 * pextrd $1, %xmm0, (%rax) 189# CHECK-NEXT: 2 3 1.00 pextrq $1, %xmm0, %rcx 190# CHECK-NEXT: 4 5 1.00 * pextrq $1, %xmm0, (%rax) 191# CHECK-NEXT: 3 5 1.00 * pextrw $1, %xmm0, (%rax) 192# CHECK-NEXT: 1 5 1.00 phminposuw %xmm0, %xmm2 193# CHECK-NEXT: 2 11 1.00 * phminposuw (%rax), %xmm2 194# CHECK-NEXT: 2 2 1.00 pinsrb $1, %eax, %xmm1 195# CHECK-NEXT: 2 7 0.50 * pinsrb $1, (%rax), %xmm1 196# CHECK-NEXT: 2 2 1.00 pinsrd $1, %eax, %xmm1 197# CHECK-NEXT: 2 7 0.50 * pinsrd $1, (%rax), %xmm1 198# CHECK-NEXT: 2 2 1.00 pinsrq $1, %rax, %xmm1 199# CHECK-NEXT: 2 7 0.50 * pinsrq $1, (%rax), %xmm1 200# CHECK-NEXT: 1 1 0.50 pmaxsb %xmm0, %xmm2 201# CHECK-NEXT: 2 7 0.50 * pmaxsb (%rax), %xmm2 202# CHECK-NEXT: 1 1 0.50 pmaxsd %xmm0, %xmm2 203# CHECK-NEXT: 2 7 0.50 * pmaxsd (%rax), %xmm2 204# CHECK-NEXT: 1 1 0.50 pmaxud %xmm0, %xmm2 205# CHECK-NEXT: 2 7 0.50 * pmaxud (%rax), %xmm2 206# CHECK-NEXT: 1 1 0.50 pmaxuw %xmm0, %xmm2 207# CHECK-NEXT: 2 7 0.50 * pmaxuw (%rax), %xmm2 208# CHECK-NEXT: 1 1 0.50 pminsb %xmm0, %xmm2 209# CHECK-NEXT: 2 7 0.50 * pminsb (%rax), %xmm2 210# CHECK-NEXT: 1 1 0.50 pminsd %xmm0, %xmm2 211# CHECK-NEXT: 2 7 0.50 * pminsd (%rax), %xmm2 212# CHECK-NEXT: 1 1 0.50 pminud %xmm0, %xmm2 213# CHECK-NEXT: 2 7 0.50 * pminud (%rax), %xmm2 214# CHECK-NEXT: 1 1 0.50 pminuw %xmm0, %xmm2 215# CHECK-NEXT: 2 7 0.50 * pminuw (%rax), %xmm2 216# CHECK-NEXT: 1 1 0.50 pmovsxbd %xmm0, %xmm2 217# CHECK-NEXT: 2 7 0.50 * pmovsxbd (%rax), %xmm2 218# CHECK-NEXT: 1 1 0.50 pmovsxbq %xmm0, %xmm2 219# CHECK-NEXT: 2 7 0.50 * pmovsxbq (%rax), %xmm2 220# CHECK-NEXT: 1 1 0.50 pmovsxbw %xmm0, %xmm2 221# CHECK-NEXT: 2 7 0.50 * pmovsxbw (%rax), %xmm2 222# CHECK-NEXT: 1 1 0.50 pmovsxdq %xmm0, %xmm2 223# CHECK-NEXT: 2 7 0.50 * pmovsxdq (%rax), %xmm2 224# CHECK-NEXT: 1 1 0.50 pmovsxwd %xmm0, %xmm2 225# CHECK-NEXT: 2 7 0.50 * pmovsxwd (%rax), %xmm2 226# CHECK-NEXT: 1 1 0.50 pmovsxwq %xmm0, %xmm2 227# CHECK-NEXT: 2 7 0.50 * pmovsxwq (%rax), %xmm2 228# CHECK-NEXT: 1 1 0.50 pmovzxbd %xmm0, %xmm2 229# CHECK-NEXT: 2 7 0.50 * pmovzxbd (%rax), %xmm2 230# CHECK-NEXT: 1 1 0.50 pmovzxbq %xmm0, %xmm2 231# CHECK-NEXT: 2 7 0.50 * pmovzxbq (%rax), %xmm2 232# CHECK-NEXT: 1 1 0.50 pmovzxbw %xmm0, %xmm2 233# CHECK-NEXT: 2 7 0.50 * pmovzxbw (%rax), %xmm2 234# CHECK-NEXT: 1 1 0.50 pmovzxdq %xmm0, %xmm2 235# CHECK-NEXT: 2 7 0.50 * pmovzxdq (%rax), %xmm2 236# CHECK-NEXT: 1 1 0.50 pmovzxwd %xmm0, %xmm2 237# CHECK-NEXT: 2 7 0.50 * pmovzxwd (%rax), %xmm2 238# CHECK-NEXT: 1 1 0.50 pmovzxwq %xmm0, %xmm2 239# CHECK-NEXT: 2 7 0.50 * pmovzxwq (%rax), %xmm2 240# CHECK-NEXT: 1 5 1.00 pmuldq %xmm0, %xmm2 241# CHECK-NEXT: 2 11 1.00 * pmuldq (%rax), %xmm2 242# CHECK-NEXT: 1 5 1.00 pmulld %xmm0, %xmm2 243# CHECK-NEXT: 2 11 1.00 * pmulld (%rax), %xmm2 244# CHECK-NEXT: 2 2 1.00 ptest %xmm0, %xmm1 245# CHECK-NEXT: 3 8 1.00 * ptest (%rax), %xmm1 246# CHECK-NEXT: 1 3 1.00 roundpd $1, %xmm0, %xmm2 247# CHECK-NEXT: 2 9 1.00 * roundpd $1, (%rax), %xmm2 248# CHECK-NEXT: 1 3 1.00 roundps $1, %xmm0, %xmm2 249# CHECK-NEXT: 2 9 1.00 * roundps $1, (%rax), %xmm2 250# CHECK-NEXT: 1 3 1.00 roundsd $1, %xmm0, %xmm2 251# CHECK-NEXT: 2 9 1.00 * roundsd $1, (%rax), %xmm2 252# CHECK-NEXT: 1 3 1.00 roundss $1, %xmm0, %xmm2 253# CHECK-NEXT: 2 9 1.00 * roundss $1, (%rax), %xmm2 254 255# CHECK: Resources: 256# CHECK-NEXT: [0] - SBDivider 257# CHECK-NEXT: [1] - SBFPDivider 258# CHECK-NEXT: [2] - SBPort0 259# CHECK-NEXT: [3] - SBPort1 260# CHECK-NEXT: [4] - SBPort4 261# CHECK-NEXT: [5] - SBPort5 262# CHECK-NEXT: [6.0] - SBPort23 263# CHECK-NEXT: [6.1] - SBPort23 264 265# CHECK: Resource pressure per iteration: 266# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] 267# CHECK-NEXT: - - 26.00 47.50 5.00 52.50 24.50 24.50 268 269# CHECK: Resource pressure by instruction: 270# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions: 271# CHECK-NEXT: - - 0.50 - - 0.50 - - blendpd $11, %xmm0, %xmm2 272# CHECK-NEXT: - - 0.50 - - 0.50 0.50 0.50 blendpd $11, (%rax), %xmm2 273# CHECK-NEXT: - - 0.50 - - 0.50 - - blendps $11, %xmm0, %xmm2 274# CHECK-NEXT: - - 0.50 - - 0.50 0.50 0.50 blendps $11, (%rax), %xmm2 275# CHECK-NEXT: - - 1.00 - - 1.00 - - blendvpd %xmm0, %xmm0, %xmm2 276# CHECK-NEXT: - - 1.00 - - 1.00 0.50 0.50 blendvpd %xmm0, (%rax), %xmm2 277# CHECK-NEXT: - - 1.00 - - 1.00 - - blendvps %xmm0, %xmm0, %xmm2 278# CHECK-NEXT: - - 1.00 - - 1.00 0.50 0.50 blendvps %xmm0, (%rax), %xmm2 279# CHECK-NEXT: - - 1.00 1.00 - 1.00 - - dppd $22, %xmm0, %xmm2 280# CHECK-NEXT: - - 1.00 1.00 - 1.00 0.50 0.50 dppd $22, (%rax), %xmm2 281# CHECK-NEXT: - - 1.00 2.00 - 1.00 - - dpps $22, %xmm0, %xmm2 282# CHECK-NEXT: - - 1.00 2.00 - 1.00 0.50 0.50 dpps $22, (%rax), %xmm2 283# CHECK-NEXT: - - 1.00 - - 1.00 - - extractps $1, %xmm0, %ecx 284# CHECK-NEXT: - - - - 1.00 1.00 0.50 0.50 extractps $1, %xmm0, (%rax) 285# CHECK-NEXT: - - - - - 1.00 - - insertps $1, %xmm0, %xmm2 286# CHECK-NEXT: - - - - - 1.00 0.50 0.50 insertps $1, (%rax), %xmm2 287# CHECK-NEXT: - - - - - - 0.50 0.50 movntdqa (%rax), %xmm2 288# CHECK-NEXT: - - 1.00 1.00 - 1.00 - - mpsadbw $1, %xmm0, %xmm2 289# CHECK-NEXT: - - 1.00 1.00 - 1.00 0.50 0.50 mpsadbw $1, (%rax), %xmm2 290# CHECK-NEXT: - - - 0.50 - 0.50 - - packusdw %xmm0, %xmm2 291# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 packusdw (%rax), %xmm2 292# CHECK-NEXT: - - - 1.00 - 1.00 - - pblendvb %xmm0, %xmm0, %xmm2 293# CHECK-NEXT: - - - 1.00 - 1.00 0.50 0.50 pblendvb %xmm0, (%rax), %xmm2 294# CHECK-NEXT: - - - 0.50 - 0.50 - - pblendw $11, %xmm0, %xmm2 295# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pblendw $11, (%rax), %xmm2 296# CHECK-NEXT: - - - 0.50 - 0.50 - - pcmpeqq %xmm0, %xmm2 297# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pcmpeqq (%rax), %xmm2 298# CHECK-NEXT: - - 1.00 0.50 - 0.50 - - pextrb $1, %xmm0, %ecx 299# CHECK-NEXT: - - - 0.50 1.00 0.50 0.50 0.50 pextrb $1, %xmm0, (%rax) 300# CHECK-NEXT: - - 1.00 0.50 - 0.50 - - pextrd $1, %xmm0, %ecx 301# CHECK-NEXT: - - 1.00 0.50 1.00 0.50 0.50 0.50 pextrd $1, %xmm0, (%rax) 302# CHECK-NEXT: - - 1.00 0.50 - 0.50 - - pextrq $1, %xmm0, %rcx 303# CHECK-NEXT: - - 1.00 0.50 1.00 0.50 0.50 0.50 pextrq $1, %xmm0, (%rax) 304# CHECK-NEXT: - - - 0.50 1.00 0.50 0.50 0.50 pextrw $1, %xmm0, (%rax) 305# CHECK-NEXT: - - 1.00 - - - - - phminposuw %xmm0, %xmm2 306# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 phminposuw (%rax), %xmm2 307# CHECK-NEXT: - - - 0.50 - 1.50 - - pinsrb $1, %eax, %xmm1 308# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pinsrb $1, (%rax), %xmm1 309# CHECK-NEXT: - - - 0.50 - 1.50 - - pinsrd $1, %eax, %xmm1 310# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pinsrd $1, (%rax), %xmm1 311# CHECK-NEXT: - - - 0.50 - 1.50 - - pinsrq $1, %rax, %xmm1 312# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pinsrq $1, (%rax), %xmm1 313# CHECK-NEXT: - - - 0.50 - 0.50 - - pmaxsb %xmm0, %xmm2 314# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmaxsb (%rax), %xmm2 315# CHECK-NEXT: - - - 0.50 - 0.50 - - pmaxsd %xmm0, %xmm2 316# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmaxsd (%rax), %xmm2 317# CHECK-NEXT: - - - 0.50 - 0.50 - - pmaxud %xmm0, %xmm2 318# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmaxud (%rax), %xmm2 319# CHECK-NEXT: - - - 0.50 - 0.50 - - pmaxuw %xmm0, %xmm2 320# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmaxuw (%rax), %xmm2 321# CHECK-NEXT: - - - 0.50 - 0.50 - - pminsb %xmm0, %xmm2 322# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pminsb (%rax), %xmm2 323# CHECK-NEXT: - - - 0.50 - 0.50 - - pminsd %xmm0, %xmm2 324# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pminsd (%rax), %xmm2 325# CHECK-NEXT: - - - 0.50 - 0.50 - - pminud %xmm0, %xmm2 326# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pminud (%rax), %xmm2 327# CHECK-NEXT: - - - 0.50 - 0.50 - - pminuw %xmm0, %xmm2 328# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pminuw (%rax), %xmm2 329# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovsxbd %xmm0, %xmm2 330# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovsxbd (%rax), %xmm2 331# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovsxbq %xmm0, %xmm2 332# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovsxbq (%rax), %xmm2 333# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovsxbw %xmm0, %xmm2 334# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovsxbw (%rax), %xmm2 335# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovsxdq %xmm0, %xmm2 336# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovsxdq (%rax), %xmm2 337# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovsxwd %xmm0, %xmm2 338# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovsxwd (%rax), %xmm2 339# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovsxwq %xmm0, %xmm2 340# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovsxwq (%rax), %xmm2 341# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovzxbd %xmm0, %xmm2 342# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovzxbd (%rax), %xmm2 343# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovzxbq %xmm0, %xmm2 344# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovzxbq (%rax), %xmm2 345# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovzxbw %xmm0, %xmm2 346# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovzxbw (%rax), %xmm2 347# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovzxdq %xmm0, %xmm2 348# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovzxdq (%rax), %xmm2 349# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovzxwd %xmm0, %xmm2 350# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovzxwd (%rax), %xmm2 351# CHECK-NEXT: - - - 0.50 - 0.50 - - pmovzxwq %xmm0, %xmm2 352# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 pmovzxwq (%rax), %xmm2 353# CHECK-NEXT: - - 1.00 - - - - - pmuldq %xmm0, %xmm2 354# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 pmuldq (%rax), %xmm2 355# CHECK-NEXT: - - 1.00 - - - - - pmulld %xmm0, %xmm2 356# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 pmulld (%rax), %xmm2 357# CHECK-NEXT: - - 1.00 - - 1.00 - - ptest %xmm0, %xmm1 358# CHECK-NEXT: - - 1.00 - - 1.00 0.50 0.50 ptest (%rax), %xmm1 359# CHECK-NEXT: - - - 1.00 - - - - roundpd $1, %xmm0, %xmm2 360# CHECK-NEXT: - - - 1.00 - - 0.50 0.50 roundpd $1, (%rax), %xmm2 361# CHECK-NEXT: - - - 1.00 - - - - roundps $1, %xmm0, %xmm2 362# CHECK-NEXT: - - - 1.00 - - 0.50 0.50 roundps $1, (%rax), %xmm2 363# CHECK-NEXT: - - - 1.00 - - - - roundsd $1, %xmm0, %xmm2 364# CHECK-NEXT: - - - 1.00 - - 0.50 0.50 roundsd $1, (%rax), %xmm2 365# CHECK-NEXT: - - - 1.00 - - - - roundss $1, %xmm0, %xmm2 366# CHECK-NEXT: - - - 1.00 - - 0.50 0.50 roundss $1, (%rax), %xmm2 367