497 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=alderlake -timeline -register-file-stats -iterations=1 < %s | FileCheck %s3 4# On SKL, renamer-based zeroing does not work for:5# - 16 and 8-bit GPRs6# - MMX7# - ANDN variants8 9subl %eax, %eax10subq %rax, %rax11xorl %eax, %eax12xorq %rax, %rax13 14pcmpgtb %mm2, %mm215pcmpgtd %mm2, %mm216# pcmpgtq %mm2, %mm2 # invalid operand for instruction17pcmpgtw %mm2, %mm218 19pcmpgtb %xmm2, %xmm220pcmpgtd %xmm2, %xmm221pcmpgtq %xmm2, %xmm222pcmpgtw %xmm2, %xmm223 24vpcmpgtb %xmm3, %xmm3, %xmm325vpcmpgtd %xmm3, %xmm3, %xmm326vpcmpgtq %xmm3, %xmm3, %xmm327vpcmpgtw %xmm3, %xmm3, %xmm328 29vpcmpgtb %xmm3, %xmm3, %xmm530vpcmpgtd %xmm3, %xmm3, %xmm531vpcmpgtq %xmm3, %xmm3, %xmm532vpcmpgtw %xmm3, %xmm3, %xmm533 34vpcmpgtb %ymm3, %ymm3, %ymm335vpcmpgtd %ymm3, %ymm3, %ymm336vpcmpgtq %ymm3, %ymm3, %ymm337vpcmpgtw %ymm3, %ymm3, %ymm338 39vpcmpgtb %ymm3, %ymm3, %ymm540vpcmpgtd %ymm3, %ymm3, %ymm541vpcmpgtq %ymm3, %ymm3, %ymm542vpcmpgtw %ymm3, %ymm3, %ymm543 44psubb %mm2, %mm245psubd %mm2, %mm246psubq %mm2, %mm247psubw %mm2, %mm248psubb %xmm2, %xmm249psubd %xmm2, %xmm250psubq %xmm2, %xmm251psubw %xmm2, %xmm252vpsubb %xmm3, %xmm3, %xmm353vpsubd %xmm3, %xmm3, %xmm354vpsubq %xmm3, %xmm3, %xmm355vpsubw %xmm3, %xmm3, %xmm356vpsubb %ymm3, %ymm3, %ymm357vpsubd %ymm3, %ymm3, %ymm358vpsubq %ymm3, %ymm3, %ymm359vpsubw %ymm3, %ymm3, %ymm360 61vpsubb %xmm3, %xmm3, %xmm562vpsubd %xmm3, %xmm3, %xmm563vpsubq %xmm3, %xmm3, %xmm564vpsubw %xmm3, %xmm3, %xmm565vpsubb %ymm3, %ymm3, %ymm566vpsubd %ymm3, %ymm3, %ymm567vpsubq %ymm3, %ymm3, %ymm568vpsubw %ymm3, %ymm3, %ymm569 70andnps %xmm0, %xmm071andnpd %xmm1, %xmm172vandnps %xmm2, %xmm2, %xmm273vandnpd %xmm1, %xmm1, %xmm174vandnps %ymm2, %ymm2, %ymm275vandnpd %ymm1, %ymm1, %ymm176pandn %mm2, %mm277pandn %xmm2, %xmm278vpandn %xmm3, %xmm3, %xmm379vpandn %ymm3, %ymm3, %ymm380 81vandnps %xmm2, %xmm2, %xmm582vandnpd %xmm1, %xmm1, %xmm583vpandn %xmm3, %xmm3, %xmm584vandnps %ymm2, %ymm2, %ymm585vandnpd %ymm1, %ymm1, %ymm586vpandn %ymm3, %ymm3, %ymm587 88xorps %xmm0, %xmm089xorpd %xmm1, %xmm190vxorps %xmm2, %xmm2, %xmm291vxorpd %xmm1, %xmm1, %xmm192vxorps %ymm2, %ymm2, %ymm293vxorpd %ymm1, %ymm1, %ymm194pxor %mm2, %mm295pxor %xmm2, %xmm296vpxor %xmm3, %xmm3, %xmm397vpxor %ymm3, %ymm3, %ymm398 99vxorps %xmm4, %xmm4, %xmm5100vxorpd %xmm1, %xmm1, %xmm3101vxorps %ymm4, %ymm4, %ymm5102vxorpd %ymm1, %ymm1, %ymm3103vpxor %xmm3, %xmm3, %xmm5104vpxor %ymm3, %ymm3, %ymm5105 106# CHECK: Iterations: 1107# CHECK-NEXT: Instructions: 83108# CHECK-NEXT: Total Cycles: 34109# CHECK-NEXT: Total uOps: 83110 111# CHECK: Dispatch Width: 6112# CHECK-NEXT: uOps Per Cycle: 2.44113# CHECK-NEXT: IPC: 2.44114# CHECK-NEXT: Block RThroughput: 16.7115 116# CHECK: Instruction Info:117# CHECK-NEXT: [1]: #uOps118# CHECK-NEXT: [2]: Latency119# CHECK-NEXT: [3]: RThroughput120# CHECK-NEXT: [4]: MayLoad121# CHECK-NEXT: [5]: MayStore122# CHECK-NEXT: [6]: HasSideEffects (U)123 124# CHECK: [1] [2] [3] [4] [5] [6] Instructions:125# CHECK-NEXT: 1 1 0.20 subl %eax, %eax126# CHECK-NEXT: 1 1 0.20 subq %rax, %rax127# CHECK-NEXT: 1 2 0.20 xorl %eax, %eax128# CHECK-NEXT: 1 2 0.20 xorq %rax, %rax129# CHECK-NEXT: 1 1 1.00 pcmpgtb %mm2, %mm2130# CHECK-NEXT: 1 1 1.00 pcmpgtd %mm2, %mm2131# CHECK-NEXT: 1 1 1.00 pcmpgtw %mm2, %mm2132# CHECK-NEXT: 1 1 0.50 pcmpgtb %xmm2, %xmm2133# CHECK-NEXT: 1 1 0.50 pcmpgtd %xmm2, %xmm2134# CHECK-NEXT: 1 3 1.00 pcmpgtq %xmm2, %xmm2135# CHECK-NEXT: 1 1 0.50 pcmpgtw %xmm2, %xmm2136# CHECK-NEXT: 1 1 0.50 vpcmpgtb %xmm3, %xmm3, %xmm3137# CHECK-NEXT: 1 1 0.50 vpcmpgtd %xmm3, %xmm3, %xmm3138# CHECK-NEXT: 1 3 1.00 vpcmpgtq %xmm3, %xmm3, %xmm3139# CHECK-NEXT: 1 1 0.50 vpcmpgtw %xmm3, %xmm3, %xmm3140# CHECK-NEXT: 1 1 0.50 vpcmpgtb %xmm3, %xmm3, %xmm5141# CHECK-NEXT: 1 1 0.50 vpcmpgtd %xmm3, %xmm3, %xmm5142# CHECK-NEXT: 1 3 1.00 vpcmpgtq %xmm3, %xmm3, %xmm5143# CHECK-NEXT: 1 1 0.50 vpcmpgtw %xmm3, %xmm3, %xmm5144# CHECK-NEXT: 1 1 0.50 vpcmpgtb %ymm3, %ymm3, %ymm3145# CHECK-NEXT: 1 1 0.50 vpcmpgtd %ymm3, %ymm3, %ymm3146# CHECK-NEXT: 1 3 1.00 vpcmpgtq %ymm3, %ymm3, %ymm3147# CHECK-NEXT: 1 1 0.50 vpcmpgtw %ymm3, %ymm3, %ymm3148# CHECK-NEXT: 1 1 0.50 vpcmpgtb %ymm3, %ymm3, %ymm5149# CHECK-NEXT: 1 1 0.50 vpcmpgtd %ymm3, %ymm3, %ymm5150# CHECK-NEXT: 1 3 1.00 vpcmpgtq %ymm3, %ymm3, %ymm5151# CHECK-NEXT: 1 1 0.50 vpcmpgtw %ymm3, %ymm3, %ymm5152# CHECK-NEXT: 1 1 0.50 psubb %mm2, %mm2153# CHECK-NEXT: 1 1 0.50 psubd %mm2, %mm2154# CHECK-NEXT: 1 1 0.50 psubq %mm2, %mm2155# CHECK-NEXT: 1 1 0.50 psubw %mm2, %mm2156# CHECK-NEXT: 1 1 0.33 psubb %xmm2, %xmm2157# CHECK-NEXT: 1 1 0.33 psubd %xmm2, %xmm2158# CHECK-NEXT: 1 1 0.33 psubq %xmm2, %xmm2159# CHECK-NEXT: 1 1 0.33 psubw %xmm2, %xmm2160# CHECK-NEXT: 1 1 0.33 vpsubb %xmm3, %xmm3, %xmm3161# CHECK-NEXT: 1 1 0.33 vpsubd %xmm3, %xmm3, %xmm3162# CHECK-NEXT: 1 1 0.33 vpsubq %xmm3, %xmm3, %xmm3163# CHECK-NEXT: 1 1 0.33 vpsubw %xmm3, %xmm3, %xmm3164# CHECK-NEXT: 1 1 0.33 vpsubb %ymm3, %ymm3, %ymm3165# CHECK-NEXT: 1 1 0.33 vpsubd %ymm3, %ymm3, %ymm3166# CHECK-NEXT: 1 1 0.33 vpsubq %ymm3, %ymm3, %ymm3167# CHECK-NEXT: 1 1 0.33 vpsubw %ymm3, %ymm3, %ymm3168# CHECK-NEXT: 1 1 0.33 vpsubb %xmm3, %xmm3, %xmm5169# CHECK-NEXT: 1 1 0.33 vpsubd %xmm3, %xmm3, %xmm5170# CHECK-NEXT: 1 1 0.33 vpsubq %xmm3, %xmm3, %xmm5171# CHECK-NEXT: 1 1 0.33 vpsubw %xmm3, %xmm3, %xmm5172# CHECK-NEXT: 1 1 0.33 vpsubb %ymm3, %ymm3, %ymm5173# CHECK-NEXT: 1 1 0.33 vpsubd %ymm3, %ymm3, %ymm5174# CHECK-NEXT: 1 1 0.33 vpsubq %ymm3, %ymm3, %ymm5175# CHECK-NEXT: 1 1 0.33 vpsubw %ymm3, %ymm3, %ymm5176# CHECK-NEXT: 1 1 0.33 andnps %xmm0, %xmm0177# CHECK-NEXT: 1 1 0.33 andnpd %xmm1, %xmm1178# CHECK-NEXT: 1 1 0.33 vandnps %xmm2, %xmm2, %xmm2179# CHECK-NEXT: 1 1 0.33 vandnpd %xmm1, %xmm1, %xmm1180# CHECK-NEXT: 1 1 0.33 vandnps %ymm2, %ymm2, %ymm2181# CHECK-NEXT: 1 1 0.33 vandnpd %ymm1, %ymm1, %ymm1182# CHECK-NEXT: 1 1 0.50 pandn %mm2, %mm2183# CHECK-NEXT: 1 1 0.33 pandn %xmm2, %xmm2184# CHECK-NEXT: 1 1 0.33 vpandn %xmm3, %xmm3, %xmm3185# CHECK-NEXT: 1 1 0.33 vpandn %ymm3, %ymm3, %ymm3186# CHECK-NEXT: 1 1 0.33 vandnps %xmm2, %xmm2, %xmm5187# CHECK-NEXT: 1 1 0.33 vandnpd %xmm1, %xmm1, %xmm5188# CHECK-NEXT: 1 1 0.33 vpandn %xmm3, %xmm3, %xmm5189# CHECK-NEXT: 1 1 0.33 vandnps %ymm2, %ymm2, %ymm5190# CHECK-NEXT: 1 1 0.33 vandnpd %ymm1, %ymm1, %ymm5191# CHECK-NEXT: 1 1 0.33 vpandn %ymm3, %ymm3, %ymm5192# CHECK-NEXT: 1 1 0.33 xorps %xmm0, %xmm0193# CHECK-NEXT: 1 1 0.33 xorpd %xmm1, %xmm1194# CHECK-NEXT: 1 1 0.33 vxorps %xmm2, %xmm2, %xmm2195# CHECK-NEXT: 1 1 0.33 vxorpd %xmm1, %xmm1, %xmm1196# CHECK-NEXT: 1 1 0.33 vxorps %ymm2, %ymm2, %ymm2197# CHECK-NEXT: 1 1 0.33 vxorpd %ymm1, %ymm1, %ymm1198# CHECK-NEXT: 1 1 0.50 pxor %mm2, %mm2199# CHECK-NEXT: 1 1 0.33 pxor %xmm2, %xmm2200# CHECK-NEXT: 1 1 0.33 vpxor %xmm3, %xmm3, %xmm3201# CHECK-NEXT: 1 1 0.33 vpxor %ymm3, %ymm3, %ymm3202# CHECK-NEXT: 1 1 0.33 vxorps %xmm4, %xmm4, %xmm5203# CHECK-NEXT: 1 1 0.33 vxorpd %xmm1, %xmm1, %xmm3204# CHECK-NEXT: 1 1 0.33 vxorps %ymm4, %ymm4, %ymm5205# CHECK-NEXT: 1 1 0.33 vxorpd %ymm1, %ymm1, %ymm3206# CHECK-NEXT: 1 1 0.33 vpxor %xmm3, %xmm3, %xmm5207# CHECK-NEXT: 1 1 0.33 vpxor %ymm3, %ymm3, %ymm5208 209# CHECK: Register File statistics:210# CHECK-NEXT: Total number of mappings created: 87211# CHECK-NEXT: Max number of mappings used: 66212 213# CHECK: Resources:214# CHECK-NEXT: [0] - ADLPPort00215# CHECK-NEXT: [1] - ADLPPort01216# CHECK-NEXT: [2] - ADLPPort02217# CHECK-NEXT: [3] - ADLPPort03218# CHECK-NEXT: [4] - ADLPPort04219# CHECK-NEXT: [5] - ADLPPort05220# CHECK-NEXT: [6] - ADLPPort06221# CHECK-NEXT: [7] - ADLPPort07222# CHECK-NEXT: [8] - ADLPPort08223# CHECK-NEXT: [9] - ADLPPort09224# CHECK-NEXT: [10] - ADLPPort10225# CHECK-NEXT: [11] - ADLPPort11226# CHECK-NEXT: [12] - ADLPPortInvalid227 228# CHECK: Resource pressure per iteration:229# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]230# CHECK-NEXT: 27.00 26.00 - - - 27.00 1.00 - - - - 2.00 -231 232# CHECK: Resource pressure by instruction:233# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] Instructions:234# CHECK-NEXT: - - - - - - - - - - - 1.00 - subl %eax, %eax235# CHECK-NEXT: - - - - - - 1.00 - - - - - - subq %rax, %rax236# CHECK-NEXT: - - - - - 1.00 - - - - - - - xorl %eax, %eax237# CHECK-NEXT: - - - - - - - - - - - 1.00 - xorq %rax, %rax238# CHECK-NEXT: 1.00 - - - - - - - - - - - - pcmpgtb %mm2, %mm2239# CHECK-NEXT: 1.00 - - - - - - - - - - - - pcmpgtd %mm2, %mm2240# CHECK-NEXT: 1.00 - - - - - - - - - - - - pcmpgtw %mm2, %mm2241# CHECK-NEXT: - 1.00 - - - - - - - - - - - pcmpgtb %xmm2, %xmm2242# CHECK-NEXT: - 1.00 - - - - - - - - - - - pcmpgtd %xmm2, %xmm2243# CHECK-NEXT: - - - - - 1.00 - - - - - - - pcmpgtq %xmm2, %xmm2244# CHECK-NEXT: - 1.00 - - - - - - - - - - - pcmpgtw %xmm2, %xmm2245# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpcmpgtb %xmm3, %xmm3, %xmm3246# CHECK-NEXT: 1.00 - - - - - - - - - - - - vpcmpgtd %xmm3, %xmm3, %xmm3247# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpcmpgtq %xmm3, %xmm3, %xmm3248# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpcmpgtw %xmm3, %xmm3, %xmm3249# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpcmpgtb %xmm3, %xmm3, %xmm5250# CHECK-NEXT: 1.00 - - - - - - - - - - - - vpcmpgtd %xmm3, %xmm3, %xmm5251# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpcmpgtq %xmm3, %xmm3, %xmm5252# CHECK-NEXT: 1.00 - - - - - - - - - - - - vpcmpgtw %xmm3, %xmm3, %xmm5253# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpcmpgtb %ymm3, %ymm3, %ymm3254# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpcmpgtd %ymm3, %ymm3, %ymm3255# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpcmpgtq %ymm3, %ymm3, %ymm3256# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpcmpgtw %ymm3, %ymm3, %ymm3257# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpcmpgtb %ymm3, %ymm3, %ymm5258# CHECK-NEXT: 1.00 - - - - - - - - - - - - vpcmpgtd %ymm3, %ymm3, %ymm5259# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpcmpgtq %ymm3, %ymm3, %ymm5260# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpcmpgtw %ymm3, %ymm3, %ymm5261# CHECK-NEXT: - - - - - 1.00 - - - - - - - psubb %mm2, %mm2262# CHECK-NEXT: 1.00 - - - - - - - - - - - - psubd %mm2, %mm2263# CHECK-NEXT: - - - - - 1.00 - - - - - - - psubq %mm2, %mm2264# CHECK-NEXT: 1.00 - - - - - - - - - - - - psubw %mm2, %mm2265# CHECK-NEXT: - 1.00 - - - - - - - - - - - psubb %xmm2, %xmm2266# CHECK-NEXT: - - - - - 1.00 - - - - - - - psubd %xmm2, %xmm2267# CHECK-NEXT: - - - - - 1.00 - - - - - - - psubq %xmm2, %xmm2268# CHECK-NEXT: - - - - - 1.00 - - - - - - - psubw %xmm2, %xmm2269# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubb %xmm3, %xmm3, %xmm3270# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubd %xmm3, %xmm3, %xmm3271# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubq %xmm3, %xmm3, %xmm3272# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubw %xmm3, %xmm3, %xmm3273# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubb %ymm3, %ymm3, %ymm3274# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubd %ymm3, %ymm3, %ymm3275# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubq %ymm3, %ymm3, %ymm3276# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubw %ymm3, %ymm3, %ymm3277# CHECK-NEXT: 1.00 - - - - - - - - - - - - vpsubb %xmm3, %xmm3, %xmm5278# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubd %xmm3, %xmm3, %xmm5279# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpsubq %xmm3, %xmm3, %xmm5280# CHECK-NEXT: 1.00 - - - - - - - - - - - - vpsubw %xmm3, %xmm3, %xmm5281# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubb %ymm3, %ymm3, %ymm5282# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpsubd %ymm3, %ymm3, %ymm5283# CHECK-NEXT: 1.00 - - - - - - - - - - - - vpsubq %ymm3, %ymm3, %ymm5284# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpsubw %ymm3, %ymm3, %ymm5285# CHECK-NEXT: 1.00 - - - - - - - - - - - - andnps %xmm0, %xmm0286# CHECK-NEXT: 1.00 - - - - - - - - - - - - andnpd %xmm1, %xmm1287# CHECK-NEXT: - 1.00 - - - - - - - - - - - vandnps %xmm2, %xmm2, %xmm2288# CHECK-NEXT: 1.00 - - - - - - - - - - - - vandnpd %xmm1, %xmm1, %xmm1289# CHECK-NEXT: - 1.00 - - - - - - - - - - - vandnps %ymm2, %ymm2, %ymm2290# CHECK-NEXT: - - - - - 1.00 - - - - - - - vandnpd %ymm1, %ymm1, %ymm1291# CHECK-NEXT: 1.00 - - - - - - - - - - - - pandn %mm2, %mm2292# CHECK-NEXT: - - - - - 1.00 - - - - - - - pandn %xmm2, %xmm2293# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpandn %xmm3, %xmm3, %xmm3294# CHECK-NEXT: 1.00 - - - - - - - - - - - - vpandn %ymm3, %ymm3, %ymm3295# CHECK-NEXT: - - - - - 1.00 - - - - - - - vandnps %xmm2, %xmm2, %xmm5296# CHECK-NEXT: - 1.00 - - - - - - - - - - - vandnpd %xmm1, %xmm1, %xmm5297# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpandn %xmm3, %xmm3, %xmm5298# CHECK-NEXT: 1.00 - - - - - - - - - - - - vandnps %ymm2, %ymm2, %ymm5299# CHECK-NEXT: 1.00 - - - - - - - - - - - - vandnpd %ymm1, %ymm1, %ymm5300# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpandn %ymm3, %ymm3, %ymm5301# CHECK-NEXT: - 1.00 - - - - - - - - - - - xorps %xmm0, %xmm0302# CHECK-NEXT: 1.00 - - - - - - - - - - - - xorpd %xmm1, %xmm1303# CHECK-NEXT: 1.00 - - - - - - - - - - - - vxorps %xmm2, %xmm2, %xmm2304# CHECK-NEXT: - 1.00 - - - - - - - - - - - vxorpd %xmm1, %xmm1, %xmm1305# CHECK-NEXT: 1.00 - - - - - - - - - - - - vxorps %ymm2, %ymm2, %ymm2306# CHECK-NEXT: - 1.00 - - - - - - - - - - - vxorpd %ymm1, %ymm1, %ymm1307# CHECK-NEXT: 1.00 - - - - - - - - - - - - pxor %mm2, %mm2308# CHECK-NEXT: - 1.00 - - - - - - - - - - - pxor %xmm2, %xmm2309# CHECK-NEXT: 1.00 - - - - - - - - - - - - vpxor %xmm3, %xmm3, %xmm3310# CHECK-NEXT: - - - - - 1.00 - - - - - - - vpxor %ymm3, %ymm3, %ymm3311# CHECK-NEXT: - 1.00 - - - - - - - - - - - vxorps %xmm4, %xmm4, %xmm5312# CHECK-NEXT: 1.00 - - - - - - - - - - - - vxorpd %xmm1, %xmm1, %xmm3313# CHECK-NEXT: - 1.00 - - - - - - - - - - - vxorps %ymm4, %ymm4, %ymm5314# CHECK-NEXT: 1.00 - - - - - - - - - - - - vxorpd %ymm1, %ymm1, %ymm3315# CHECK-NEXT: 1.00 - - - - - - - - - - - - vpxor %xmm3, %xmm3, %xmm5316# CHECK-NEXT: - 1.00 - - - - - - - - - - - vpxor %ymm3, %ymm3, %ymm5317 318# CHECK: Timeline view:319# CHECK-NEXT: 0123456789 0123320# CHECK-NEXT: Index 0123456789 0123456789321 322# CHECK: [0,0] DeER . . . . . . . subl %eax, %eax323# CHECK-NEXT: [0,1] D=eER. . . . . . . subq %rax, %rax324# CHECK-NEXT: [0,2] D==eeER . . . . . . xorl %eax, %eax325# CHECK-NEXT: [0,3] D====eeER . . . . . . xorq %rax, %rax326# CHECK-NEXT: [0,4] DeE-----R . . . . . . pcmpgtb %mm2, %mm2327# CHECK-NEXT: [0,5] D=eE----R . . . . . . pcmpgtd %mm2, %mm2328# CHECK-NEXT: [0,6] .D=eE---R . . . . . . pcmpgtw %mm2, %mm2329# CHECK-NEXT: [0,7] .DeE----R . . . . . . pcmpgtb %xmm2, %xmm2330# CHECK-NEXT: [0,8] .D=eE---R . . . . . . pcmpgtd %xmm2, %xmm2331# CHECK-NEXT: [0,9] .D==eeeER . . . . . . pcmpgtq %xmm2, %xmm2332# CHECK-NEXT: [0,10] .D=====eER. . . . . . pcmpgtw %xmm2, %xmm2333# CHECK-NEXT: [0,11] .D==eE---R. . . . . . vpcmpgtb %xmm3, %xmm3, %xmm3334# CHECK-NEXT: [0,12] . D==eE--R. . . . . . vpcmpgtd %xmm3, %xmm3, %xmm3335# CHECK-NEXT: [0,13] . D===eeeER . . . . . vpcmpgtq %xmm3, %xmm3, %xmm3336# CHECK-NEXT: [0,14] . D======eER . . . . . vpcmpgtw %xmm3, %xmm3, %xmm3337# CHECK-NEXT: [0,15] . D=======eER . . . . . vpcmpgtb %xmm3, %xmm3, %xmm5338# CHECK-NEXT: [0,16] . D=======eER . . . . . vpcmpgtd %xmm3, %xmm3, %xmm5339# CHECK-NEXT: [0,17] . D=======eeeER. . . . . vpcmpgtq %xmm3, %xmm3, %xmm5340# CHECK-NEXT: [0,18] . D=======eE-R. . . . . vpcmpgtw %xmm3, %xmm3, %xmm5341# CHECK-NEXT: [0,19] . D=======eE-R. . . . . vpcmpgtb %ymm3, %ymm3, %ymm3342# CHECK-NEXT: [0,20] . D========eER. . . . . vpcmpgtd %ymm3, %ymm3, %ymm3343# CHECK-NEXT: [0,21] . D=========eeeER . . . . vpcmpgtq %ymm3, %ymm3, %ymm3344# CHECK-NEXT: [0,22] . D============eER . . . . vpcmpgtw %ymm3, %ymm3, %ymm3345# CHECK-NEXT: [0,23] . D=============eER. . . . vpcmpgtb %ymm3, %ymm3, %ymm5346# CHECK-NEXT: [0,24] . D============eER. . . . vpcmpgtd %ymm3, %ymm3, %ymm5347# CHECK-NEXT: [0,25] . D============eeeER . . . vpcmpgtq %ymm3, %ymm3, %ymm5348# CHECK-NEXT: [0,26] . D=============eE-R . . . vpcmpgtw %ymm3, %ymm3, %ymm5349# CHECK-NEXT: [0,27] . DeE--------------R . . . psubb %mm2, %mm2350# CHECK-NEXT: [0,28] . D=eE-------------R . . . psubd %mm2, %mm2351# CHECK-NEXT: [0,29] . D==eE------------R . . . psubq %mm2, %mm2352# CHECK-NEXT: [0,30] . D==eE-----------R . . . psubw %mm2, %mm2353# CHECK-NEXT: [0,31] . D==eE-----------R . . . psubb %xmm2, %xmm2354# CHECK-NEXT: [0,32] . D===eE----------R . . . psubd %xmm2, %xmm2355# CHECK-NEXT: [0,33] . D=====eE--------R . . . psubq %xmm2, %xmm2356# CHECK-NEXT: [0,34] . D======eE-------R . . . psubw %xmm2, %xmm2357# CHECK-NEXT: [0,35] . D============eE-R . . . vpsubb %xmm3, %xmm3, %xmm3358# CHECK-NEXT: [0,36] . .D============eER . . . vpsubd %xmm3, %xmm3, %xmm3359# CHECK-NEXT: [0,37] . .D=============eER . . . vpsubq %xmm3, %xmm3, %xmm3360# CHECK-NEXT: [0,38] . .D==============eER . . . vpsubw %xmm3, %xmm3, %xmm3361# CHECK-NEXT: [0,39] . .D===============eER. . . vpsubb %ymm3, %ymm3, %ymm3362# CHECK-NEXT: [0,40] . .D================eER . . vpsubd %ymm3, %ymm3, %ymm3363# CHECK-NEXT: [0,41] . .D=================eER . . vpsubq %ymm3, %ymm3, %ymm3364# CHECK-NEXT: [0,42] . . D=================eER . . vpsubw %ymm3, %ymm3, %ymm3365# CHECK-NEXT: [0,43] . . D==================eER . . vpsubb %xmm3, %xmm3, %xmm5366# CHECK-NEXT: [0,44] . . D==================eER . . vpsubd %xmm3, %xmm3, %xmm5367# CHECK-NEXT: [0,45] . . D==================eER . . vpsubq %xmm3, %xmm3, %xmm5368# CHECK-NEXT: [0,46] . . D===================eER. . vpsubw %xmm3, %xmm3, %xmm5369# CHECK-NEXT: [0,47] . . D===================eER. . vpsubb %ymm3, %ymm3, %ymm5370# CHECK-NEXT: [0,48] . . D==================eER. . vpsubd %ymm3, %ymm3, %ymm5371# CHECK-NEXT: [0,49] . . D===================eER . vpsubq %ymm3, %ymm3, %ymm5372# CHECK-NEXT: [0,50] . . D===================eER . vpsubw %ymm3, %ymm3, %ymm5373# CHECK-NEXT: [0,51] . . DeE-------------------R . andnps %xmm0, %xmm0374# CHECK-NEXT: [0,52] . . D===eE----------------R . andnpd %xmm1, %xmm1375# CHECK-NEXT: [0,53] . . D====eE---------------R . vandnps %xmm2, %xmm2, %xmm2376# CHECK-NEXT: [0,54] . . D===eE---------------R . vandnpd %xmm1, %xmm1, %xmm1377# CHECK-NEXT: [0,55] . . D====eE--------------R . vandnps %ymm2, %ymm2, %ymm2378# CHECK-NEXT: [0,56] . . D====eE--------------R . vandnpd %ymm1, %ymm1, %ymm1379# CHECK-NEXT: [0,57] . . D====eE--------------R . pandn %mm2, %mm2380# CHECK-NEXT: [0,58] . . D=====eE-------------R . pandn %xmm2, %xmm2381# CHECK-NEXT: [0,59] . . D==================eER . vpandn %xmm3, %xmm3, %xmm3382# CHECK-NEXT: [0,60] . . D==================eER . vpandn %ymm3, %ymm3, %ymm3383# CHECK-NEXT: [0,61] . . D=====eE-------------R . vandnps %xmm2, %xmm2, %xmm5384# CHECK-NEXT: [0,62] . . D====eE--------------R . vandnpd %xmm1, %xmm1, %xmm5385# CHECK-NEXT: [0,63] . . D===================eER. vpandn %xmm3, %xmm3, %xmm5386# CHECK-NEXT: [0,64] . . D=====eE--------------R. vandnps %ymm2, %ymm2, %ymm5387# CHECK-NEXT: [0,65] . . D====eE---------------R. vandnpd %ymm1, %ymm1, %ymm5388# CHECK-NEXT: [0,66] . . .D==================eER. vpandn %ymm3, %ymm3, %ymm5389# CHECK-NEXT: [0,67] . . .D=======eE-----------R. xorps %xmm0, %xmm0390# CHECK-NEXT: [0,68] . . .D======eE------------R. xorpd %xmm1, %xmm1391# CHECK-NEXT: [0,69] . . .D=======eE-----------R. vxorps %xmm2, %xmm2, %xmm2392# CHECK-NEXT: [0,70] . . .D========eE----------R. vxorpd %xmm1, %xmm1, %xmm1393# CHECK-NEXT: [0,71] . . .D========eE----------R. vxorps %ymm2, %ymm2, %ymm2394# CHECK-NEXT: [0,72] . . . D========eE---------R. vxorpd %ymm1, %ymm1, %ymm1395# CHECK-NEXT: [0,73] . . . D========eE---------R. pxor %mm2, %mm2396# CHECK-NEXT: [0,74] . . . D=========eE--------R. pxor %xmm2, %xmm2397# CHECK-NEXT: [0,75] . . . D=================eER. vpxor %xmm3, %xmm3, %xmm3398# CHECK-NEXT: [0,76] . . . D==================eER vpxor %ymm3, %ymm3, %ymm3399# CHECK-NEXT: [0,77] . . . D==========eE--------R vxorps %xmm4, %xmm4, %xmm5400# CHECK-NEXT: [0,78] . . . D=========eE--------R vxorpd %xmm1, %xmm1, %xmm3401# CHECK-NEXT: [0,79] . . . D==========eE-------R vxorps %ymm4, %ymm4, %ymm5402# CHECK-NEXT: [0,80] . . . D========eE---------R vxorpd %ymm1, %ymm1, %ymm3403# CHECK-NEXT: [0,81] . . . D==========eE-------R vpxor %xmm3, %xmm3, %xmm5404# CHECK-NEXT: [0,82] . . . D===========eE------R vpxor %ymm3, %ymm3, %ymm5405 406# CHECK: Average Wait times (based on the timeline view):407# CHECK-NEXT: [0]: Executions408# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue409# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready410# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage411 412# CHECK: [0] [1] [2] [3]413# CHECK-NEXT: 0. 1 1.0 1.0 0.0 subl %eax, %eax414# CHECK-NEXT: 1. 1 2.0 0.0 0.0 subq %rax, %rax415# CHECK-NEXT: 2. 1 3.0 0.0 0.0 xorl %eax, %eax416# CHECK-NEXT: 3. 1 5.0 0.0 0.0 xorq %rax, %rax417# CHECK-NEXT: 4. 1 1.0 1.0 5.0 pcmpgtb %mm2, %mm2418# CHECK-NEXT: 5. 1 2.0 0.0 4.0 pcmpgtd %mm2, %mm2419# CHECK-NEXT: 6. 1 2.0 0.0 3.0 pcmpgtw %mm2, %mm2420# CHECK-NEXT: 7. 1 1.0 1.0 4.0 pcmpgtb %xmm2, %xmm2421# CHECK-NEXT: 8. 1 2.0 0.0 3.0 pcmpgtd %xmm2, %xmm2422# CHECK-NEXT: 9. 1 3.0 0.0 0.0 pcmpgtq %xmm2, %xmm2423# CHECK-NEXT: 10. 1 6.0 0.0 0.0 pcmpgtw %xmm2, %xmm2424# CHECK-NEXT: 11. 1 3.0 3.0 3.0 vpcmpgtb %xmm3, %xmm3, %xmm3425# CHECK-NEXT: 12. 1 3.0 0.0 2.0 vpcmpgtd %xmm3, %xmm3, %xmm3426# CHECK-NEXT: 13. 1 4.0 0.0 0.0 vpcmpgtq %xmm3, %xmm3, %xmm3427# CHECK-NEXT: 14. 1 7.0 0.0 0.0 vpcmpgtw %xmm3, %xmm3, %xmm3428# CHECK-NEXT: 15. 1 8.0 0.0 0.0 vpcmpgtb %xmm3, %xmm3, %xmm5429# CHECK-NEXT: 16. 1 8.0 0.0 0.0 vpcmpgtd %xmm3, %xmm3, %xmm5430# CHECK-NEXT: 17. 1 8.0 0.0 0.0 vpcmpgtq %xmm3, %xmm3, %xmm5431# CHECK-NEXT: 18. 1 8.0 1.0 1.0 vpcmpgtw %xmm3, %xmm3, %xmm5432# CHECK-NEXT: 19. 1 8.0 1.0 1.0 vpcmpgtb %ymm3, %ymm3, %ymm3433# CHECK-NEXT: 20. 1 9.0 0.0 0.0 vpcmpgtd %ymm3, %ymm3, %ymm3434# CHECK-NEXT: 21. 1 10.0 0.0 0.0 vpcmpgtq %ymm3, %ymm3, %ymm3435# CHECK-NEXT: 22. 1 13.0 0.0 0.0 vpcmpgtw %ymm3, %ymm3, %ymm3436# CHECK-NEXT: 23. 1 14.0 0.0 0.0 vpcmpgtb %ymm3, %ymm3, %ymm5437# CHECK-NEXT: 24. 1 13.0 0.0 0.0 vpcmpgtd %ymm3, %ymm3, %ymm5438# CHECK-NEXT: 25. 1 13.0 0.0 0.0 vpcmpgtq %ymm3, %ymm3, %ymm5439# CHECK-NEXT: 26. 1 14.0 1.0 1.0 vpcmpgtw %ymm3, %ymm3, %ymm5440# CHECK-NEXT: 27. 1 1.0 1.0 14.0 psubb %mm2, %mm2441# CHECK-NEXT: 28. 1 2.0 0.0 13.0 psubd %mm2, %mm2442# CHECK-NEXT: 29. 1 3.0 0.0 12.0 psubq %mm2, %mm2443# CHECK-NEXT: 30. 1 3.0 0.0 11.0 psubw %mm2, %mm2444# CHECK-NEXT: 31. 1 3.0 0.0 11.0 psubb %xmm2, %xmm2445# CHECK-NEXT: 32. 1 4.0 0.0 10.0 psubd %xmm2, %xmm2446# CHECK-NEXT: 33. 1 6.0 1.0 8.0 psubq %xmm2, %xmm2447# CHECK-NEXT: 34. 1 7.0 0.0 7.0 psubw %xmm2, %xmm2448# CHECK-NEXT: 35. 1 13.0 1.0 1.0 vpsubb %xmm3, %xmm3, %xmm3449# CHECK-NEXT: 36. 1 13.0 0.0 0.0 vpsubd %xmm3, %xmm3, %xmm3450# CHECK-NEXT: 37. 1 14.0 0.0 0.0 vpsubq %xmm3, %xmm3, %xmm3451# CHECK-NEXT: 38. 1 15.0 0.0 0.0 vpsubw %xmm3, %xmm3, %xmm3452# CHECK-NEXT: 39. 1 16.0 0.0 0.0 vpsubb %ymm3, %ymm3, %ymm3453# CHECK-NEXT: 40. 1 17.0 0.0 0.0 vpsubd %ymm3, %ymm3, %ymm3454# CHECK-NEXT: 41. 1 18.0 0.0 0.0 vpsubq %ymm3, %ymm3, %ymm3455# CHECK-NEXT: 42. 1 18.0 0.0 0.0 vpsubw %ymm3, %ymm3, %ymm3456# CHECK-NEXT: 43. 1 19.0 0.0 0.0 vpsubb %xmm3, %xmm3, %xmm5457# CHECK-NEXT: 44. 1 19.0 0.0 0.0 vpsubd %xmm3, %xmm3, %xmm5458# CHECK-NEXT: 45. 1 19.0 0.0 0.0 vpsubq %xmm3, %xmm3, %xmm5459# CHECK-NEXT: 46. 1 20.0 1.0 0.0 vpsubw %xmm3, %xmm3, %xmm5460# CHECK-NEXT: 47. 1 20.0 1.0 0.0 vpsubb %ymm3, %ymm3, %ymm5461# CHECK-NEXT: 48. 1 19.0 1.0 0.0 vpsubd %ymm3, %ymm3, %ymm5462# CHECK-NEXT: 49. 1 20.0 2.0 0.0 vpsubq %ymm3, %ymm3, %ymm5463# CHECK-NEXT: 50. 1 20.0 2.0 0.0 vpsubw %ymm3, %ymm3, %ymm5464# CHECK-NEXT: 51. 1 1.0 1.0 19.0 andnps %xmm0, %xmm0465# CHECK-NEXT: 52. 1 4.0 4.0 16.0 andnpd %xmm1, %xmm1466# CHECK-NEXT: 53. 1 5.0 0.0 15.0 vandnps %xmm2, %xmm2, %xmm2467# CHECK-NEXT: 54. 1 4.0 0.0 15.0 vandnpd %xmm1, %xmm1, %xmm1468# CHECK-NEXT: 55. 1 5.0 0.0 14.0 vandnps %ymm2, %ymm2, %ymm2469# CHECK-NEXT: 56. 1 5.0 0.0 14.0 vandnpd %ymm1, %ymm1, %ymm1470# CHECK-NEXT: 57. 1 5.0 5.0 14.0 pandn %mm2, %mm2471# CHECK-NEXT: 58. 1 6.0 0.0 13.0 pandn %xmm2, %xmm2472# CHECK-NEXT: 59. 1 19.0 2.0 0.0 vpandn %xmm3, %xmm3, %xmm3473# CHECK-NEXT: 60. 1 19.0 0.0 0.0 vpandn %ymm3, %ymm3, %ymm3474# CHECK-NEXT: 61. 1 6.0 0.0 13.0 vandnps %xmm2, %xmm2, %xmm5475# CHECK-NEXT: 62. 1 5.0 0.0 14.0 vandnpd %xmm1, %xmm1, %xmm5476# CHECK-NEXT: 63. 1 20.0 0.0 0.0 vpandn %xmm3, %xmm3, %xmm5477# CHECK-NEXT: 64. 1 6.0 0.0 14.0 vandnps %ymm2, %ymm2, %ymm5478# CHECK-NEXT: 65. 1 5.0 0.0 15.0 vandnpd %ymm1, %ymm1, %ymm5479# CHECK-NEXT: 66. 1 19.0 0.0 0.0 vpandn %ymm3, %ymm3, %ymm5480# CHECK-NEXT: 67. 1 8.0 8.0 11.0 xorps %xmm0, %xmm0481# CHECK-NEXT: 68. 1 7.0 3.0 12.0 xorpd %xmm1, %xmm1482# CHECK-NEXT: 69. 1 8.0 3.0 11.0 vxorps %xmm2, %xmm2, %xmm2483# CHECK-NEXT: 70. 1 9.0 1.0 10.0 vxorpd %xmm1, %xmm1, %xmm1484# CHECK-NEXT: 71. 1 9.0 0.0 10.0 vxorps %ymm2, %ymm2, %ymm2485# CHECK-NEXT: 72. 1 9.0 0.0 9.0 vxorpd %ymm1, %ymm1, %ymm1486# CHECK-NEXT: 73. 1 9.0 6.0 9.0 pxor %mm2, %mm2487# CHECK-NEXT: 74. 1 10.0 1.0 8.0 pxor %xmm2, %xmm2488# CHECK-NEXT: 75. 1 18.0 0.0 0.0 vpxor %xmm3, %xmm3, %xmm3489# CHECK-NEXT: 76. 1 19.0 0.0 0.0 vpxor %ymm3, %ymm3, %ymm3490# CHECK-NEXT: 77. 1 11.0 11.0 8.0 vxorps %xmm4, %xmm4, %xmm5491# CHECK-NEXT: 78. 1 10.0 1.0 8.0 vxorpd %xmm1, %xmm1, %xmm3492# CHECK-NEXT: 79. 1 11.0 11.0 7.0 vxorps %ymm4, %ymm4, %ymm5493# CHECK-NEXT: 80. 1 9.0 0.0 9.0 vxorpd %ymm1, %ymm1, %ymm3494# CHECK-NEXT: 81. 1 11.0 1.0 7.0 vpxor %xmm3, %xmm3, %xmm5495# CHECK-NEXT: 82. 1 12.0 2.0 6.0 vpxor %ymm3, %ymm3, %ymm5496# CHECK-NEXT: 1 9.4 1.0 5.0 <total>497