1 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py 2 # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -instruction-tables < %s | FileCheck %s 3 4 blendpd $11, %xmm0, %xmm2 5 blendpd $11, (%rax), %xmm2 6 7 blendps $11, %xmm0, %xmm2 8 blendps $11, (%rax), %xmm2 9 10 blendvpd %xmm0, %xmm2 11 blendvpd (%rax), %xmm2 12 13 blendvps %xmm0, %xmm2 14 blendvps (%rax), %xmm2 15 16 dppd $22, %xmm0, %xmm2 17 dppd $22, (%rax), %xmm2 18 19 dpps $22, %xmm0, %xmm2 20 dpps $22, (%rax), %xmm2 21 22 extractps $1, %xmm0, %rcx 23 extractps $1, %xmm0, (%rax) 24 25 insertps $1, %xmm0, %xmm2 26 insertps $1, (%rax), %xmm2 27 28 movntdqa (%rax), %xmm2 29 30 mpsadbw $1, %xmm0, %xmm2 31 mpsadbw $1, (%rax), %xmm2 32 33 packusdw %xmm0, %xmm2 34 packusdw (%rax), %xmm2 35 36 pblendvb %xmm0, %xmm2 37 pblendvb (%rax), %xmm2 38 39 pblendw $11, %xmm0, %xmm2 40 pblendw $11, (%rax), %xmm2 41 42 pcmpeqq %xmm0, %xmm2 43 pcmpeqq (%rax), %xmm2 44 45 pextrb $1, %xmm0, %ecx 46 pextrb $1, %xmm0, (%rax) 47 48 pextrd $1, %xmm0, %ecx 49 pextrd $1, %xmm0, (%rax) 50 51 pextrq $1, %xmm0, %rcx 52 pextrq $1, %xmm0, (%rax) 53 54 pextrw $1, %xmm0, (%rax) 55 56 phminposuw %xmm0, %xmm2 57 phminposuw (%rax), %xmm2 58 59 pinsrb $1, %eax, %xmm1 60 pinsrb $1, (%rax), %xmm1 61 62 pinsrd $1, %eax, %xmm1 63 pinsrd $1, (%rax), %xmm1 64 65 pinsrq $1, %rax, %xmm1 66 pinsrq $1, (%rax), %xmm1 67 68 pmaxsb %xmm0, %xmm2 69 pmaxsb (%rax), %xmm2 70 71 pmaxsd %xmm0, %xmm2 72 pmaxsd (%rax), %xmm2 73 74 pmaxud %xmm0, %xmm2 75 pmaxud (%rax), %xmm2 76 77 pmaxuw %xmm0, %xmm2 78 pmaxuw (%rax), %xmm2 79 80 pminsb %xmm0, %xmm2 81 pminsb (%rax), %xmm2 82 83 pminsd %xmm0, %xmm2 84 pminsd (%rax), %xmm2 85 86 pminud %xmm0, %xmm2 87 pminud (%rax), %xmm2 88 89 pminuw %xmm0, %xmm2 90 pminuw (%rax), %xmm2 91 92 pmovsxbd %xmm0, %xmm2 93 pmovsxbd (%rax), %xmm2 94 95 pmovsxbq %xmm0, %xmm2 96 pmovsxbq (%rax), %xmm2 97 98 pmovsxbw %xmm0, %xmm2 99 pmovsxbw (%rax), %xmm2 100 101 pmovsxdq %xmm0, %xmm2 102 pmovsxdq (%rax), %xmm2 103 104 pmovsxwd %xmm0, %xmm2 105 pmovsxwd (%rax), %xmm2 106 107 pmovsxwq %xmm0, %xmm2 108 pmovsxwq (%rax), %xmm2 109 110 pmovzxbd %xmm0, %xmm2 111 pmovzxbd (%rax), %xmm2 112 113 pmovzxbq %xmm0, %xmm2 114 pmovzxbq (%rax), %xmm2 115 116 pmovzxbw %xmm0, %xmm2 117 pmovzxbw (%rax), %xmm2 118 119 pmovzxdq %xmm0, %xmm2 120 pmovzxdq (%rax), %xmm2 121 122 pmovzxwd %xmm0, %xmm2 123 pmovzxwd (%rax), %xmm2 124 125 pmovzxwq %xmm0, %xmm2 126 pmovzxwq (%rax), %xmm2 127 128 pmuldq %xmm0, %xmm2 129 pmuldq (%rax), %xmm2 130 131 pmulld %xmm0, %xmm2 132 pmulld (%rax), %xmm2 133 134 ptest %xmm0, %xmm1 135 ptest (%rax), %xmm1 136 137 roundpd $1, %xmm0, %xmm2 138 roundpd $1, (%rax), %xmm2 139 140 roundps $1, %xmm0, %xmm2 141 roundps $1, (%rax), %xmm2 142 143 roundsd $1, %xmm0, %xmm2 144 roundsd $1, (%rax), %xmm2 145 146 roundss $1, %xmm0, %xmm2 147 roundss $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