627 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -scheduler-stats -dispatch-stats -iterations=100 -timeline -timeline-max-iterations=1 < %s | FileCheck %s3 4# LLVM-MCA-BEGIN5movb (%rax), %spl6movb (%rcx), %bpl7movb (%rdx), %sil8movb (%rbx), %dil9# LLVM-MCA-END10 11# LLVM-MCA-BEGIN12movw (%rax), %sp13movw (%rcx), %bp14movw (%rdx), %si15movw (%rbx), %di16# LLVM-MCA-END17 18# LLVM-MCA-BEGIN19movl (%rax), %esp20movl (%rcx), %ebp21movl (%rdx), %esi22movl (%rbx), %edi23# LLVM-MCA-END24 25# LLVM-MCA-BEGIN26movq (%rax), %rsp27movq (%rcx), %rbp28movq (%rdx), %rsi29movq (%rbx), %rdi30# LLVM-MCA-END31 32# LLVM-MCA-BEGIN33movd (%rax), %mm034movd (%rcx), %mm135movd (%rdx), %mm236movd (%rbx), %mm337# LLVM-MCA-END38 39# LLVM-MCA-BEGIN40movaps (%rax), %xmm041movaps (%rcx), %xmm142movaps (%rdx), %xmm243movaps (%rbx), %xmm344# LLVM-MCA-END45 46# CHECK: [0] Code Region47 48# CHECK: Iterations: 10049# CHECK-NEXT: Instructions: 40050# CHECK-NEXT: Total Cycles: 20751# CHECK-NEXT: Total uOps: 40052 53# CHECK: Dispatch Width: 454# CHECK-NEXT: uOps Per Cycle: 1.9355# CHECK-NEXT: IPC: 1.9356# CHECK-NEXT: Block RThroughput: 2.057 58# CHECK: Instruction Info:59# CHECK-NEXT: [1]: #uOps60# CHECK-NEXT: [2]: Latency61# CHECK-NEXT: [3]: RThroughput62# CHECK-NEXT: [4]: MayLoad63# CHECK-NEXT: [5]: MayStore64# CHECK-NEXT: [6]: HasSideEffects (U)65 66# CHECK: [1] [2] [3] [4] [5] [6] Instructions:67# CHECK-NEXT: 1 5 0.50 * movb (%rax), %spl68# CHECK-NEXT: 1 5 0.50 * movb (%rcx), %bpl69# CHECK-NEXT: 1 5 0.50 * movb (%rdx), %sil70# CHECK-NEXT: 1 5 0.50 * movb (%rbx), %dil71 72# CHECK: Dynamic Dispatch Stall Cycles:73# CHECK-NEXT: RAT - Register unavailable: 074# CHECK-NEXT: RCU - Retire tokens unavailable: 075# CHECK-NEXT: SCHEDQ - Scheduler full: 147 (71.0%)76# CHECK-NEXT: LQ - Load queue full: 077# CHECK-NEXT: SQ - Store queue full: 078# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 079# CHECK-NEXT: USH - Uncategorised Structural Hazard: 080 81# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:82# CHECK-NEXT: [# dispatched], [# cycles]83# CHECK-NEXT: 0, 33 (15.9%)84# CHECK-NEXT: 2, 148 (71.5%)85# CHECK-NEXT: 4, 26 (12.6%)86 87# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:88# CHECK-NEXT: [# issued], [# cycles]89# CHECK-NEXT: 0, 7 (3.4%)90# CHECK-NEXT: 2, 200 (96.6%)91 92# CHECK: Scheduler's queue usage:93# CHECK-NEXT: [1] Resource name.94# CHECK-NEXT: [2] Average number of used buffer entries.95# CHECK-NEXT: [3] Maximum number of used buffer entries.96# CHECK-NEXT: [4] Total number of buffer entries.97 98# CHECK: [1] [2] [3] [4]99# CHECK-NEXT: SBPortAny 45 54 54100 101# CHECK: Resources:102# CHECK-NEXT: [0] - SBDivider103# CHECK-NEXT: [1] - SBFPDivider104# CHECK-NEXT: [2] - SBPort0105# CHECK-NEXT: [3] - SBPort1106# CHECK-NEXT: [4] - SBPort4107# CHECK-NEXT: [5] - SBPort5108# CHECK-NEXT: [6.0] - SBPort23109# CHECK-NEXT: [6.1] - SBPort23110 111# CHECK: Resource pressure per iteration:112# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]113# CHECK-NEXT: - - - - - - 2.00 2.00114 115# CHECK: Resource pressure by instruction:116# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:117# CHECK-NEXT: - - - - - - - 1.00 movb (%rax), %spl118# CHECK-NEXT: - - - - - - 1.00 - movb (%rcx), %bpl119# CHECK-NEXT: - - - - - - - 1.00 movb (%rdx), %sil120# CHECK-NEXT: - - - - - - 1.00 - movb (%rbx), %dil121 122# CHECK: Timeline view:123# CHECK-NEXT: Index 012345678124 125# CHECK: [0,0] DeeeeeER. movb (%rax), %spl126# CHECK-NEXT: [0,1] DeeeeeER. movb (%rcx), %bpl127# CHECK-NEXT: [0,2] D=eeeeeER movb (%rdx), %sil128# CHECK-NEXT: [0,3] D=eeeeeER movb (%rbx), %dil129 130# CHECK: Average Wait times (based on the timeline view):131# CHECK-NEXT: [0]: Executions132# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue133# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready134# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage135 136# CHECK: [0] [1] [2] [3]137# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movb (%rax), %spl138# CHECK-NEXT: 1. 1 1.0 1.0 0.0 movb (%rcx), %bpl139# CHECK-NEXT: 2. 1 2.0 2.0 0.0 movb (%rdx), %sil140# CHECK-NEXT: 3. 1 2.0 2.0 0.0 movb (%rbx), %dil141# CHECK-NEXT: 1 1.5 1.5 0.0 <total>142 143# CHECK: [1] Code Region144 145# CHECK: Iterations: 100146# CHECK-NEXT: Instructions: 400147# CHECK-NEXT: Total Cycles: 207148# CHECK-NEXT: Total uOps: 400149 150# CHECK: Dispatch Width: 4151# CHECK-NEXT: uOps Per Cycle: 1.93152# CHECK-NEXT: IPC: 1.93153# CHECK-NEXT: Block RThroughput: 2.0154 155# CHECK: Instruction Info:156# CHECK-NEXT: [1]: #uOps157# CHECK-NEXT: [2]: Latency158# CHECK-NEXT: [3]: RThroughput159# CHECK-NEXT: [4]: MayLoad160# CHECK-NEXT: [5]: MayStore161# CHECK-NEXT: [6]: HasSideEffects (U)162 163# CHECK: [1] [2] [3] [4] [5] [6] Instructions:164# CHECK-NEXT: 1 5 0.50 * movw (%rax), %sp165# CHECK-NEXT: 1 5 0.50 * movw (%rcx), %bp166# CHECK-NEXT: 1 5 0.50 * movw (%rdx), %si167# CHECK-NEXT: 1 5 0.50 * movw (%rbx), %di168 169# CHECK: Dynamic Dispatch Stall Cycles:170# CHECK-NEXT: RAT - Register unavailable: 0171# CHECK-NEXT: RCU - Retire tokens unavailable: 0172# CHECK-NEXT: SCHEDQ - Scheduler full: 147 (71.0%)173# CHECK-NEXT: LQ - Load queue full: 0174# CHECK-NEXT: SQ - Store queue full: 0175# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 0176# CHECK-NEXT: USH - Uncategorised Structural Hazard: 0177 178# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:179# CHECK-NEXT: [# dispatched], [# cycles]180# CHECK-NEXT: 0, 33 (15.9%)181# CHECK-NEXT: 2, 148 (71.5%)182# CHECK-NEXT: 4, 26 (12.6%)183 184# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:185# CHECK-NEXT: [# issued], [# cycles]186# CHECK-NEXT: 0, 7 (3.4%)187# CHECK-NEXT: 2, 200 (96.6%)188 189# CHECK: Scheduler's queue usage:190# CHECK-NEXT: [1] Resource name.191# CHECK-NEXT: [2] Average number of used buffer entries.192# CHECK-NEXT: [3] Maximum number of used buffer entries.193# CHECK-NEXT: [4] Total number of buffer entries.194 195# CHECK: [1] [2] [3] [4]196# CHECK-NEXT: SBPortAny 45 54 54197 198# CHECK: Resources:199# CHECK-NEXT: [0] - SBDivider200# CHECK-NEXT: [1] - SBFPDivider201# CHECK-NEXT: [2] - SBPort0202# CHECK-NEXT: [3] - SBPort1203# CHECK-NEXT: [4] - SBPort4204# CHECK-NEXT: [5] - SBPort5205# CHECK-NEXT: [6.0] - SBPort23206# CHECK-NEXT: [6.1] - SBPort23207 208# CHECK: Resource pressure per iteration:209# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]210# CHECK-NEXT: - - - - - - 2.00 2.00211 212# CHECK: Resource pressure by instruction:213# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:214# CHECK-NEXT: - - - - - - - 1.00 movw (%rax), %sp215# CHECK-NEXT: - - - - - - 1.00 - movw (%rcx), %bp216# CHECK-NEXT: - - - - - - - 1.00 movw (%rdx), %si217# CHECK-NEXT: - - - - - - 1.00 - movw (%rbx), %di218 219# CHECK: Timeline view:220# CHECK-NEXT: Index 012345678221 222# CHECK: [0,0] DeeeeeER. movw (%rax), %sp223# CHECK-NEXT: [0,1] DeeeeeER. movw (%rcx), %bp224# CHECK-NEXT: [0,2] D=eeeeeER movw (%rdx), %si225# CHECK-NEXT: [0,3] D=eeeeeER movw (%rbx), %di226 227# CHECK: Average Wait times (based on the timeline view):228# CHECK-NEXT: [0]: Executions229# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue230# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready231# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage232 233# CHECK: [0] [1] [2] [3]234# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movw (%rax), %sp235# CHECK-NEXT: 1. 1 1.0 1.0 0.0 movw (%rcx), %bp236# CHECK-NEXT: 2. 1 2.0 2.0 0.0 movw (%rdx), %si237# CHECK-NEXT: 3. 1 2.0 2.0 0.0 movw (%rbx), %di238# CHECK-NEXT: 1 1.5 1.5 0.0 <total>239 240# CHECK: [2] Code Region241 242# CHECK: Iterations: 100243# CHECK-NEXT: Instructions: 400244# CHECK-NEXT: Total Cycles: 207245# CHECK-NEXT: Total uOps: 400246 247# CHECK: Dispatch Width: 4248# CHECK-NEXT: uOps Per Cycle: 1.93249# CHECK-NEXT: IPC: 1.93250# CHECK-NEXT: Block RThroughput: 2.0251 252# CHECK: Instruction Info:253# CHECK-NEXT: [1]: #uOps254# CHECK-NEXT: [2]: Latency255# CHECK-NEXT: [3]: RThroughput256# CHECK-NEXT: [4]: MayLoad257# CHECK-NEXT: [5]: MayStore258# CHECK-NEXT: [6]: HasSideEffects (U)259 260# CHECK: [1] [2] [3] [4] [5] [6] Instructions:261# CHECK-NEXT: 1 5 0.50 * movl (%rax), %esp262# CHECK-NEXT: 1 5 0.50 * movl (%rcx), %ebp263# CHECK-NEXT: 1 5 0.50 * movl (%rdx), %esi264# CHECK-NEXT: 1 5 0.50 * movl (%rbx), %edi265 266# CHECK: Dynamic Dispatch Stall Cycles:267# CHECK-NEXT: RAT - Register unavailable: 0268# CHECK-NEXT: RCU - Retire tokens unavailable: 0269# CHECK-NEXT: SCHEDQ - Scheduler full: 147 (71.0%)270# CHECK-NEXT: LQ - Load queue full: 0271# CHECK-NEXT: SQ - Store queue full: 0272# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 0273# CHECK-NEXT: USH - Uncategorised Structural Hazard: 0274 275# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:276# CHECK-NEXT: [# dispatched], [# cycles]277# CHECK-NEXT: 0, 33 (15.9%)278# CHECK-NEXT: 2, 148 (71.5%)279# CHECK-NEXT: 4, 26 (12.6%)280 281# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:282# CHECK-NEXT: [# issued], [# cycles]283# CHECK-NEXT: 0, 7 (3.4%)284# CHECK-NEXT: 2, 200 (96.6%)285 286# CHECK: Scheduler's queue usage:287# CHECK-NEXT: [1] Resource name.288# CHECK-NEXT: [2] Average number of used buffer entries.289# CHECK-NEXT: [3] Maximum number of used buffer entries.290# CHECK-NEXT: [4] Total number of buffer entries.291 292# CHECK: [1] [2] [3] [4]293# CHECK-NEXT: SBPortAny 45 54 54294 295# CHECK: Resources:296# CHECK-NEXT: [0] - SBDivider297# CHECK-NEXT: [1] - SBFPDivider298# CHECK-NEXT: [2] - SBPort0299# CHECK-NEXT: [3] - SBPort1300# CHECK-NEXT: [4] - SBPort4301# CHECK-NEXT: [5] - SBPort5302# CHECK-NEXT: [6.0] - SBPort23303# CHECK-NEXT: [6.1] - SBPort23304 305# CHECK: Resource pressure per iteration:306# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]307# CHECK-NEXT: - - - - - - 2.00 2.00308 309# CHECK: Resource pressure by instruction:310# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:311# CHECK-NEXT: - - - - - - - 1.00 movl (%rax), %esp312# CHECK-NEXT: - - - - - - 1.00 - movl (%rcx), %ebp313# CHECK-NEXT: - - - - - - - 1.00 movl (%rdx), %esi314# CHECK-NEXT: - - - - - - 1.00 - movl (%rbx), %edi315 316# CHECK: Timeline view:317# CHECK-NEXT: Index 012345678318 319# CHECK: [0,0] DeeeeeER. movl (%rax), %esp320# CHECK-NEXT: [0,1] DeeeeeER. movl (%rcx), %ebp321# CHECK-NEXT: [0,2] D=eeeeeER movl (%rdx), %esi322# CHECK-NEXT: [0,3] D=eeeeeER movl (%rbx), %edi323 324# CHECK: Average Wait times (based on the timeline view):325# CHECK-NEXT: [0]: Executions326# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue327# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready328# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage329 330# CHECK: [0] [1] [2] [3]331# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movl (%rax), %esp332# CHECK-NEXT: 1. 1 1.0 1.0 0.0 movl (%rcx), %ebp333# CHECK-NEXT: 2. 1 2.0 2.0 0.0 movl (%rdx), %esi334# CHECK-NEXT: 3. 1 2.0 2.0 0.0 movl (%rbx), %edi335# CHECK-NEXT: 1 1.5 1.5 0.0 <total>336 337# CHECK: [3] Code Region338 339# CHECK: Iterations: 100340# CHECK-NEXT: Instructions: 400341# CHECK-NEXT: Total Cycles: 207342# CHECK-NEXT: Total uOps: 400343 344# CHECK: Dispatch Width: 4345# CHECK-NEXT: uOps Per Cycle: 1.93346# CHECK-NEXT: IPC: 1.93347# CHECK-NEXT: Block RThroughput: 2.0348 349# CHECK: Instruction Info:350# CHECK-NEXT: [1]: #uOps351# CHECK-NEXT: [2]: Latency352# CHECK-NEXT: [3]: RThroughput353# CHECK-NEXT: [4]: MayLoad354# CHECK-NEXT: [5]: MayStore355# CHECK-NEXT: [6]: HasSideEffects (U)356 357# CHECK: [1] [2] [3] [4] [5] [6] Instructions:358# CHECK-NEXT: 1 5 0.50 * movq (%rax), %rsp359# CHECK-NEXT: 1 5 0.50 * movq (%rcx), %rbp360# CHECK-NEXT: 1 5 0.50 * movq (%rdx), %rsi361# CHECK-NEXT: 1 5 0.50 * movq (%rbx), %rdi362 363# CHECK: Dynamic Dispatch Stall Cycles:364# CHECK-NEXT: RAT - Register unavailable: 0365# CHECK-NEXT: RCU - Retire tokens unavailable: 0366# CHECK-NEXT: SCHEDQ - Scheduler full: 147 (71.0%)367# CHECK-NEXT: LQ - Load queue full: 0368# CHECK-NEXT: SQ - Store queue full: 0369# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 0370# CHECK-NEXT: USH - Uncategorised Structural Hazard: 0371 372# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:373# CHECK-NEXT: [# dispatched], [# cycles]374# CHECK-NEXT: 0, 33 (15.9%)375# CHECK-NEXT: 2, 148 (71.5%)376# CHECK-NEXT: 4, 26 (12.6%)377 378# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:379# CHECK-NEXT: [# issued], [# cycles]380# CHECK-NEXT: 0, 7 (3.4%)381# CHECK-NEXT: 2, 200 (96.6%)382 383# CHECK: Scheduler's queue usage:384# CHECK-NEXT: [1] Resource name.385# CHECK-NEXT: [2] Average number of used buffer entries.386# CHECK-NEXT: [3] Maximum number of used buffer entries.387# CHECK-NEXT: [4] Total number of buffer entries.388 389# CHECK: [1] [2] [3] [4]390# CHECK-NEXT: SBPortAny 45 54 54391 392# CHECK: Resources:393# CHECK-NEXT: [0] - SBDivider394# CHECK-NEXT: [1] - SBFPDivider395# CHECK-NEXT: [2] - SBPort0396# CHECK-NEXT: [3] - SBPort1397# CHECK-NEXT: [4] - SBPort4398# CHECK-NEXT: [5] - SBPort5399# CHECK-NEXT: [6.0] - SBPort23400# CHECK-NEXT: [6.1] - SBPort23401 402# CHECK: Resource pressure per iteration:403# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]404# CHECK-NEXT: - - - - - - 2.00 2.00405 406# CHECK: Resource pressure by instruction:407# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:408# CHECK-NEXT: - - - - - - - 1.00 movq (%rax), %rsp409# CHECK-NEXT: - - - - - - 1.00 - movq (%rcx), %rbp410# CHECK-NEXT: - - - - - - - 1.00 movq (%rdx), %rsi411# CHECK-NEXT: - - - - - - 1.00 - movq (%rbx), %rdi412 413# CHECK: Timeline view:414# CHECK-NEXT: Index 012345678415 416# CHECK: [0,0] DeeeeeER. movq (%rax), %rsp417# CHECK-NEXT: [0,1] DeeeeeER. movq (%rcx), %rbp418# CHECK-NEXT: [0,2] D=eeeeeER movq (%rdx), %rsi419# CHECK-NEXT: [0,3] D=eeeeeER movq (%rbx), %rdi420 421# CHECK: Average Wait times (based on the timeline view):422# CHECK-NEXT: [0]: Executions423# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue424# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready425# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage426 427# CHECK: [0] [1] [2] [3]428# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movq (%rax), %rsp429# CHECK-NEXT: 1. 1 1.0 1.0 0.0 movq (%rcx), %rbp430# CHECK-NEXT: 2. 1 2.0 2.0 0.0 movq (%rdx), %rsi431# CHECK-NEXT: 3. 1 2.0 2.0 0.0 movq (%rbx), %rdi432# CHECK-NEXT: 1 1.5 1.5 0.0 <total>433 434# CHECK: [4] Code Region435 436# CHECK: Iterations: 100437# CHECK-NEXT: Instructions: 400438# CHECK-NEXT: Total Cycles: 207439# CHECK-NEXT: Total uOps: 400440 441# CHECK: Dispatch Width: 4442# CHECK-NEXT: uOps Per Cycle: 1.93443# CHECK-NEXT: IPC: 1.93444# CHECK-NEXT: Block RThroughput: 2.0445 446# CHECK: Instruction Info:447# CHECK-NEXT: [1]: #uOps448# CHECK-NEXT: [2]: Latency449# CHECK-NEXT: [3]: RThroughput450# CHECK-NEXT: [4]: MayLoad451# CHECK-NEXT: [5]: MayStore452# CHECK-NEXT: [6]: HasSideEffects (U)453 454# CHECK: [1] [2] [3] [4] [5] [6] Instructions:455# CHECK-NEXT: 1 5 0.50 * movd (%rax), %mm0456# CHECK-NEXT: 1 5 0.50 * movd (%rcx), %mm1457# CHECK-NEXT: 1 5 0.50 * movd (%rdx), %mm2458# CHECK-NEXT: 1 5 0.50 * movd (%rbx), %mm3459 460# CHECK: Dynamic Dispatch Stall Cycles:461# CHECK-NEXT: RAT - Register unavailable: 0462# CHECK-NEXT: RCU - Retire tokens unavailable: 0463# CHECK-NEXT: SCHEDQ - Scheduler full: 147 (71.0%)464# CHECK-NEXT: LQ - Load queue full: 0465# CHECK-NEXT: SQ - Store queue full: 0466# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 0467# CHECK-NEXT: USH - Uncategorised Structural Hazard: 0468 469# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:470# CHECK-NEXT: [# dispatched], [# cycles]471# CHECK-NEXT: 0, 33 (15.9%)472# CHECK-NEXT: 2, 148 (71.5%)473# CHECK-NEXT: 4, 26 (12.6%)474 475# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:476# CHECK-NEXT: [# issued], [# cycles]477# CHECK-NEXT: 0, 7 (3.4%)478# CHECK-NEXT: 2, 200 (96.6%)479 480# CHECK: Scheduler's queue usage:481# CHECK-NEXT: [1] Resource name.482# CHECK-NEXT: [2] Average number of used buffer entries.483# CHECK-NEXT: [3] Maximum number of used buffer entries.484# CHECK-NEXT: [4] Total number of buffer entries.485 486# CHECK: [1] [2] [3] [4]487# CHECK-NEXT: SBPortAny 45 54 54488 489# CHECK: Resources:490# CHECK-NEXT: [0] - SBDivider491# CHECK-NEXT: [1] - SBFPDivider492# CHECK-NEXT: [2] - SBPort0493# CHECK-NEXT: [3] - SBPort1494# CHECK-NEXT: [4] - SBPort4495# CHECK-NEXT: [5] - SBPort5496# CHECK-NEXT: [6.0] - SBPort23497# CHECK-NEXT: [6.1] - SBPort23498 499# CHECK: Resource pressure per iteration:500# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]501# CHECK-NEXT: - - - - - - 2.00 2.00502 503# CHECK: Resource pressure by instruction:504# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:505# CHECK-NEXT: - - - - - - - 1.00 movd (%rax), %mm0506# CHECK-NEXT: - - - - - - 1.00 - movd (%rcx), %mm1507# CHECK-NEXT: - - - - - - - 1.00 movd (%rdx), %mm2508# CHECK-NEXT: - - - - - - 1.00 - movd (%rbx), %mm3509 510# CHECK: Timeline view:511# CHECK-NEXT: Index 012345678512 513# CHECK: [0,0] DeeeeeER. movd (%rax), %mm0514# CHECK-NEXT: [0,1] DeeeeeER. movd (%rcx), %mm1515# CHECK-NEXT: [0,2] D=eeeeeER movd (%rdx), %mm2516# CHECK-NEXT: [0,3] D=eeeeeER movd (%rbx), %mm3517 518# CHECK: Average Wait times (based on the timeline view):519# CHECK-NEXT: [0]: Executions520# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue521# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready522# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage523 524# CHECK: [0] [1] [2] [3]525# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movd (%rax), %mm0526# CHECK-NEXT: 1. 1 1.0 1.0 0.0 movd (%rcx), %mm1527# CHECK-NEXT: 2. 1 2.0 2.0 0.0 movd (%rdx), %mm2528# CHECK-NEXT: 3. 1 2.0 2.0 0.0 movd (%rbx), %mm3529# CHECK-NEXT: 1 1.5 1.5 0.0 <total>530 531# CHECK: [5] Code Region532 533# CHECK: Iterations: 100534# CHECK-NEXT: Instructions: 400535# CHECK-NEXT: Total Cycles: 208536# CHECK-NEXT: Total uOps: 400537 538# CHECK: Dispatch Width: 4539# CHECK-NEXT: uOps Per Cycle: 1.92540# CHECK-NEXT: IPC: 1.92541# CHECK-NEXT: Block RThroughput: 2.0542 543# CHECK: Instruction Info:544# CHECK-NEXT: [1]: #uOps545# CHECK-NEXT: [2]: Latency546# CHECK-NEXT: [3]: RThroughput547# CHECK-NEXT: [4]: MayLoad548# CHECK-NEXT: [5]: MayStore549# CHECK-NEXT: [6]: HasSideEffects (U)550 551# CHECK: [1] [2] [3] [4] [5] [6] Instructions:552# CHECK-NEXT: 1 6 0.50 * movaps (%rax), %xmm0553# CHECK-NEXT: 1 6 0.50 * movaps (%rcx), %xmm1554# CHECK-NEXT: 1 6 0.50 * movaps (%rdx), %xmm2555# CHECK-NEXT: 1 6 0.50 * movaps (%rbx), %xmm3556 557# CHECK: Dynamic Dispatch Stall Cycles:558# CHECK-NEXT: RAT - Register unavailable: 0559# CHECK-NEXT: RCU - Retire tokens unavailable: 0560# CHECK-NEXT: SCHEDQ - Scheduler full: 147 (70.7%)561# CHECK-NEXT: LQ - Load queue full: 0562# CHECK-NEXT: SQ - Store queue full: 0563# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 0564# CHECK-NEXT: USH - Uncategorised Structural Hazard: 0565 566# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:567# CHECK-NEXT: [# dispatched], [# cycles]568# CHECK-NEXT: 0, 34 (16.3%)569# CHECK-NEXT: 2, 148 (71.2%)570# CHECK-NEXT: 4, 26 (12.5%)571 572# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:573# CHECK-NEXT: [# issued], [# cycles]574# CHECK-NEXT: 0, 8 (3.8%)575# CHECK-NEXT: 2, 200 (96.2%)576 577# CHECK: Scheduler's queue usage:578# CHECK-NEXT: [1] Resource name.579# CHECK-NEXT: [2] Average number of used buffer entries.580# CHECK-NEXT: [3] Maximum number of used buffer entries.581# CHECK-NEXT: [4] Total number of buffer entries.582 583# CHECK: [1] [2] [3] [4]584# CHECK-NEXT: SBPortAny 45 54 54585 586# CHECK: Resources:587# CHECK-NEXT: [0] - SBDivider588# CHECK-NEXT: [1] - SBFPDivider589# CHECK-NEXT: [2] - SBPort0590# CHECK-NEXT: [3] - SBPort1591# CHECK-NEXT: [4] - SBPort4592# CHECK-NEXT: [5] - SBPort5593# CHECK-NEXT: [6.0] - SBPort23594# CHECK-NEXT: [6.1] - SBPort23595 596# CHECK: Resource pressure per iteration:597# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]598# CHECK-NEXT: - - - - - - 2.00 2.00599 600# CHECK: Resource pressure by instruction:601# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:602# CHECK-NEXT: - - - - - - - 1.00 movaps (%rax), %xmm0603# CHECK-NEXT: - - - - - - 1.00 - movaps (%rcx), %xmm1604# CHECK-NEXT: - - - - - - - 1.00 movaps (%rdx), %xmm2605# CHECK-NEXT: - - - - - - 1.00 - movaps (%rbx), %xmm3606 607# CHECK: Timeline view:608# CHECK-NEXT: Index 0123456789609 610# CHECK: [0,0] DeeeeeeER. movaps (%rax), %xmm0611# CHECK-NEXT: [0,1] DeeeeeeER. movaps (%rcx), %xmm1612# CHECK-NEXT: [0,2] D=eeeeeeER movaps (%rdx), %xmm2613# CHECK-NEXT: [0,3] D=eeeeeeER movaps (%rbx), %xmm3614 615# CHECK: Average Wait times (based on the timeline view):616# CHECK-NEXT: [0]: Executions617# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue618# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready619# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage620 621# CHECK: [0] [1] [2] [3]622# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movaps (%rax), %xmm0623# CHECK-NEXT: 1. 1 1.0 1.0 0.0 movaps (%rcx), %xmm1624# CHECK-NEXT: 2. 1 2.0 2.0 0.0 movaps (%rdx), %xmm2625# CHECK-NEXT: 3. 1 2.0 2.0 0.0 movaps (%rbx), %xmm3626# CHECK-NEXT: 1 1.5 1.5 0.0 <total>627