1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py 2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake-avx512 -timeline -register-file-stats -iterations=1 < %s | FileCheck %s 3 4# On SKX, renamer-based zeroing does not work for: 5# - 16 and 8-bit GPRs 6# - MMX 7# - ANDN variants 8 9subl %eax, %eax 10subq %rax, %rax 11xorl %eax, %eax 12xorq %rax, %rax 13 14pcmpgtb %mm2, %mm2 15pcmpgtd %mm2, %mm2 16# pcmpgtq %mm2, %mm2 # invalid operand for instruction 17pcmpgtw %mm2, %mm2 18 19pcmpgtb %xmm2, %xmm2 20pcmpgtd %xmm2, %xmm2 21pcmpgtq %xmm2, %xmm2 22pcmpgtw %xmm2, %xmm2 23 24vpcmpgtb %xmm3, %xmm3, %xmm3 25vpcmpgtd %xmm3, %xmm3, %xmm3 26vpcmpgtq %xmm3, %xmm3, %xmm3 27vpcmpgtw %xmm3, %xmm3, %xmm3 28 29vpcmpgtb %xmm3, %xmm3, %xmm5 30vpcmpgtd %xmm3, %xmm3, %xmm5 31vpcmpgtq %xmm3, %xmm3, %xmm5 32vpcmpgtw %xmm3, %xmm3, %xmm5 33 34vpcmpgtb %ymm3, %ymm3, %ymm3 35vpcmpgtd %ymm3, %ymm3, %ymm3 36vpcmpgtq %ymm3, %ymm3, %ymm3 37vpcmpgtw %ymm3, %ymm3, %ymm3 38 39vpcmpgtb %ymm3, %ymm3, %ymm5 40vpcmpgtd %ymm3, %ymm3, %ymm5 41vpcmpgtq %ymm3, %ymm3, %ymm5 42vpcmpgtw %ymm3, %ymm3, %ymm5 43 44psubb %mm2, %mm2 45psubd %mm2, %mm2 46psubq %mm2, %mm2 47psubw %mm2, %mm2 48psubb %xmm2, %xmm2 49psubd %xmm2, %xmm2 50psubq %xmm2, %xmm2 51psubw %xmm2, %xmm2 52vpsubb %xmm3, %xmm3, %xmm3 53vpsubd %xmm3, %xmm3, %xmm3 54vpsubq %xmm3, %xmm3, %xmm3 55vpsubw %xmm3, %xmm3, %xmm3 56vpsubb %ymm3, %ymm3, %ymm3 57vpsubd %ymm3, %ymm3, %ymm3 58vpsubq %ymm3, %ymm3, %ymm3 59vpsubw %ymm3, %ymm3, %ymm3 60 61vpsubb %xmm3, %xmm3, %xmm5 62vpsubd %xmm3, %xmm3, %xmm5 63vpsubq %xmm3, %xmm3, %xmm5 64vpsubw %xmm3, %xmm3, %xmm5 65vpsubb %ymm3, %ymm3, %ymm5 66vpsubd %ymm3, %ymm3, %ymm5 67vpsubq %ymm3, %ymm3, %ymm5 68vpsubw %ymm3, %ymm3, %ymm5 69 70vpsubb %xmm19, %xmm19, %xmm19 71vpsubd %xmm19, %xmm19, %xmm19 72vpsubq %xmm19, %xmm19, %xmm19 73vpsubw %xmm19, %xmm19, %xmm19 74vpsubb %ymm19, %ymm19, %ymm19 75vpsubd %ymm19, %ymm19, %ymm19 76vpsubq %ymm19, %ymm19, %ymm19 77vpsubw %ymm19, %ymm19, %ymm19 78vpsubb %zmm19, %zmm19, %zmm19 79vpsubd %zmm19, %zmm19, %zmm19 80vpsubq %zmm19, %zmm19, %zmm19 81vpsubw %zmm19, %zmm19, %zmm19 82 83vpsubb %xmm19, %xmm19, %xmm21 84vpsubd %xmm19, %xmm19, %xmm21 85vpsubq %xmm19, %xmm19, %xmm21 86vpsubw %xmm19, %xmm19, %xmm21 87vpsubb %ymm19, %ymm19, %ymm21 88vpsubd %ymm19, %ymm19, %ymm21 89vpsubq %ymm19, %ymm19, %ymm21 90vpsubw %ymm19, %ymm19, %ymm21 91vpsubb %zmm19, %zmm19, %zmm21 92vpsubd %zmm19, %zmm19, %zmm21 93vpsubq %zmm19, %zmm19, %zmm21 94vpsubw %zmm19, %zmm19, %zmm21 95 96andnps %xmm0, %xmm0 97andnpd %xmm1, %xmm1 98vandnps %xmm2, %xmm2, %xmm2 99vandnpd %xmm1, %xmm1, %xmm1 100vandnps %ymm2, %ymm2, %ymm2 101vandnpd %ymm1, %ymm1, %ymm1 102vandnps %zmm2, %zmm2, %zmm2 103vandnpd %zmm1, %zmm1, %zmm1 104pandn %mm2, %mm2 105pandn %xmm2, %xmm2 106vpandn %xmm3, %xmm3, %xmm3 107vpandn %ymm3, %ymm3, %ymm3 108 109vpandnd %xmm19, %xmm19, %xmm19 110vpandnq %xmm19, %xmm19, %xmm19 111vpandnd %ymm19, %ymm19, %ymm19 112vpandnq %ymm19, %ymm19, %ymm19 113vpandnd %zmm19, %zmm19, %zmm19 114vpandnq %zmm19, %zmm19, %zmm19 115 116vandnps %xmm2, %xmm2, %xmm5 117vandnpd %xmm1, %xmm1, %xmm5 118vpandn %xmm3, %xmm3, %xmm5 119vandnps %ymm2, %ymm2, %ymm5 120vandnpd %ymm1, %ymm1, %ymm5 121vpandn %ymm3, %ymm3, %ymm5 122vandnps %zmm2, %zmm2, %zmm5 123vandnpd %zmm1, %zmm1, %zmm5 124 125vpandnd %xmm19, %xmm19, %xmm21 126vpandnq %xmm19, %xmm19, %xmm21 127vpandnd %ymm19, %ymm19, %ymm21 128vpandnq %ymm19, %ymm19, %ymm21 129vpandnd %zmm19, %zmm19, %zmm21 130vpandnq %zmm19, %zmm19, %zmm21 131 132xorps %xmm0, %xmm0 133xorpd %xmm1, %xmm1 134vxorps %xmm2, %xmm2, %xmm2 135vxorpd %xmm1, %xmm1, %xmm1 136vxorps %ymm2, %ymm2, %ymm2 137vxorpd %ymm1, %ymm1, %ymm1 138vxorps %zmm2, %zmm2, %zmm2 139vxorpd %zmm1, %zmm1, %zmm1 140pxor %mm2, %mm2 141pxor %xmm2, %xmm2 142vpxor %xmm3, %xmm3, %xmm3 143vpxor %ymm3, %ymm3, %ymm3 144 145vpxord %xmm19, %xmm19, %xmm19 146vpxorq %xmm19, %xmm19, %xmm19 147vpxord %ymm19, %ymm19, %ymm19 148vpxorq %ymm19, %ymm19, %ymm19 149vpxord %zmm19, %zmm19, %zmm19 150vpxorq %zmm19, %zmm19, %zmm19 151 152vxorps %xmm4, %xmm4, %xmm5 153vxorpd %xmm1, %xmm1, %xmm3 154vxorps %ymm4, %ymm4, %ymm5 155vxorpd %ymm1, %ymm1, %ymm3 156vxorps %zmm4, %zmm4, %zmm5 157vxorpd %zmm1, %zmm1, %zmm3 158vpxor %xmm3, %xmm3, %xmm5 159vpxor %ymm3, %ymm3, %ymm5 160 161vpxord %xmm19, %xmm19, %xmm21 162vpxorq %xmm19, %xmm19, %xmm21 163vpxord %ymm19, %ymm19, %ymm21 164vpxorq %ymm19, %ymm19, %ymm21 165vpxord %zmm19, %zmm19, %zmm21 166vpxorq %zmm19, %zmm19, %zmm21 167 168# CHECK: Iterations: 1 169# CHECK-NEXT: Instructions: 139 170# CHECK-NEXT: Total Cycles: 27 171# CHECK-NEXT: Total uOps: 139 172 173# CHECK: Dispatch Width: 6 174# CHECK-NEXT: uOps Per Cycle: 5.15 175# CHECK-NEXT: IPC: 5.15 176# CHECK-NEXT: Block RThroughput: 23.2 177 178# CHECK: Instruction Info: 179# CHECK-NEXT: [1]: #uOps 180# CHECK-NEXT: [2]: Latency 181# CHECK-NEXT: [3]: RThroughput 182# CHECK-NEXT: [4]: MayLoad 183# CHECK-NEXT: [5]: MayStore 184# CHECK-NEXT: [6]: HasSideEffects (U) 185 186# CHECK: [1] [2] [3] [4] [5] [6] Instructions: 187# CHECK-NEXT: 1 0 0.17 subl %eax, %eax 188# CHECK-NEXT: 1 0 0.17 subq %rax, %rax 189# CHECK-NEXT: 1 0 0.17 xorl %eax, %eax 190# CHECK-NEXT: 1 0 0.17 xorq %rax, %rax 191# CHECK-NEXT: 1 1 1.00 pcmpgtb %mm2, %mm2 192# CHECK-NEXT: 1 1 1.00 pcmpgtd %mm2, %mm2 193# CHECK-NEXT: 1 1 1.00 pcmpgtw %mm2, %mm2 194# CHECK-NEXT: 1 0 0.17 pcmpgtb %xmm2, %xmm2 195# CHECK-NEXT: 1 0 0.17 pcmpgtd %xmm2, %xmm2 196# CHECK-NEXT: 1 0 0.17 pcmpgtq %xmm2, %xmm2 197# CHECK-NEXT: 1 0 0.17 pcmpgtw %xmm2, %xmm2 198# CHECK-NEXT: 1 0 0.17 vpcmpgtb %xmm3, %xmm3, %xmm3 199# CHECK-NEXT: 1 0 0.17 vpcmpgtd %xmm3, %xmm3, %xmm3 200# CHECK-NEXT: 1 0 0.17 vpcmpgtq %xmm3, %xmm3, %xmm3 201# CHECK-NEXT: 1 0 0.17 vpcmpgtw %xmm3, %xmm3, %xmm3 202# CHECK-NEXT: 1 0 0.17 vpcmpgtb %xmm3, %xmm3, %xmm5 203# CHECK-NEXT: 1 0 0.17 vpcmpgtd %xmm3, %xmm3, %xmm5 204# CHECK-NEXT: 1 0 0.17 vpcmpgtq %xmm3, %xmm3, %xmm5 205# CHECK-NEXT: 1 0 0.17 vpcmpgtw %xmm3, %xmm3, %xmm5 206# CHECK-NEXT: 1 0 0.17 vpcmpgtb %ymm3, %ymm3, %ymm3 207# CHECK-NEXT: 1 0 0.17 vpcmpgtd %ymm3, %ymm3, %ymm3 208# CHECK-NEXT: 1 0 0.17 vpcmpgtq %ymm3, %ymm3, %ymm3 209# CHECK-NEXT: 1 0 0.17 vpcmpgtw %ymm3, %ymm3, %ymm3 210# CHECK-NEXT: 1 0 0.17 vpcmpgtb %ymm3, %ymm3, %ymm5 211# CHECK-NEXT: 1 0 0.17 vpcmpgtd %ymm3, %ymm3, %ymm5 212# CHECK-NEXT: 1 0 0.17 vpcmpgtq %ymm3, %ymm3, %ymm5 213# CHECK-NEXT: 1 0 0.17 vpcmpgtw %ymm3, %ymm3, %ymm5 214# CHECK-NEXT: 1 1 0.50 psubb %mm2, %mm2 215# CHECK-NEXT: 1 1 0.50 psubd %mm2, %mm2 216# CHECK-NEXT: 1 1 0.50 psubq %mm2, %mm2 217# CHECK-NEXT: 1 1 0.50 psubw %mm2, %mm2 218# CHECK-NEXT: 1 0 0.17 psubb %xmm2, %xmm2 219# CHECK-NEXT: 1 0 0.17 psubd %xmm2, %xmm2 220# CHECK-NEXT: 1 0 0.17 psubq %xmm2, %xmm2 221# CHECK-NEXT: 1 0 0.17 psubw %xmm2, %xmm2 222# CHECK-NEXT: 1 0 0.17 vpsubb %xmm3, %xmm3, %xmm3 223# CHECK-NEXT: 1 0 0.17 vpsubd %xmm3, %xmm3, %xmm3 224# CHECK-NEXT: 1 0 0.17 vpsubq %xmm3, %xmm3, %xmm3 225# CHECK-NEXT: 1 0 0.17 vpsubw %xmm3, %xmm3, %xmm3 226# CHECK-NEXT: 1 0 0.17 vpsubb %ymm3, %ymm3, %ymm3 227# CHECK-NEXT: 1 0 0.17 vpsubd %ymm3, %ymm3, %ymm3 228# CHECK-NEXT: 1 0 0.17 vpsubq %ymm3, %ymm3, %ymm3 229# CHECK-NEXT: 1 0 0.17 vpsubw %ymm3, %ymm3, %ymm3 230# CHECK-NEXT: 1 0 0.17 vpsubb %xmm3, %xmm3, %xmm5 231# CHECK-NEXT: 1 0 0.17 vpsubd %xmm3, %xmm3, %xmm5 232# CHECK-NEXT: 1 0 0.17 vpsubq %xmm3, %xmm3, %xmm5 233# CHECK-NEXT: 1 0 0.17 vpsubw %xmm3, %xmm3, %xmm5 234# CHECK-NEXT: 1 0 0.17 vpsubb %ymm3, %ymm3, %ymm5 235# CHECK-NEXT: 1 0 0.17 vpsubd %ymm3, %ymm3, %ymm5 236# CHECK-NEXT: 1 0 0.17 vpsubq %ymm3, %ymm3, %ymm5 237# CHECK-NEXT: 1 0 0.17 vpsubw %ymm3, %ymm3, %ymm5 238# CHECK-NEXT: 1 0 0.17 vpsubb %xmm19, %xmm19, %xmm19 239# CHECK-NEXT: 1 0 0.17 vpsubd %xmm19, %xmm19, %xmm19 240# CHECK-NEXT: 1 0 0.17 vpsubq %xmm19, %xmm19, %xmm19 241# CHECK-NEXT: 1 0 0.17 vpsubw %xmm19, %xmm19, %xmm19 242# CHECK-NEXT: 1 0 0.17 vpsubb %ymm19, %ymm19, %ymm19 243# CHECK-NEXT: 1 0 0.17 vpsubd %ymm19, %ymm19, %ymm19 244# CHECK-NEXT: 1 0 0.17 vpsubq %ymm19, %ymm19, %ymm19 245# CHECK-NEXT: 1 0 0.17 vpsubw %ymm19, %ymm19, %ymm19 246# CHECK-NEXT: 1 0 0.17 vpsubb %zmm19, %zmm19, %zmm19 247# CHECK-NEXT: 1 0 0.17 vpsubd %zmm19, %zmm19, %zmm19 248# CHECK-NEXT: 1 0 0.17 vpsubq %zmm19, %zmm19, %zmm19 249# CHECK-NEXT: 1 0 0.17 vpsubw %zmm19, %zmm19, %zmm19 250# CHECK-NEXT: 1 0 0.17 vpsubb %xmm19, %xmm19, %xmm21 251# CHECK-NEXT: 1 0 0.17 vpsubd %xmm19, %xmm19, %xmm21 252# CHECK-NEXT: 1 0 0.17 vpsubq %xmm19, %xmm19, %xmm21 253# CHECK-NEXT: 1 0 0.17 vpsubw %xmm19, %xmm19, %xmm21 254# CHECK-NEXT: 1 0 0.17 vpsubb %ymm19, %ymm19, %ymm21 255# CHECK-NEXT: 1 0 0.17 vpsubd %ymm19, %ymm19, %ymm21 256# CHECK-NEXT: 1 0 0.17 vpsubq %ymm19, %ymm19, %ymm21 257# CHECK-NEXT: 1 0 0.17 vpsubw %ymm19, %ymm19, %ymm21 258# CHECK-NEXT: 1 0 0.17 vpsubb %zmm19, %zmm19, %zmm21 259# CHECK-NEXT: 1 0 0.17 vpsubd %zmm19, %zmm19, %zmm21 260# CHECK-NEXT: 1 0 0.17 vpsubq %zmm19, %zmm19, %zmm21 261# CHECK-NEXT: 1 0 0.17 vpsubw %zmm19, %zmm19, %zmm21 262# CHECK-NEXT: 1 1 0.33 andnps %xmm0, %xmm0 263# CHECK-NEXT: 1 1 0.33 andnpd %xmm1, %xmm1 264# CHECK-NEXT: 1 1 0.33 vandnps %xmm2, %xmm2, %xmm2 265# CHECK-NEXT: 1 1 0.33 vandnpd %xmm1, %xmm1, %xmm1 266# CHECK-NEXT: 1 1 0.33 vandnps %ymm2, %ymm2, %ymm2 267# CHECK-NEXT: 1 1 0.33 vandnpd %ymm1, %ymm1, %ymm1 268# CHECK-NEXT: 1 1 0.50 vandnps %zmm2, %zmm2, %zmm2 269# CHECK-NEXT: 1 1 0.50 vandnpd %zmm1, %zmm1, %zmm1 270# CHECK-NEXT: 1 1 0.50 pandn %mm2, %mm2 271# CHECK-NEXT: 1 1 0.33 pandn %xmm2, %xmm2 272# CHECK-NEXT: 1 1 0.33 vpandn %xmm3, %xmm3, %xmm3 273# CHECK-NEXT: 1 1 0.33 vpandn %ymm3, %ymm3, %ymm3 274# CHECK-NEXT: 1 1 0.33 vpandnd %xmm19, %xmm19, %xmm19 275# CHECK-NEXT: 1 1 0.33 vpandnq %xmm19, %xmm19, %xmm19 276# CHECK-NEXT: 1 1 0.33 vpandnd %ymm19, %ymm19, %ymm19 277# CHECK-NEXT: 1 1 0.33 vpandnq %ymm19, %ymm19, %ymm19 278# CHECK-NEXT: 1 1 0.50 vpandnd %zmm19, %zmm19, %zmm19 279# CHECK-NEXT: 1 1 0.50 vpandnq %zmm19, %zmm19, %zmm19 280# CHECK-NEXT: 1 1 0.33 vandnps %xmm2, %xmm2, %xmm5 281# CHECK-NEXT: 1 1 0.33 vandnpd %xmm1, %xmm1, %xmm5 282# CHECK-NEXT: 1 1 0.33 vpandn %xmm3, %xmm3, %xmm5 283# CHECK-NEXT: 1 1 0.33 vandnps %ymm2, %ymm2, %ymm5 284# CHECK-NEXT: 1 1 0.33 vandnpd %ymm1, %ymm1, %ymm5 285# CHECK-NEXT: 1 1 0.33 vpandn %ymm3, %ymm3, %ymm5 286# CHECK-NEXT: 1 1 0.50 vandnps %zmm2, %zmm2, %zmm5 287# CHECK-NEXT: 1 1 0.50 vandnpd %zmm1, %zmm1, %zmm5 288# CHECK-NEXT: 1 1 0.33 vpandnd %xmm19, %xmm19, %xmm21 289# CHECK-NEXT: 1 1 0.33 vpandnq %xmm19, %xmm19, %xmm21 290# CHECK-NEXT: 1 1 0.33 vpandnd %ymm19, %ymm19, %ymm21 291# CHECK-NEXT: 1 1 0.33 vpandnq %ymm19, %ymm19, %ymm21 292# CHECK-NEXT: 1 1 0.50 vpandnd %zmm19, %zmm19, %zmm21 293# CHECK-NEXT: 1 1 0.50 vpandnq %zmm19, %zmm19, %zmm21 294# CHECK-NEXT: 1 0 0.17 xorps %xmm0, %xmm0 295# CHECK-NEXT: 1 0 0.17 xorpd %xmm1, %xmm1 296# CHECK-NEXT: 1 0 0.17 vxorps %xmm2, %xmm2, %xmm2 297# CHECK-NEXT: 1 0 0.17 vxorpd %xmm1, %xmm1, %xmm1 298# CHECK-NEXT: 1 0 0.17 vxorps %ymm2, %ymm2, %ymm2 299# CHECK-NEXT: 1 0 0.17 vxorpd %ymm1, %ymm1, %ymm1 300# CHECK-NEXT: 1 0 0.17 vxorps %zmm2, %zmm2, %zmm2 301# CHECK-NEXT: 1 0 0.17 vxorpd %zmm1, %zmm1, %zmm1 302# CHECK-NEXT: 1 1 0.50 pxor %mm2, %mm2 303# CHECK-NEXT: 1 0 0.17 pxor %xmm2, %xmm2 304# CHECK-NEXT: 1 0 0.17 vpxor %xmm3, %xmm3, %xmm3 305# CHECK-NEXT: 1 0 0.17 vpxor %ymm3, %ymm3, %ymm3 306# CHECK-NEXT: 1 0 0.17 vpxord %xmm19, %xmm19, %xmm19 307# CHECK-NEXT: 1 0 0.17 vpxorq %xmm19, %xmm19, %xmm19 308# CHECK-NEXT: 1 0 0.17 vpxord %ymm19, %ymm19, %ymm19 309# CHECK-NEXT: 1 0 0.17 vpxorq %ymm19, %ymm19, %ymm19 310# CHECK-NEXT: 1 0 0.17 vpxord %zmm19, %zmm19, %zmm19 311# CHECK-NEXT: 1 0 0.17 vpxorq %zmm19, %zmm19, %zmm19 312# CHECK-NEXT: 1 0 0.17 vxorps %xmm4, %xmm4, %xmm5 313# CHECK-NEXT: 1 0 0.17 vxorpd %xmm1, %xmm1, %xmm3 314# CHECK-NEXT: 1 0 0.17 vxorps %ymm4, %ymm4, %ymm5 315# CHECK-NEXT: 1 0 0.17 vxorpd %ymm1, %ymm1, %ymm3 316# CHECK-NEXT: 1 0 0.17 vxorps %zmm4, %zmm4, %zmm5 317# CHECK-NEXT: 1 0 0.17 vxorpd %zmm1, %zmm1, %zmm3 318# CHECK-NEXT: 1 0 0.17 vpxor %xmm3, %xmm3, %xmm5 319# CHECK-NEXT: 1 0 0.17 vpxor %ymm3, %ymm3, %ymm5 320# CHECK-NEXT: 1 0 0.17 vpxord %xmm19, %xmm19, %xmm21 321# CHECK-NEXT: 1 0 0.17 vpxorq %xmm19, %xmm19, %xmm21 322# CHECK-NEXT: 1 0 0.17 vpxord %ymm19, %ymm19, %ymm21 323# CHECK-NEXT: 1 0 0.17 vpxorq %ymm19, %ymm19, %ymm21 324# CHECK-NEXT: 1 0 0.17 vpxord %zmm19, %zmm19, %zmm21 325# CHECK-NEXT: 1 0 0.17 vpxorq %zmm19, %zmm19, %zmm21 326 327# CHECK: Register File statistics: 328# CHECK-NEXT: Total number of mappings created: 40 329# CHECK-NEXT: Max number of mappings used: 25 330 331# CHECK: Resources: 332# CHECK-NEXT: [0] - SKXDivider 333# CHECK-NEXT: [1] - SKXFPDivider 334# CHECK-NEXT: [2] - SKXPort0 335# CHECK-NEXT: [3] - SKXPort1 336# CHECK-NEXT: [4] - SKXPort2 337# CHECK-NEXT: [5] - SKXPort3 338# CHECK-NEXT: [6] - SKXPort4 339# CHECK-NEXT: [7] - SKXPort5 340# CHECK-NEXT: [8] - SKXPort6 341# CHECK-NEXT: [9] - SKXPort7 342 343# CHECK: Resource pressure per iteration: 344# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] 345# CHECK-NEXT: - - 16.00 10.00 - - - 14.00 - - 346 347# CHECK: Resource pressure by instruction: 348# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: 349# CHECK-NEXT: - - - - - - - - - - subl %eax, %eax 350# CHECK-NEXT: - - - - - - - - - - subq %rax, %rax 351# CHECK-NEXT: - - - - - - - - - - xorl %eax, %eax 352# CHECK-NEXT: - - - - - - - - - - xorq %rax, %rax 353# CHECK-NEXT: - - 1.00 - - - - - - - pcmpgtb %mm2, %mm2 354# CHECK-NEXT: - - 1.00 - - - - - - - pcmpgtd %mm2, %mm2 355# CHECK-NEXT: - - 1.00 - - - - - - - pcmpgtw %mm2, %mm2 356# CHECK-NEXT: - - - - - - - - - - pcmpgtb %xmm2, %xmm2 357# CHECK-NEXT: - - - - - - - - - - pcmpgtd %xmm2, %xmm2 358# CHECK-NEXT: - - - - - - - - - - pcmpgtq %xmm2, %xmm2 359# CHECK-NEXT: - - - - - - - - - - pcmpgtw %xmm2, %xmm2 360# CHECK-NEXT: - - - - - - - - - - vpcmpgtb %xmm3, %xmm3, %xmm3 361# CHECK-NEXT: - - - - - - - - - - vpcmpgtd %xmm3, %xmm3, %xmm3 362# CHECK-NEXT: - - - - - - - - - - vpcmpgtq %xmm3, %xmm3, %xmm3 363# CHECK-NEXT: - - - - - - - - - - vpcmpgtw %xmm3, %xmm3, %xmm3 364# CHECK-NEXT: - - - - - - - - - - vpcmpgtb %xmm3, %xmm3, %xmm5 365# CHECK-NEXT: - - - - - - - - - - vpcmpgtd %xmm3, %xmm3, %xmm5 366# CHECK-NEXT: - - - - - - - - - - vpcmpgtq %xmm3, %xmm3, %xmm5 367# CHECK-NEXT: - - - - - - - - - - vpcmpgtw %xmm3, %xmm3, %xmm5 368# CHECK-NEXT: - - - - - - - - - - vpcmpgtb %ymm3, %ymm3, %ymm3 369# CHECK-NEXT: - - - - - - - - - - vpcmpgtd %ymm3, %ymm3, %ymm3 370# CHECK-NEXT: - - - - - - - - - - vpcmpgtq %ymm3, %ymm3, %ymm3 371# CHECK-NEXT: - - - - - - - - - - vpcmpgtw %ymm3, %ymm3, %ymm3 372# CHECK-NEXT: - - - - - - - - - - vpcmpgtb %ymm3, %ymm3, %ymm5 373# CHECK-NEXT: - - - - - - - - - - vpcmpgtd %ymm3, %ymm3, %ymm5 374# CHECK-NEXT: - - - - - - - - - - vpcmpgtq %ymm3, %ymm3, %ymm5 375# CHECK-NEXT: - - - - - - - - - - vpcmpgtw %ymm3, %ymm3, %ymm5 376# CHECK-NEXT: - - - - - - - 1.00 - - psubb %mm2, %mm2 377# CHECK-NEXT: - - - - - - - 1.00 - - psubd %mm2, %mm2 378# CHECK-NEXT: - - 1.00 - - - - - - - psubq %mm2, %mm2 379# CHECK-NEXT: - - - - - - - 1.00 - - psubw %mm2, %mm2 380# CHECK-NEXT: - - - - - - - - - - psubb %xmm2, %xmm2 381# CHECK-NEXT: - - - - - - - - - - psubd %xmm2, %xmm2 382# CHECK-NEXT: - - - - - - - - - - psubq %xmm2, %xmm2 383# CHECK-NEXT: - - - - - - - - - - psubw %xmm2, %xmm2 384# CHECK-NEXT: - - - - - - - - - - vpsubb %xmm3, %xmm3, %xmm3 385# CHECK-NEXT: - - - - - - - - - - vpsubd %xmm3, %xmm3, %xmm3 386# CHECK-NEXT: - - - - - - - - - - vpsubq %xmm3, %xmm3, %xmm3 387# CHECK-NEXT: - - - - - - - - - - vpsubw %xmm3, %xmm3, %xmm3 388# CHECK-NEXT: - - - - - - - - - - vpsubb %ymm3, %ymm3, %ymm3 389# CHECK-NEXT: - - - - - - - - - - vpsubd %ymm3, %ymm3, %ymm3 390# CHECK-NEXT: - - - - - - - - - - vpsubq %ymm3, %ymm3, %ymm3 391# CHECK-NEXT: - - - - - - - - - - vpsubw %ymm3, %ymm3, %ymm3 392# CHECK-NEXT: - - - - - - - - - - vpsubb %xmm3, %xmm3, %xmm5 393# CHECK-NEXT: - - - - - - - - - - vpsubd %xmm3, %xmm3, %xmm5 394# CHECK-NEXT: - - - - - - - - - - vpsubq %xmm3, %xmm3, %xmm5 395# CHECK-NEXT: - - - - - - - - - - vpsubw %xmm3, %xmm3, %xmm5 396# CHECK-NEXT: - - - - - - - - - - vpsubb %ymm3, %ymm3, %ymm5 397# CHECK-NEXT: - - - - - - - - - - vpsubd %ymm3, %ymm3, %ymm5 398# CHECK-NEXT: - - - - - - - - - - vpsubq %ymm3, %ymm3, %ymm5 399# CHECK-NEXT: - - - - - - - - - - vpsubw %ymm3, %ymm3, %ymm5 400# CHECK-NEXT: - - - - - - - - - - vpsubb %xmm19, %xmm19, %xmm19 401# CHECK-NEXT: - - - - - - - - - - vpsubd %xmm19, %xmm19, %xmm19 402# CHECK-NEXT: - - - - - - - - - - vpsubq %xmm19, %xmm19, %xmm19 403# CHECK-NEXT: - - - - - - - - - - vpsubw %xmm19, %xmm19, %xmm19 404# CHECK-NEXT: - - - - - - - - - - vpsubb %ymm19, %ymm19, %ymm19 405# CHECK-NEXT: - - - - - - - - - - vpsubd %ymm19, %ymm19, %ymm19 406# CHECK-NEXT: - - - - - - - - - - vpsubq %ymm19, %ymm19, %ymm19 407# CHECK-NEXT: - - - - - - - - - - vpsubw %ymm19, %ymm19, %ymm19 408# CHECK-NEXT: - - - - - - - - - - vpsubb %zmm19, %zmm19, %zmm19 409# CHECK-NEXT: - - - - - - - - - - vpsubd %zmm19, %zmm19, %zmm19 410# CHECK-NEXT: - - - - - - - - - - vpsubq %zmm19, %zmm19, %zmm19 411# CHECK-NEXT: - - - - - - - - - - vpsubw %zmm19, %zmm19, %zmm19 412# CHECK-NEXT: - - - - - - - - - - vpsubb %xmm19, %xmm19, %xmm21 413# CHECK-NEXT: - - - - - - - - - - vpsubd %xmm19, %xmm19, %xmm21 414# CHECK-NEXT: - - - - - - - - - - vpsubq %xmm19, %xmm19, %xmm21 415# CHECK-NEXT: - - - - - - - - - - vpsubw %xmm19, %xmm19, %xmm21 416# CHECK-NEXT: - - - - - - - - - - vpsubb %ymm19, %ymm19, %ymm21 417# CHECK-NEXT: - - - - - - - - - - vpsubd %ymm19, %ymm19, %ymm21 418# CHECK-NEXT: - - - - - - - - - - vpsubq %ymm19, %ymm19, %ymm21 419# CHECK-NEXT: - - - - - - - - - - vpsubw %ymm19, %ymm19, %ymm21 420# CHECK-NEXT: - - - - - - - - - - vpsubb %zmm19, %zmm19, %zmm21 421# CHECK-NEXT: - - - - - - - - - - vpsubd %zmm19, %zmm19, %zmm21 422# CHECK-NEXT: - - - - - - - - - - vpsubq %zmm19, %zmm19, %zmm21 423# CHECK-NEXT: - - - - - - - - - - vpsubw %zmm19, %zmm19, %zmm21 424# CHECK-NEXT: - - - 1.00 - - - - - - andnps %xmm0, %xmm0 425# CHECK-NEXT: - - 1.00 - - - - - - - andnpd %xmm1, %xmm1 426# CHECK-NEXT: - - - - - - - 1.00 - - vandnps %xmm2, %xmm2, %xmm2 427# CHECK-NEXT: - - - 1.00 - - - - - - vandnpd %xmm1, %xmm1, %xmm1 428# CHECK-NEXT: - - 1.00 - - - - - - - vandnps %ymm2, %ymm2, %ymm2 429# CHECK-NEXT: - - - 1.00 - - - - - - vandnpd %ymm1, %ymm1, %ymm1 430# CHECK-NEXT: - - 1.00 - - - - - - - vandnps %zmm2, %zmm2, %zmm2 431# CHECK-NEXT: - - 1.00 - - - - - - - vandnpd %zmm1, %zmm1, %zmm1 432# CHECK-NEXT: - - - - - - - 1.00 - - pandn %mm2, %mm2 433# CHECK-NEXT: - - - 1.00 - - - - - - pandn %xmm2, %xmm2 434# CHECK-NEXT: - - - - - - - 1.00 - - vpandn %xmm3, %xmm3, %xmm3 435# CHECK-NEXT: - - - - - - - 1.00 - - vpandn %ymm3, %ymm3, %ymm3 436# CHECK-NEXT: - - - 1.00 - - - - - - vpandnd %xmm19, %xmm19, %xmm19 437# CHECK-NEXT: - - - 1.00 - - - - - - vpandnq %xmm19, %xmm19, %xmm19 438# CHECK-NEXT: - - - 1.00 - - - - - - vpandnd %ymm19, %ymm19, %ymm19 439# CHECK-NEXT: - - - 1.00 - - - - - - vpandnq %ymm19, %ymm19, %ymm19 440# CHECK-NEXT: - - 1.00 - - - - - - - vpandnd %zmm19, %zmm19, %zmm19 441# CHECK-NEXT: - - 1.00 - - - - - - - vpandnq %zmm19, %zmm19, %zmm19 442# CHECK-NEXT: - - 1.00 - - - - - - - vandnps %xmm2, %xmm2, %xmm5 443# CHECK-NEXT: - - - - - - - 1.00 - - vandnpd %xmm1, %xmm1, %xmm5 444# CHECK-NEXT: - - 1.00 - - - - - - - vpandn %xmm3, %xmm3, %xmm5 445# CHECK-NEXT: - - - - - - - 1.00 - - vandnps %ymm2, %ymm2, %ymm5 446# CHECK-NEXT: - - 1.00 - - - - - - - vandnpd %ymm1, %ymm1, %ymm5 447# CHECK-NEXT: - - - - - - - 1.00 - - vpandn %ymm3, %ymm3, %ymm5 448# CHECK-NEXT: - - 1.00 - - - - - - - vandnps %zmm2, %zmm2, %zmm5 449# CHECK-NEXT: - - - - - - - 1.00 - - vandnpd %zmm1, %zmm1, %zmm5 450# CHECK-NEXT: - - - 1.00 - - - - - - vpandnd %xmm19, %xmm19, %xmm21 451# CHECK-NEXT: - - 1.00 - - - - - - - vpandnq %xmm19, %xmm19, %xmm21 452# CHECK-NEXT: - - - - - - - 1.00 - - vpandnd %ymm19, %ymm19, %ymm21 453# CHECK-NEXT: - - - 1.00 - - - - - - vpandnq %ymm19, %ymm19, %ymm21 454# CHECK-NEXT: - - - - - - - 1.00 - - vpandnd %zmm19, %zmm19, %zmm21 455# CHECK-NEXT: - - 1.00 - - - - - - - vpandnq %zmm19, %zmm19, %zmm21 456# CHECK-NEXT: - - - - - - - - - - xorps %xmm0, %xmm0 457# CHECK-NEXT: - - - - - - - - - - xorpd %xmm1, %xmm1 458# CHECK-NEXT: - - - - - - - - - - vxorps %xmm2, %xmm2, %xmm2 459# CHECK-NEXT: - - - - - - - - - - vxorpd %xmm1, %xmm1, %xmm1 460# CHECK-NEXT: - - - - - - - - - - vxorps %ymm2, %ymm2, %ymm2 461# CHECK-NEXT: - - - - - - - - - - vxorpd %ymm1, %ymm1, %ymm1 462# CHECK-NEXT: - - - - - - - - - - vxorps %zmm2, %zmm2, %zmm2 463# CHECK-NEXT: - - - - - - - - - - vxorpd %zmm1, %zmm1, %zmm1 464# CHECK-NEXT: - - - - - - - 1.00 - - pxor %mm2, %mm2 465# CHECK-NEXT: - - - - - - - - - - pxor %xmm2, %xmm2 466# CHECK-NEXT: - - - - - - - - - - vpxor %xmm3, %xmm3, %xmm3 467# CHECK-NEXT: - - - - - - - - - - vpxor %ymm3, %ymm3, %ymm3 468# CHECK-NEXT: - - - - - - - - - - vpxord %xmm19, %xmm19, %xmm19 469# CHECK-NEXT: - - - - - - - - - - vpxorq %xmm19, %xmm19, %xmm19 470# CHECK-NEXT: - - - - - - - - - - vpxord %ymm19, %ymm19, %ymm19 471# CHECK-NEXT: - - - - - - - - - - vpxorq %ymm19, %ymm19, %ymm19 472# CHECK-NEXT: - - - - - - - - - - vpxord %zmm19, %zmm19, %zmm19 473# CHECK-NEXT: - - - - - - - - - - vpxorq %zmm19, %zmm19, %zmm19 474# CHECK-NEXT: - - - - - - - - - - vxorps %xmm4, %xmm4, %xmm5 475# CHECK-NEXT: - - - - - - - - - - vxorpd %xmm1, %xmm1, %xmm3 476# CHECK-NEXT: - - - - - - - - - - vxorps %ymm4, %ymm4, %ymm5 477# CHECK-NEXT: - - - - - - - - - - vxorpd %ymm1, %ymm1, %ymm3 478# CHECK-NEXT: - - - - - - - - - - vxorps %zmm4, %zmm4, %zmm5 479# CHECK-NEXT: - - - - - - - - - - vxorpd %zmm1, %zmm1, %zmm3 480# CHECK-NEXT: - - - - - - - - - - vpxor %xmm3, %xmm3, %xmm5 481# CHECK-NEXT: - - - - - - - - - - vpxor %ymm3, %ymm3, %ymm5 482# CHECK-NEXT: - - - - - - - - - - vpxord %xmm19, %xmm19, %xmm21 483# CHECK-NEXT: - - - - - - - - - - vpxorq %xmm19, %xmm19, %xmm21 484# CHECK-NEXT: - - - - - - - - - - vpxord %ymm19, %ymm19, %ymm21 485# CHECK-NEXT: - - - - - - - - - - vpxorq %ymm19, %ymm19, %ymm21 486# CHECK-NEXT: - - - - - - - - - - vpxord %zmm19, %zmm19, %zmm21 487# CHECK-NEXT: - - - - - - - - - - vpxorq %zmm19, %zmm19, %zmm21 488 489# CHECK: Timeline view: 490# CHECK-NEXT: 0123456789 491# CHECK-NEXT: Index 0123456789 0123456 492 493# CHECK: [0,0] DR . . . . .. subl %eax, %eax 494# CHECK-NEXT: [0,1] DR . . . . .. subq %rax, %rax 495# CHECK-NEXT: [0,2] DR . . . . .. xorl %eax, %eax 496# CHECK-NEXT: [0,3] DR . . . . .. xorq %rax, %rax 497# CHECK-NEXT: [0,4] DeER . . . . .. pcmpgtb %mm2, %mm2 498# CHECK-NEXT: [0,5] D=eER. . . . .. pcmpgtd %mm2, %mm2 499# CHECK-NEXT: [0,6] .D=eER . . . .. pcmpgtw %mm2, %mm2 500# CHECK-NEXT: [0,7] .D---R . . . .. pcmpgtb %xmm2, %xmm2 501# CHECK-NEXT: [0,8] .D---R . . . .. pcmpgtd %xmm2, %xmm2 502# CHECK-NEXT: [0,9] .D---R . . . .. pcmpgtq %xmm2, %xmm2 503# CHECK-NEXT: [0,10] .D---R . . . .. pcmpgtw %xmm2, %xmm2 504# CHECK-NEXT: [0,11] .D---R . . . .. vpcmpgtb %xmm3, %xmm3, %xmm3 505# CHECK-NEXT: [0,12] . D--R . . . .. vpcmpgtd %xmm3, %xmm3, %xmm3 506# CHECK-NEXT: [0,13] . D--R . . . .. vpcmpgtq %xmm3, %xmm3, %xmm3 507# CHECK-NEXT: [0,14] . D--R . . . .. vpcmpgtw %xmm3, %xmm3, %xmm3 508# CHECK-NEXT: [0,15] . D--R . . . .. vpcmpgtb %xmm3, %xmm3, %xmm5 509# CHECK-NEXT: [0,16] . D--R . . . .. vpcmpgtd %xmm3, %xmm3, %xmm5 510# CHECK-NEXT: [0,17] . D--R . . . .. vpcmpgtq %xmm3, %xmm3, %xmm5 511# CHECK-NEXT: [0,18] . D-R . . . .. vpcmpgtw %xmm3, %xmm3, %xmm5 512# CHECK-NEXT: [0,19] . D-R . . . .. vpcmpgtb %ymm3, %ymm3, %ymm3 513# CHECK-NEXT: [0,20] . D-R . . . .. vpcmpgtd %ymm3, %ymm3, %ymm3 514# CHECK-NEXT: [0,21] . D-R . . . .. vpcmpgtq %ymm3, %ymm3, %ymm3 515# CHECK-NEXT: [0,22] . D-R . . . .. vpcmpgtw %ymm3, %ymm3, %ymm3 516# CHECK-NEXT: [0,23] . D-R . . . .. vpcmpgtb %ymm3, %ymm3, %ymm5 517# CHECK-NEXT: [0,24] . DR . . . .. vpcmpgtd %ymm3, %ymm3, %ymm5 518# CHECK-NEXT: [0,25] . DR . . . .. vpcmpgtq %ymm3, %ymm3, %ymm5 519# CHECK-NEXT: [0,26] . DR . . . .. vpcmpgtw %ymm3, %ymm3, %ymm5 520# CHECK-NEXT: [0,27] . DeER . . . .. psubb %mm2, %mm2 521# CHECK-NEXT: [0,28] . D=eER . . . .. psubd %mm2, %mm2 522# CHECK-NEXT: [0,29] . D==eER. . . .. psubq %mm2, %mm2 523# CHECK-NEXT: [0,30] . D==eER . . .. psubw %mm2, %mm2 524# CHECK-NEXT: [0,31] . D----R . . .. psubb %xmm2, %xmm2 525# CHECK-NEXT: [0,32] . D----R . . .. psubd %xmm2, %xmm2 526# CHECK-NEXT: [0,33] . D----R . . .. psubq %xmm2, %xmm2 527# CHECK-NEXT: [0,34] . D----R . . .. psubw %xmm2, %xmm2 528# CHECK-NEXT: [0,35] . D----R . . .. vpsubb %xmm3, %xmm3, %xmm3 529# CHECK-NEXT: [0,36] . .D---R . . .. vpsubd %xmm3, %xmm3, %xmm3 530# CHECK-NEXT: [0,37] . .D---R . . .. vpsubq %xmm3, %xmm3, %xmm3 531# CHECK-NEXT: [0,38] . .D---R . . .. vpsubw %xmm3, %xmm3, %xmm3 532# CHECK-NEXT: [0,39] . .D---R . . .. vpsubb %ymm3, %ymm3, %ymm3 533# CHECK-NEXT: [0,40] . .D---R . . .. vpsubd %ymm3, %ymm3, %ymm3 534# CHECK-NEXT: [0,41] . .D---R . . .. vpsubq %ymm3, %ymm3, %ymm3 535# CHECK-NEXT: [0,42] . . D--R . . .. vpsubw %ymm3, %ymm3, %ymm3 536# CHECK-NEXT: [0,43] . . D--R . . .. vpsubb %xmm3, %xmm3, %xmm5 537# CHECK-NEXT: [0,44] . . D--R . . .. vpsubd %xmm3, %xmm3, %xmm5 538# CHECK-NEXT: [0,45] . . D--R . . .. vpsubq %xmm3, %xmm3, %xmm5 539# CHECK-NEXT: [0,46] . . D--R . . .. vpsubw %xmm3, %xmm3, %xmm5 540# CHECK-NEXT: [0,47] . . D--R . . .. vpsubb %ymm3, %ymm3, %ymm5 541# CHECK-NEXT: [0,48] . . D-R . . .. vpsubd %ymm3, %ymm3, %ymm5 542# CHECK-NEXT: [0,49] . . D-R . . .. vpsubq %ymm3, %ymm3, %ymm5 543# CHECK-NEXT: [0,50] . . D-R . . .. vpsubw %ymm3, %ymm3, %ymm5 544# CHECK-NEXT: [0,51] . . D-R . . .. vpsubb %xmm19, %xmm19, %xmm19 545# CHECK-NEXT: [0,52] . . D-R . . .. vpsubd %xmm19, %xmm19, %xmm19 546# CHECK-NEXT: [0,53] . . D-R . . .. vpsubq %xmm19, %xmm19, %xmm19 547# CHECK-NEXT: [0,54] . . DR . . .. vpsubw %xmm19, %xmm19, %xmm19 548# CHECK-NEXT: [0,55] . . DR . . .. vpsubb %ymm19, %ymm19, %ymm19 549# CHECK-NEXT: [0,56] . . DR . . .. vpsubd %ymm19, %ymm19, %ymm19 550# CHECK-NEXT: [0,57] . . DR . . .. vpsubq %ymm19, %ymm19, %ymm19 551# CHECK-NEXT: [0,58] . . DR . . .. vpsubw %ymm19, %ymm19, %ymm19 552# CHECK-NEXT: [0,59] . . DR . . .. vpsubb %zmm19, %zmm19, %zmm19 553# CHECK-NEXT: [0,60] . . DR . . .. vpsubd %zmm19, %zmm19, %zmm19 554# CHECK-NEXT: [0,61] . . DR . . .. vpsubq %zmm19, %zmm19, %zmm19 555# CHECK-NEXT: [0,62] . . DR . . .. vpsubw %zmm19, %zmm19, %zmm19 556# CHECK-NEXT: [0,63] . . DR . . .. vpsubb %xmm19, %xmm19, %xmm21 557# CHECK-NEXT: [0,64] . . DR . . .. vpsubd %xmm19, %xmm19, %xmm21 558# CHECK-NEXT: [0,65] . . DR . . .. vpsubq %xmm19, %xmm19, %xmm21 559# CHECK-NEXT: [0,66] . . .DR . . .. vpsubw %xmm19, %xmm19, %xmm21 560# CHECK-NEXT: [0,67] . . .DR . . .. vpsubb %ymm19, %ymm19, %ymm21 561# CHECK-NEXT: [0,68] . . .DR . . .. vpsubd %ymm19, %ymm19, %ymm21 562# CHECK-NEXT: [0,69] . . .DR . . .. vpsubq %ymm19, %ymm19, %ymm21 563# CHECK-NEXT: [0,70] . . .DR . . .. vpsubw %ymm19, %ymm19, %ymm21 564# CHECK-NEXT: [0,71] . . .DR . . .. vpsubb %zmm19, %zmm19, %zmm21 565# CHECK-NEXT: [0,72] . . . DR . . .. vpsubd %zmm19, %zmm19, %zmm21 566# CHECK-NEXT: [0,73] . . . DR . . .. vpsubq %zmm19, %zmm19, %zmm21 567# CHECK-NEXT: [0,74] . . . DR . . .. vpsubw %zmm19, %zmm19, %zmm21 568# CHECK-NEXT: [0,75] . . . DeER . .. andnps %xmm0, %xmm0 569# CHECK-NEXT: [0,76] . . . DeER . .. andnpd %xmm1, %xmm1 570# CHECK-NEXT: [0,77] . . . DeER . .. vandnps %xmm2, %xmm2, %xmm2 571# CHECK-NEXT: [0,78] . . . DeER . .. vandnpd %xmm1, %xmm1, %xmm1 572# CHECK-NEXT: [0,79] . . . DeER . .. vandnps %ymm2, %ymm2, %ymm2 573# CHECK-NEXT: [0,80] . . . D=eER . .. vandnpd %ymm1, %ymm1, %ymm1 574# CHECK-NEXT: [0,81] . . . D=eER . .. vandnps %zmm2, %zmm2, %zmm2 575# CHECK-NEXT: [0,82] . . . D==eER . .. vandnpd %zmm1, %zmm1, %zmm1 576# CHECK-NEXT: [0,83] . . . DeE--R . .. pandn %mm2, %mm2 577# CHECK-NEXT: [0,84] . . . D=eER . .. pandn %xmm2, %xmm2 578# CHECK-NEXT: [0,85] . . . DeE-R . .. vpandn %xmm3, %xmm3, %xmm3 579# CHECK-NEXT: [0,86] . . . D=eER . .. vpandn %ymm3, %ymm3, %ymm3 580# CHECK-NEXT: [0,87] . . . D==eER. .. vpandnd %xmm19, %xmm19, %xmm19 581# CHECK-NEXT: [0,88] . . . D===eER .. vpandnq %xmm19, %xmm19, %xmm19 582# CHECK-NEXT: [0,89] . . . D====eER .. vpandnd %ymm19, %ymm19, %ymm19 583# CHECK-NEXT: [0,90] . . . D====eER .. vpandnq %ymm19, %ymm19, %ymm19 584# CHECK-NEXT: [0,91] . . . D=====eER .. vpandnd %zmm19, %zmm19, %zmm19 585# CHECK-NEXT: [0,92] . . . D======eER.. vpandnq %zmm19, %zmm19, %zmm19 586# CHECK-NEXT: [0,93] . . . D=eE-----R.. vandnps %xmm2, %xmm2, %xmm5 587# CHECK-NEXT: [0,94] . . . D=eE-----R.. vandnpd %xmm1, %xmm1, %xmm5 588# CHECK-NEXT: [0,95] . . . D==eE----R.. vpandn %xmm3, %xmm3, %xmm5 589# CHECK-NEXT: [0,96] . . . .D=eE----R.. vandnps %ymm2, %ymm2, %ymm5 590# CHECK-NEXT: [0,97] . . . .D==eE---R.. vandnpd %ymm1, %ymm1, %ymm5 591# CHECK-NEXT: [0,98] . . . .D==eE---R.. vpandn %ymm3, %ymm3, %ymm5 592# CHECK-NEXT: [0,99] . . . .D===eE--R.. vandnps %zmm2, %zmm2, %zmm5 593# CHECK-NEXT: [0,100] . . . .D===eE--R.. vandnpd %zmm1, %zmm1, %zmm5 594# CHECK-NEXT: [0,101] . . . .D======eER. vpandnd %xmm19, %xmm19, %xmm21 595# CHECK-NEXT: [0,102] . . . . D=====eER. vpandnq %xmm19, %xmm19, %xmm21 596# CHECK-NEXT: [0,103] . . . . D=====eER. vpandnd %ymm19, %ymm19, %ymm21 597# CHECK-NEXT: [0,104] . . . . D======eER vpandnq %ymm19, %ymm19, %ymm21 598# CHECK-NEXT: [0,105] . . . . D======eER vpandnd %zmm19, %zmm19, %zmm21 599# CHECK-NEXT: [0,106] . . . . D======eER vpandnq %zmm19, %zmm19, %zmm21 600# CHECK-NEXT: [0,107] . . . . D--------R xorps %xmm0, %xmm0 601# CHECK-NEXT: [0,108] . . . . D-------R xorpd %xmm1, %xmm1 602# CHECK-NEXT: [0,109] . . . . D-------R vxorps %xmm2, %xmm2, %xmm2 603# CHECK-NEXT: [0,110] . . . . D-------R vxorpd %xmm1, %xmm1, %xmm1 604# CHECK-NEXT: [0,111] . . . . D-------R vxorps %ymm2, %ymm2, %ymm2 605# CHECK-NEXT: [0,112] . . . . D-------R vxorpd %ymm1, %ymm1, %ymm1 606# CHECK-NEXT: [0,113] . . . . D-------R vxorps %zmm2, %zmm2, %zmm2 607# CHECK-NEXT: [0,114] . . . . D------R vxorpd %zmm1, %zmm1, %zmm1 608# CHECK-NEXT: [0,115] . . . . D=eE---R pxor %mm2, %mm2 609# CHECK-NEXT: [0,116] . . . . D------R pxor %xmm2, %xmm2 610# CHECK-NEXT: [0,117] . . . . D------R vpxor %xmm3, %xmm3, %xmm3 611# CHECK-NEXT: [0,118] . . . . D------R vpxor %ymm3, %ymm3, %ymm3 612# CHECK-NEXT: [0,119] . . . . D------R vpxord %xmm19, %xmm19, %xmm19 613# CHECK-NEXT: [0,120] . . . . D-----R vpxorq %xmm19, %xmm19, %xmm19 614# CHECK-NEXT: [0,121] . . . . D-----R vpxord %ymm19, %ymm19, %ymm19 615# CHECK-NEXT: [0,122] . . . . D-----R vpxorq %ymm19, %ymm19, %ymm19 616# CHECK-NEXT: [0,123] . . . . D-----R vpxord %zmm19, %zmm19, %zmm19 617# CHECK-NEXT: [0,124] . . . . D-----R vpxorq %zmm19, %zmm19, %zmm19 618# CHECK-NEXT: [0,125] . . . . D-----R vxorps %xmm4, %xmm4, %xmm5 619# CHECK-NEXT: [0,126] . . . . .D----R vxorpd %xmm1, %xmm1, %xmm3 620# CHECK-NEXT: [0,127] . . . . .D----R vxorps %ymm4, %ymm4, %ymm5 621# CHECK-NEXT: [0,128] . . . . .D----R vxorpd %ymm1, %ymm1, %ymm3 622# CHECK-NEXT: [0,129] . . . . .D----R vxorps %zmm4, %zmm4, %zmm5 623# CHECK-NEXT: [0,130] . . . . .D----R vxorpd %zmm1, %zmm1, %zmm3 624# CHECK-NEXT: [0,131] . . . . .D----R vpxor %xmm3, %xmm3, %xmm5 625# CHECK-NEXT: [0,132] . . . . . D---R vpxor %ymm3, %ymm3, %ymm5 626# CHECK-NEXT: [0,133] . . . . . D---R vpxord %xmm19, %xmm19, %xmm21 627# CHECK-NEXT: [0,134] . . . . . D---R vpxorq %xmm19, %xmm19, %xmm21 628# CHECK-NEXT: [0,135] . . . . . D---R vpxord %ymm19, %ymm19, %ymm21 629# CHECK-NEXT: [0,136] . . . . . D---R vpxorq %ymm19, %ymm19, %ymm21 630# CHECK-NEXT: [0,137] . . . . . D---R vpxord %zmm19, %zmm19, %zmm21 631# CHECK-NEXT: [0,138] . . . . . D--R vpxorq %zmm19, %zmm19, %zmm21 632 633# CHECK: Average Wait times (based on the timeline view): 634# CHECK-NEXT: [0]: Executions 635# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue 636# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready 637# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage 638 639# CHECK: [0] [1] [2] [3] 640# CHECK-NEXT: 0. 1 0.0 0.0 0.0 subl %eax, %eax 641# CHECK-NEXT: 1. 1 0.0 0.0 0.0 subq %rax, %rax 642# CHECK-NEXT: 2. 1 0.0 0.0 0.0 xorl %eax, %eax 643# CHECK-NEXT: 3. 1 0.0 0.0 0.0 xorq %rax, %rax 644# CHECK-NEXT: 4. 1 1.0 1.0 0.0 pcmpgtb %mm2, %mm2 645# CHECK-NEXT: 5. 1 2.0 0.0 0.0 pcmpgtd %mm2, %mm2 646# CHECK-NEXT: 6. 1 2.0 0.0 0.0 pcmpgtw %mm2, %mm2 647# CHECK-NEXT: 7. 1 0.0 0.0 3.0 pcmpgtb %xmm2, %xmm2 648# CHECK-NEXT: 8. 1 0.0 0.0 3.0 pcmpgtd %xmm2, %xmm2 649# CHECK-NEXT: 9. 1 0.0 0.0 3.0 pcmpgtq %xmm2, %xmm2 650# CHECK-NEXT: 10. 1 0.0 0.0 3.0 pcmpgtw %xmm2, %xmm2 651# CHECK-NEXT: 11. 1 0.0 0.0 3.0 vpcmpgtb %xmm3, %xmm3, %xmm3 652# CHECK-NEXT: 12. 1 0.0 0.0 2.0 vpcmpgtd %xmm3, %xmm3, %xmm3 653# CHECK-NEXT: 13. 1 0.0 0.0 2.0 vpcmpgtq %xmm3, %xmm3, %xmm3 654# CHECK-NEXT: 14. 1 0.0 0.0 2.0 vpcmpgtw %xmm3, %xmm3, %xmm3 655# CHECK-NEXT: 15. 1 0.0 0.0 2.0 vpcmpgtb %xmm3, %xmm3, %xmm5 656# CHECK-NEXT: 16. 1 0.0 0.0 2.0 vpcmpgtd %xmm3, %xmm3, %xmm5 657# CHECK-NEXT: 17. 1 0.0 0.0 2.0 vpcmpgtq %xmm3, %xmm3, %xmm5 658# CHECK-NEXT: 18. 1 0.0 0.0 1.0 vpcmpgtw %xmm3, %xmm3, %xmm5 659# CHECK-NEXT: 19. 1 0.0 0.0 1.0 vpcmpgtb %ymm3, %ymm3, %ymm3 660# CHECK-NEXT: 20. 1 0.0 0.0 1.0 vpcmpgtd %ymm3, %ymm3, %ymm3 661# CHECK-NEXT: 21. 1 0.0 0.0 1.0 vpcmpgtq %ymm3, %ymm3, %ymm3 662# CHECK-NEXT: 22. 1 0.0 0.0 1.0 vpcmpgtw %ymm3, %ymm3, %ymm3 663# CHECK-NEXT: 23. 1 0.0 0.0 1.0 vpcmpgtb %ymm3, %ymm3, %ymm5 664# CHECK-NEXT: 24. 1 0.0 0.0 0.0 vpcmpgtd %ymm3, %ymm3, %ymm5 665# CHECK-NEXT: 25. 1 0.0 0.0 0.0 vpcmpgtq %ymm3, %ymm3, %ymm5 666# CHECK-NEXT: 26. 1 0.0 0.0 0.0 vpcmpgtw %ymm3, %ymm3, %ymm5 667# CHECK-NEXT: 27. 1 1.0 1.0 0.0 psubb %mm2, %mm2 668# CHECK-NEXT: 28. 1 2.0 0.0 0.0 psubd %mm2, %mm2 669# CHECK-NEXT: 29. 1 3.0 0.0 0.0 psubq %mm2, %mm2 670# CHECK-NEXT: 30. 1 3.0 0.0 0.0 psubw %mm2, %mm2 671# CHECK-NEXT: 31. 1 0.0 0.0 4.0 psubb %xmm2, %xmm2 672# CHECK-NEXT: 32. 1 0.0 0.0 4.0 psubd %xmm2, %xmm2 673# CHECK-NEXT: 33. 1 0.0 0.0 4.0 psubq %xmm2, %xmm2 674# CHECK-NEXT: 34. 1 0.0 0.0 4.0 psubw %xmm2, %xmm2 675# CHECK-NEXT: 35. 1 0.0 0.0 4.0 vpsubb %xmm3, %xmm3, %xmm3 676# CHECK-NEXT: 36. 1 0.0 0.0 3.0 vpsubd %xmm3, %xmm3, %xmm3 677# CHECK-NEXT: 37. 1 0.0 0.0 3.0 vpsubq %xmm3, %xmm3, %xmm3 678# CHECK-NEXT: 38. 1 0.0 0.0 3.0 vpsubw %xmm3, %xmm3, %xmm3 679# CHECK-NEXT: 39. 1 0.0 0.0 3.0 vpsubb %ymm3, %ymm3, %ymm3 680# CHECK-NEXT: 40. 1 0.0 0.0 3.0 vpsubd %ymm3, %ymm3, %ymm3 681# CHECK-NEXT: 41. 1 0.0 0.0 3.0 vpsubq %ymm3, %ymm3, %ymm3 682# CHECK-NEXT: 42. 1 0.0 0.0 2.0 vpsubw %ymm3, %ymm3, %ymm3 683# CHECK-NEXT: 43. 1 0.0 0.0 2.0 vpsubb %xmm3, %xmm3, %xmm5 684# CHECK-NEXT: 44. 1 0.0 0.0 2.0 vpsubd %xmm3, %xmm3, %xmm5 685# CHECK-NEXT: 45. 1 0.0 0.0 2.0 vpsubq %xmm3, %xmm3, %xmm5 686# CHECK-NEXT: 46. 1 0.0 0.0 2.0 vpsubw %xmm3, %xmm3, %xmm5 687# CHECK-NEXT: 47. 1 0.0 0.0 2.0 vpsubb %ymm3, %ymm3, %ymm5 688# CHECK-NEXT: 48. 1 0.0 0.0 1.0 vpsubd %ymm3, %ymm3, %ymm5 689# CHECK-NEXT: 49. 1 0.0 0.0 1.0 vpsubq %ymm3, %ymm3, %ymm5 690# CHECK-NEXT: 50. 1 0.0 0.0 1.0 vpsubw %ymm3, %ymm3, %ymm5 691# CHECK-NEXT: 51. 1 0.0 0.0 1.0 vpsubb %xmm19, %xmm19, %xmm19 692# CHECK-NEXT: 52. 1 0.0 0.0 1.0 vpsubd %xmm19, %xmm19, %xmm19 693# CHECK-NEXT: 53. 1 0.0 0.0 1.0 vpsubq %xmm19, %xmm19, %xmm19 694# CHECK-NEXT: 54. 1 0.0 0.0 0.0 vpsubw %xmm19, %xmm19, %xmm19 695# CHECK-NEXT: 55. 1 0.0 0.0 0.0 vpsubb %ymm19, %ymm19, %ymm19 696# CHECK-NEXT: 56. 1 0.0 0.0 0.0 vpsubd %ymm19, %ymm19, %ymm19 697# CHECK-NEXT: 57. 1 0.0 0.0 0.0 vpsubq %ymm19, %ymm19, %ymm19 698# CHECK-NEXT: 58. 1 0.0 0.0 0.0 vpsubw %ymm19, %ymm19, %ymm19 699# CHECK-NEXT: 59. 1 0.0 0.0 0.0 vpsubb %zmm19, %zmm19, %zmm19 700# CHECK-NEXT: 60. 1 0.0 0.0 0.0 vpsubd %zmm19, %zmm19, %zmm19 701# CHECK-NEXT: 61. 1 0.0 0.0 0.0 vpsubq %zmm19, %zmm19, %zmm19 702# CHECK-NEXT: 62. 1 0.0 0.0 0.0 vpsubw %zmm19, %zmm19, %zmm19 703# CHECK-NEXT: 63. 1 0.0 0.0 0.0 vpsubb %xmm19, %xmm19, %xmm21 704# CHECK-NEXT: 64. 1 0.0 0.0 0.0 vpsubd %xmm19, %xmm19, %xmm21 705# CHECK-NEXT: 65. 1 0.0 0.0 0.0 vpsubq %xmm19, %xmm19, %xmm21 706# CHECK-NEXT: 66. 1 0.0 0.0 0.0 vpsubw %xmm19, %xmm19, %xmm21 707# CHECK-NEXT: 67. 1 0.0 0.0 0.0 vpsubb %ymm19, %ymm19, %ymm21 708# CHECK-NEXT: 68. 1 0.0 0.0 0.0 vpsubd %ymm19, %ymm19, %ymm21 709# CHECK-NEXT: 69. 1 0.0 0.0 0.0 vpsubq %ymm19, %ymm19, %ymm21 710# CHECK-NEXT: 70. 1 0.0 0.0 0.0 vpsubw %ymm19, %ymm19, %ymm21 711# CHECK-NEXT: 71. 1 0.0 0.0 0.0 vpsubb %zmm19, %zmm19, %zmm21 712# CHECK-NEXT: 72. 1 0.0 0.0 0.0 vpsubd %zmm19, %zmm19, %zmm21 713# CHECK-NEXT: 73. 1 0.0 0.0 0.0 vpsubq %zmm19, %zmm19, %zmm21 714# CHECK-NEXT: 74. 1 0.0 0.0 0.0 vpsubw %zmm19, %zmm19, %zmm21 715# CHECK-NEXT: 75. 1 1.0 1.0 0.0 andnps %xmm0, %xmm0 716# CHECK-NEXT: 76. 1 1.0 1.0 0.0 andnpd %xmm1, %xmm1 717# CHECK-NEXT: 77. 1 1.0 1.0 0.0 vandnps %xmm2, %xmm2, %xmm2 718# CHECK-NEXT: 78. 1 1.0 0.0 0.0 vandnpd %xmm1, %xmm1, %xmm1 719# CHECK-NEXT: 79. 1 1.0 0.0 0.0 vandnps %ymm2, %ymm2, %ymm2 720# CHECK-NEXT: 80. 1 2.0 0.0 0.0 vandnpd %ymm1, %ymm1, %ymm1 721# CHECK-NEXT: 81. 1 2.0 0.0 0.0 vandnps %zmm2, %zmm2, %zmm2 722# CHECK-NEXT: 82. 1 3.0 0.0 0.0 vandnpd %zmm1, %zmm1, %zmm1 723# CHECK-NEXT: 83. 1 1.0 1.0 2.0 pandn %mm2, %mm2 724# CHECK-NEXT: 84. 1 2.0 0.0 0.0 pandn %xmm2, %xmm2 725# CHECK-NEXT: 85. 1 1.0 1.0 1.0 vpandn %xmm3, %xmm3, %xmm3 726# CHECK-NEXT: 86. 1 2.0 0.0 0.0 vpandn %ymm3, %ymm3, %ymm3 727# CHECK-NEXT: 87. 1 3.0 3.0 0.0 vpandnd %xmm19, %xmm19, %xmm19 728# CHECK-NEXT: 88. 1 4.0 0.0 0.0 vpandnq %xmm19, %xmm19, %xmm19 729# CHECK-NEXT: 89. 1 5.0 0.0 0.0 vpandnd %ymm19, %ymm19, %ymm19 730# CHECK-NEXT: 90. 1 5.0 0.0 0.0 vpandnq %ymm19, %ymm19, %ymm19 731# CHECK-NEXT: 91. 1 6.0 0.0 0.0 vpandnd %zmm19, %zmm19, %zmm19 732# CHECK-NEXT: 92. 1 7.0 0.0 0.0 vpandnq %zmm19, %zmm19, %zmm19 733# CHECK-NEXT: 93. 1 2.0 0.0 5.0 vandnps %xmm2, %xmm2, %xmm5 734# CHECK-NEXT: 94. 1 2.0 0.0 5.0 vandnpd %xmm1, %xmm1, %xmm5 735# CHECK-NEXT: 95. 1 3.0 1.0 4.0 vpandn %xmm3, %xmm3, %xmm5 736# CHECK-NEXT: 96. 1 2.0 1.0 4.0 vandnps %ymm2, %ymm2, %ymm5 737# CHECK-NEXT: 97. 1 3.0 2.0 3.0 vandnpd %ymm1, %ymm1, %ymm5 738# CHECK-NEXT: 98. 1 3.0 2.0 3.0 vpandn %ymm3, %ymm3, %ymm5 739# CHECK-NEXT: 99. 1 4.0 3.0 2.0 vandnps %zmm2, %zmm2, %zmm5 740# CHECK-NEXT: 100. 1 4.0 3.0 2.0 vandnpd %zmm1, %zmm1, %zmm5 741# CHECK-NEXT: 101. 1 7.0 0.0 0.0 vpandnd %xmm19, %xmm19, %xmm21 742# CHECK-NEXT: 102. 1 6.0 0.0 0.0 vpandnq %xmm19, %xmm19, %xmm21 743# CHECK-NEXT: 103. 1 6.0 0.0 0.0 vpandnd %ymm19, %ymm19, %ymm21 744# CHECK-NEXT: 104. 1 7.0 1.0 0.0 vpandnq %ymm19, %ymm19, %ymm21 745# CHECK-NEXT: 105. 1 7.0 1.0 0.0 vpandnd %zmm19, %zmm19, %zmm21 746# CHECK-NEXT: 106. 1 7.0 1.0 0.0 vpandnq %zmm19, %zmm19, %zmm21 747# CHECK-NEXT: 107. 1 0.0 0.0 8.0 xorps %xmm0, %xmm0 748# CHECK-NEXT: 108. 1 0.0 0.0 7.0 xorpd %xmm1, %xmm1 749# CHECK-NEXT: 109. 1 0.0 0.0 7.0 vxorps %xmm2, %xmm2, %xmm2 750# CHECK-NEXT: 110. 1 0.0 0.0 7.0 vxorpd %xmm1, %xmm1, %xmm1 751# CHECK-NEXT: 111. 1 0.0 0.0 7.0 vxorps %ymm2, %ymm2, %ymm2 752# CHECK-NEXT: 112. 1 0.0 0.0 7.0 vxorpd %ymm1, %ymm1, %ymm1 753# CHECK-NEXT: 113. 1 0.0 0.0 7.0 vxorps %zmm2, %zmm2, %zmm2 754# CHECK-NEXT: 114. 1 0.0 0.0 6.0 vxorpd %zmm1, %zmm1, %zmm1 755# CHECK-NEXT: 115. 1 2.0 2.0 3.0 pxor %mm2, %mm2 756# CHECK-NEXT: 116. 1 0.0 0.0 6.0 pxor %xmm2, %xmm2 757# CHECK-NEXT: 117. 1 0.0 0.0 6.0 vpxor %xmm3, %xmm3, %xmm3 758# CHECK-NEXT: 118. 1 0.0 0.0 6.0 vpxor %ymm3, %ymm3, %ymm3 759# CHECK-NEXT: 119. 1 0.0 0.0 6.0 vpxord %xmm19, %xmm19, %xmm19 760# CHECK-NEXT: 120. 1 0.0 0.0 5.0 vpxorq %xmm19, %xmm19, %xmm19 761# CHECK-NEXT: 121. 1 0.0 0.0 5.0 vpxord %ymm19, %ymm19, %ymm19 762# CHECK-NEXT: 122. 1 0.0 0.0 5.0 vpxorq %ymm19, %ymm19, %ymm19 763# CHECK-NEXT: 123. 1 0.0 0.0 5.0 vpxord %zmm19, %zmm19, %zmm19 764# CHECK-NEXT: 124. 1 0.0 0.0 5.0 vpxorq %zmm19, %zmm19, %zmm19 765# CHECK-NEXT: 125. 1 0.0 0.0 5.0 vxorps %xmm4, %xmm4, %xmm5 766# CHECK-NEXT: 126. 1 0.0 0.0 4.0 vxorpd %xmm1, %xmm1, %xmm3 767# CHECK-NEXT: 127. 1 0.0 0.0 4.0 vxorps %ymm4, %ymm4, %ymm5 768# CHECK-NEXT: 128. 1 0.0 0.0 4.0 vxorpd %ymm1, %ymm1, %ymm3 769# CHECK-NEXT: 129. 1 0.0 0.0 4.0 vxorps %zmm4, %zmm4, %zmm5 770# CHECK-NEXT: 130. 1 0.0 0.0 4.0 vxorpd %zmm1, %zmm1, %zmm3 771# CHECK-NEXT: 131. 1 0.0 0.0 4.0 vpxor %xmm3, %xmm3, %xmm5 772# CHECK-NEXT: 132. 1 0.0 0.0 3.0 vpxor %ymm3, %ymm3, %ymm5 773# CHECK-NEXT: 133. 1 0.0 0.0 3.0 vpxord %xmm19, %xmm19, %xmm21 774# CHECK-NEXT: 134. 1 0.0 0.0 3.0 vpxorq %xmm19, %xmm19, %xmm21 775# CHECK-NEXT: 135. 1 0.0 0.0 3.0 vpxord %ymm19, %ymm19, %ymm21 776# CHECK-NEXT: 136. 1 0.0 0.0 3.0 vpxorq %ymm19, %ymm19, %ymm21 777# CHECK-NEXT: 137. 1 0.0 0.0 3.0 vpxord %zmm19, %zmm19, %zmm21 778# CHECK-NEXT: 138. 1 0.0 0.0 2.0 vpxorq %zmm19, %zmm19, %zmm21 779# CHECK-NEXT: 1 0.9 0.2 2.0 <total> 780