633 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 -noalias=true < %s | FileCheck %s3 4# LLVM-MCA-BEGIN5movb %spl, (%rax)6movb %bpl, (%rcx)7movb %sil, (%rdx)8movb %dil, (%rbx)9# LLVM-MCA-END10 11# LLVM-MCA-BEGIN12movw %sp, (%rax)13movw %bp, (%rcx)14movw %si, (%rdx)15movw %di, (%rbx)16# LLVM-MCA-END17 18# LLVM-MCA-BEGIN19movl %esp, (%rax)20movl %ebp, (%rcx)21movl %esi, (%rdx)22movl %edi, (%rbx)23# LLVM-MCA-END24 25# LLVM-MCA-BEGIN26movq %rsp, (%rax)27movq %rbp, (%rcx)28movq %rsi, (%rdx)29movq %rdi, (%rbx)30# LLVM-MCA-END31 32# LLVM-MCA-BEGIN33movd %mm0, (%rax)34movd %mm1, (%rcx)35movd %mm2, (%rdx)36movd %mm3, (%rbx)37# LLVM-MCA-END38 39# LLVM-MCA-BEGIN40movaps %xmm0, (%rax)41movaps %xmm1, (%rcx)42movaps %xmm2, (%rdx)43movaps %xmm3, (%rbx)44# LLVM-MCA-END45 46# CHECK: [0] Code Region47 48# CHECK: Iterations: 10049# CHECK-NEXT: Instructions: 40050# CHECK-NEXT: Total Cycles: 40351# CHECK-NEXT: Total uOps: 40052 53# CHECK: Dispatch Width: 454# CHECK-NEXT: uOps Per Cycle: 0.9955# CHECK-NEXT: IPC: 0.9956# CHECK-NEXT: Block RThroughput: 4.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 1 1.00 * movb %spl, (%rax)68# CHECK-NEXT: 1 1 1.00 * movb %bpl, (%rcx)69# CHECK-NEXT: 1 1 1.00 * movb %sil, (%rdx)70# CHECK-NEXT: 1 1 1.00 * movb %dil, (%rbx)71 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: 329 (81.6%)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, 56 (13.9%)84# CHECK-NEXT: 1, 329 (81.6%)85# CHECK-NEXT: 3, 1 (0.2%)86# CHECK-NEXT: 4, 17 (4.2%)87 88# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:89# CHECK-NEXT: [# issued], [# cycles]90# CHECK-NEXT: 0, 3 (0.7%)91# CHECK-NEXT: 1, 400 (99.3%)92 93# CHECK: Scheduler's queue usage:94# CHECK-NEXT: [1] Resource name.95# CHECK-NEXT: [2] Average number of used buffer entries.96# CHECK-NEXT: [3] Maximum number of used buffer entries.97# CHECK-NEXT: [4] Total number of buffer entries.98 99# CHECK: [1] [2] [3] [4]100# CHECK-NEXT: SBPortAny 49 54 54101 102# CHECK: Resources:103# CHECK-NEXT: [0] - SBDivider104# CHECK-NEXT: [1] - SBFPDivider105# CHECK-NEXT: [2] - SBPort0106# CHECK-NEXT: [3] - SBPort1107# CHECK-NEXT: [4] - SBPort4108# CHECK-NEXT: [5] - SBPort5109# CHECK-NEXT: [6.0] - SBPort23110# CHECK-NEXT: [6.1] - SBPort23111 112# CHECK: Resource pressure per iteration:113# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]114# CHECK-NEXT: - - - - 4.00 - 2.00 2.00115 116# CHECK: Resource pressure by instruction:117# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:118# CHECK-NEXT: - - - - 1.00 - - 1.00 movb %spl, (%rax)119# CHECK-NEXT: - - - - 1.00 - 1.00 - movb %bpl, (%rcx)120# CHECK-NEXT: - - - - 1.00 - - 1.00 movb %sil, (%rdx)121# CHECK-NEXT: - - - - 1.00 - 1.00 - movb %dil, (%rbx)122 123# CHECK: Timeline view:124# CHECK-NEXT: Index 0123456125 126# CHECK: [0,0] DeER .. movb %spl, (%rax)127# CHECK-NEXT: [0,1] D=eER.. movb %bpl, (%rcx)128# CHECK-NEXT: [0,2] D==eER. movb %sil, (%rdx)129# CHECK-NEXT: [0,3] D===eER movb %dil, (%rbx)130 131# CHECK: Average Wait times (based on the timeline view):132# CHECK-NEXT: [0]: Executions133# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue134# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready135# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage136 137# CHECK: [0] [1] [2] [3]138# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movb %spl, (%rax)139# CHECK-NEXT: 1. 1 2.0 1.0 0.0 movb %bpl, (%rcx)140# CHECK-NEXT: 2. 1 3.0 1.0 0.0 movb %sil, (%rdx)141# CHECK-NEXT: 3. 1 4.0 1.0 0.0 movb %dil, (%rbx)142# CHECK-NEXT: 1 2.5 1.0 0.0 <total>143 144# CHECK: [1] Code Region145 146# CHECK: Iterations: 100147# CHECK-NEXT: Instructions: 400148# CHECK-NEXT: Total Cycles: 403149# CHECK-NEXT: Total uOps: 400150 151# CHECK: Dispatch Width: 4152# CHECK-NEXT: uOps Per Cycle: 0.99153# CHECK-NEXT: IPC: 0.99154# CHECK-NEXT: Block RThroughput: 4.0155 156# CHECK: Instruction Info:157# CHECK-NEXT: [1]: #uOps158# CHECK-NEXT: [2]: Latency159# CHECK-NEXT: [3]: RThroughput160# CHECK-NEXT: [4]: MayLoad161# CHECK-NEXT: [5]: MayStore162# CHECK-NEXT: [6]: HasSideEffects (U)163 164# CHECK: [1] [2] [3] [4] [5] [6] Instructions:165# CHECK-NEXT: 1 1 1.00 * movw %sp, (%rax)166# CHECK-NEXT: 1 1 1.00 * movw %bp, (%rcx)167# CHECK-NEXT: 1 1 1.00 * movw %si, (%rdx)168# CHECK-NEXT: 1 1 1.00 * movw %di, (%rbx)169 170# CHECK: Dynamic Dispatch Stall Cycles:171# CHECK-NEXT: RAT - Register unavailable: 0172# CHECK-NEXT: RCU - Retire tokens unavailable: 0173# CHECK-NEXT: SCHEDQ - Scheduler full: 329 (81.6%)174# CHECK-NEXT: LQ - Load queue full: 0175# CHECK-NEXT: SQ - Store queue full: 0176# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 0177# CHECK-NEXT: USH - Uncategorised Structural Hazard: 0178 179# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:180# CHECK-NEXT: [# dispatched], [# cycles]181# CHECK-NEXT: 0, 56 (13.9%)182# CHECK-NEXT: 1, 329 (81.6%)183# CHECK-NEXT: 3, 1 (0.2%)184# CHECK-NEXT: 4, 17 (4.2%)185 186# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:187# CHECK-NEXT: [# issued], [# cycles]188# CHECK-NEXT: 0, 3 (0.7%)189# CHECK-NEXT: 1, 400 (99.3%)190 191# CHECK: Scheduler's queue usage:192# CHECK-NEXT: [1] Resource name.193# CHECK-NEXT: [2] Average number of used buffer entries.194# CHECK-NEXT: [3] Maximum number of used buffer entries.195# CHECK-NEXT: [4] Total number of buffer entries.196 197# CHECK: [1] [2] [3] [4]198# CHECK-NEXT: SBPortAny 49 54 54199 200# CHECK: Resources:201# CHECK-NEXT: [0] - SBDivider202# CHECK-NEXT: [1] - SBFPDivider203# CHECK-NEXT: [2] - SBPort0204# CHECK-NEXT: [3] - SBPort1205# CHECK-NEXT: [4] - SBPort4206# CHECK-NEXT: [5] - SBPort5207# CHECK-NEXT: [6.0] - SBPort23208# CHECK-NEXT: [6.1] - SBPort23209 210# CHECK: Resource pressure per iteration:211# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]212# CHECK-NEXT: - - - - 4.00 - 2.00 2.00213 214# CHECK: Resource pressure by instruction:215# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:216# CHECK-NEXT: - - - - 1.00 - - 1.00 movw %sp, (%rax)217# CHECK-NEXT: - - - - 1.00 - 1.00 - movw %bp, (%rcx)218# CHECK-NEXT: - - - - 1.00 - - 1.00 movw %si, (%rdx)219# CHECK-NEXT: - - - - 1.00 - 1.00 - movw %di, (%rbx)220 221# CHECK: Timeline view:222# CHECK-NEXT: Index 0123456223 224# CHECK: [0,0] DeER .. movw %sp, (%rax)225# CHECK-NEXT: [0,1] D=eER.. movw %bp, (%rcx)226# CHECK-NEXT: [0,2] D==eER. movw %si, (%rdx)227# CHECK-NEXT: [0,3] D===eER movw %di, (%rbx)228 229# CHECK: Average Wait times (based on the timeline view):230# CHECK-NEXT: [0]: Executions231# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue232# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready233# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage234 235# CHECK: [0] [1] [2] [3]236# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movw %sp, (%rax)237# CHECK-NEXT: 1. 1 2.0 1.0 0.0 movw %bp, (%rcx)238# CHECK-NEXT: 2. 1 3.0 1.0 0.0 movw %si, (%rdx)239# CHECK-NEXT: 3. 1 4.0 1.0 0.0 movw %di, (%rbx)240# CHECK-NEXT: 1 2.5 1.0 0.0 <total>241 242# CHECK: [2] Code Region243 244# CHECK: Iterations: 100245# CHECK-NEXT: Instructions: 400246# CHECK-NEXT: Total Cycles: 403247# CHECK-NEXT: Total uOps: 400248 249# CHECK: Dispatch Width: 4250# CHECK-NEXT: uOps Per Cycle: 0.99251# CHECK-NEXT: IPC: 0.99252# CHECK-NEXT: Block RThroughput: 4.0253 254# CHECK: Instruction Info:255# CHECK-NEXT: [1]: #uOps256# CHECK-NEXT: [2]: Latency257# CHECK-NEXT: [3]: RThroughput258# CHECK-NEXT: [4]: MayLoad259# CHECK-NEXT: [5]: MayStore260# CHECK-NEXT: [6]: HasSideEffects (U)261 262# CHECK: [1] [2] [3] [4] [5] [6] Instructions:263# CHECK-NEXT: 1 1 1.00 * movl %esp, (%rax)264# CHECK-NEXT: 1 1 1.00 * movl %ebp, (%rcx)265# CHECK-NEXT: 1 1 1.00 * movl %esi, (%rdx)266# CHECK-NEXT: 1 1 1.00 * movl %edi, (%rbx)267 268# CHECK: Dynamic Dispatch Stall Cycles:269# CHECK-NEXT: RAT - Register unavailable: 0270# CHECK-NEXT: RCU - Retire tokens unavailable: 0271# CHECK-NEXT: SCHEDQ - Scheduler full: 329 (81.6%)272# CHECK-NEXT: LQ - Load queue full: 0273# CHECK-NEXT: SQ - Store queue full: 0274# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 0275# CHECK-NEXT: USH - Uncategorised Structural Hazard: 0276 277# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:278# CHECK-NEXT: [# dispatched], [# cycles]279# CHECK-NEXT: 0, 56 (13.9%)280# CHECK-NEXT: 1, 329 (81.6%)281# CHECK-NEXT: 3, 1 (0.2%)282# CHECK-NEXT: 4, 17 (4.2%)283 284# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:285# CHECK-NEXT: [# issued], [# cycles]286# CHECK-NEXT: 0, 3 (0.7%)287# CHECK-NEXT: 1, 400 (99.3%)288 289# CHECK: Scheduler's queue usage:290# CHECK-NEXT: [1] Resource name.291# CHECK-NEXT: [2] Average number of used buffer entries.292# CHECK-NEXT: [3] Maximum number of used buffer entries.293# CHECK-NEXT: [4] Total number of buffer entries.294 295# CHECK: [1] [2] [3] [4]296# CHECK-NEXT: SBPortAny 49 54 54297 298# CHECK: Resources:299# CHECK-NEXT: [0] - SBDivider300# CHECK-NEXT: [1] - SBFPDivider301# CHECK-NEXT: [2] - SBPort0302# CHECK-NEXT: [3] - SBPort1303# CHECK-NEXT: [4] - SBPort4304# CHECK-NEXT: [5] - SBPort5305# CHECK-NEXT: [6.0] - SBPort23306# CHECK-NEXT: [6.1] - SBPort23307 308# CHECK: Resource pressure per iteration:309# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]310# CHECK-NEXT: - - - - 4.00 - 2.00 2.00311 312# CHECK: Resource pressure by instruction:313# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:314# CHECK-NEXT: - - - - 1.00 - - 1.00 movl %esp, (%rax)315# CHECK-NEXT: - - - - 1.00 - 1.00 - movl %ebp, (%rcx)316# CHECK-NEXT: - - - - 1.00 - - 1.00 movl %esi, (%rdx)317# CHECK-NEXT: - - - - 1.00 - 1.00 - movl %edi, (%rbx)318 319# CHECK: Timeline view:320# CHECK-NEXT: Index 0123456321 322# CHECK: [0,0] DeER .. movl %esp, (%rax)323# CHECK-NEXT: [0,1] D=eER.. movl %ebp, (%rcx)324# CHECK-NEXT: [0,2] D==eER. movl %esi, (%rdx)325# CHECK-NEXT: [0,3] D===eER movl %edi, (%rbx)326 327# CHECK: Average Wait times (based on the timeline view):328# CHECK-NEXT: [0]: Executions329# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue330# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready331# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage332 333# CHECK: [0] [1] [2] [3]334# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movl %esp, (%rax)335# CHECK-NEXT: 1. 1 2.0 1.0 0.0 movl %ebp, (%rcx)336# CHECK-NEXT: 2. 1 3.0 1.0 0.0 movl %esi, (%rdx)337# CHECK-NEXT: 3. 1 4.0 1.0 0.0 movl %edi, (%rbx)338# CHECK-NEXT: 1 2.5 1.0 0.0 <total>339 340# CHECK: [3] Code Region341 342# CHECK: Iterations: 100343# CHECK-NEXT: Instructions: 400344# CHECK-NEXT: Total Cycles: 403345# CHECK-NEXT: Total uOps: 400346 347# CHECK: Dispatch Width: 4348# CHECK-NEXT: uOps Per Cycle: 0.99349# CHECK-NEXT: IPC: 0.99350# CHECK-NEXT: Block RThroughput: 4.0351 352# CHECK: Instruction Info:353# CHECK-NEXT: [1]: #uOps354# CHECK-NEXT: [2]: Latency355# CHECK-NEXT: [3]: RThroughput356# CHECK-NEXT: [4]: MayLoad357# CHECK-NEXT: [5]: MayStore358# CHECK-NEXT: [6]: HasSideEffects (U)359 360# CHECK: [1] [2] [3] [4] [5] [6] Instructions:361# CHECK-NEXT: 1 1 1.00 * movq %rsp, (%rax)362# CHECK-NEXT: 1 1 1.00 * movq %rbp, (%rcx)363# CHECK-NEXT: 1 1 1.00 * movq %rsi, (%rdx)364# CHECK-NEXT: 1 1 1.00 * movq %rdi, (%rbx)365 366# CHECK: Dynamic Dispatch Stall Cycles:367# CHECK-NEXT: RAT - Register unavailable: 0368# CHECK-NEXT: RCU - Retire tokens unavailable: 0369# CHECK-NEXT: SCHEDQ - Scheduler full: 329 (81.6%)370# CHECK-NEXT: LQ - Load queue full: 0371# CHECK-NEXT: SQ - Store queue full: 0372# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 0373# CHECK-NEXT: USH - Uncategorised Structural Hazard: 0374 375# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:376# CHECK-NEXT: [# dispatched], [# cycles]377# CHECK-NEXT: 0, 56 (13.9%)378# CHECK-NEXT: 1, 329 (81.6%)379# CHECK-NEXT: 3, 1 (0.2%)380# CHECK-NEXT: 4, 17 (4.2%)381 382# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:383# CHECK-NEXT: [# issued], [# cycles]384# CHECK-NEXT: 0, 3 (0.7%)385# CHECK-NEXT: 1, 400 (99.3%)386 387# CHECK: Scheduler's queue usage:388# CHECK-NEXT: [1] Resource name.389# CHECK-NEXT: [2] Average number of used buffer entries.390# CHECK-NEXT: [3] Maximum number of used buffer entries.391# CHECK-NEXT: [4] Total number of buffer entries.392 393# CHECK: [1] [2] [3] [4]394# CHECK-NEXT: SBPortAny 49 54 54395 396# CHECK: Resources:397# CHECK-NEXT: [0] - SBDivider398# CHECK-NEXT: [1] - SBFPDivider399# CHECK-NEXT: [2] - SBPort0400# CHECK-NEXT: [3] - SBPort1401# CHECK-NEXT: [4] - SBPort4402# CHECK-NEXT: [5] - SBPort5403# CHECK-NEXT: [6.0] - SBPort23404# CHECK-NEXT: [6.1] - SBPort23405 406# CHECK: Resource pressure per iteration:407# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]408# CHECK-NEXT: - - - - 4.00 - 2.00 2.00409 410# CHECK: Resource pressure by instruction:411# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:412# CHECK-NEXT: - - - - 1.00 - - 1.00 movq %rsp, (%rax)413# CHECK-NEXT: - - - - 1.00 - 1.00 - movq %rbp, (%rcx)414# CHECK-NEXT: - - - - 1.00 - - 1.00 movq %rsi, (%rdx)415# CHECK-NEXT: - - - - 1.00 - 1.00 - movq %rdi, (%rbx)416 417# CHECK: Timeline view:418# CHECK-NEXT: Index 0123456419 420# CHECK: [0,0] DeER .. movq %rsp, (%rax)421# CHECK-NEXT: [0,1] D=eER.. movq %rbp, (%rcx)422# CHECK-NEXT: [0,2] D==eER. movq %rsi, (%rdx)423# CHECK-NEXT: [0,3] D===eER movq %rdi, (%rbx)424 425# CHECK: Average Wait times (based on the timeline view):426# CHECK-NEXT: [0]: Executions427# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue428# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready429# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage430 431# CHECK: [0] [1] [2] [3]432# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movq %rsp, (%rax)433# CHECK-NEXT: 1. 1 2.0 1.0 0.0 movq %rbp, (%rcx)434# CHECK-NEXT: 2. 1 3.0 1.0 0.0 movq %rsi, (%rdx)435# CHECK-NEXT: 3. 1 4.0 1.0 0.0 movq %rdi, (%rbx)436# CHECK-NEXT: 1 2.5 1.0 0.0 <total>437 438# CHECK: [4] Code Region439 440# CHECK: Iterations: 100441# CHECK-NEXT: Instructions: 400442# CHECK-NEXT: Total Cycles: 403443# CHECK-NEXT: Total uOps: 400444 445# CHECK: Dispatch Width: 4446# CHECK-NEXT: uOps Per Cycle: 0.99447# CHECK-NEXT: IPC: 0.99448# CHECK-NEXT: Block RThroughput: 4.0449 450# CHECK: Instruction Info:451# CHECK-NEXT: [1]: #uOps452# CHECK-NEXT: [2]: Latency453# CHECK-NEXT: [3]: RThroughput454# CHECK-NEXT: [4]: MayLoad455# CHECK-NEXT: [5]: MayStore456# CHECK-NEXT: [6]: HasSideEffects (U)457 458# CHECK: [1] [2] [3] [4] [5] [6] Instructions:459# CHECK-NEXT: 1 1 1.00 * U movd %mm0, (%rax)460# CHECK-NEXT: 1 1 1.00 * U movd %mm1, (%rcx)461# CHECK-NEXT: 1 1 1.00 * U movd %mm2, (%rdx)462# CHECK-NEXT: 1 1 1.00 * U movd %mm3, (%rbx)463 464# CHECK: Dynamic Dispatch Stall Cycles:465# CHECK-NEXT: RAT - Register unavailable: 0466# CHECK-NEXT: RCU - Retire tokens unavailable: 0467# CHECK-NEXT: SCHEDQ - Scheduler full: 329 (81.6%)468# CHECK-NEXT: LQ - Load queue full: 0469# CHECK-NEXT: SQ - Store queue full: 0470# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 0471# CHECK-NEXT: USH - Uncategorised Structural Hazard: 0472 473# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:474# CHECK-NEXT: [# dispatched], [# cycles]475# CHECK-NEXT: 0, 56 (13.9%)476# CHECK-NEXT: 1, 329 (81.6%)477# CHECK-NEXT: 3, 1 (0.2%)478# CHECK-NEXT: 4, 17 (4.2%)479 480# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:481# CHECK-NEXT: [# issued], [# cycles]482# CHECK-NEXT: 0, 3 (0.7%)483# CHECK-NEXT: 1, 400 (99.3%)484 485# CHECK: Scheduler's queue usage:486# CHECK-NEXT: [1] Resource name.487# CHECK-NEXT: [2] Average number of used buffer entries.488# CHECK-NEXT: [3] Maximum number of used buffer entries.489# CHECK-NEXT: [4] Total number of buffer entries.490 491# CHECK: [1] [2] [3] [4]492# CHECK-NEXT: SBPortAny 49 54 54493 494# CHECK: Resources:495# CHECK-NEXT: [0] - SBDivider496# CHECK-NEXT: [1] - SBFPDivider497# CHECK-NEXT: [2] - SBPort0498# CHECK-NEXT: [3] - SBPort1499# CHECK-NEXT: [4] - SBPort4500# CHECK-NEXT: [5] - SBPort5501# CHECK-NEXT: [6.0] - SBPort23502# CHECK-NEXT: [6.1] - SBPort23503 504# CHECK: Resource pressure per iteration:505# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]506# CHECK-NEXT: - - - - 4.00 - 2.00 2.00507 508# CHECK: Resource pressure by instruction:509# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:510# CHECK-NEXT: - - - - 1.00 - - 1.00 movd %mm0, (%rax)511# CHECK-NEXT: - - - - 1.00 - 1.00 - movd %mm1, (%rcx)512# CHECK-NEXT: - - - - 1.00 - - 1.00 movd %mm2, (%rdx)513# CHECK-NEXT: - - - - 1.00 - 1.00 - movd %mm3, (%rbx)514 515# CHECK: Timeline view:516# CHECK-NEXT: Index 0123456517 518# CHECK: [0,0] DeER .. movd %mm0, (%rax)519# CHECK-NEXT: [0,1] D=eER.. movd %mm1, (%rcx)520# CHECK-NEXT: [0,2] D==eER. movd %mm2, (%rdx)521# CHECK-NEXT: [0,3] D===eER movd %mm3, (%rbx)522 523# CHECK: Average Wait times (based on the timeline view):524# CHECK-NEXT: [0]: Executions525# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue526# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready527# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage528 529# CHECK: [0] [1] [2] [3]530# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movd %mm0, (%rax)531# CHECK-NEXT: 1. 1 2.0 1.0 0.0 movd %mm1, (%rcx)532# CHECK-NEXT: 2. 1 3.0 1.0 0.0 movd %mm2, (%rdx)533# CHECK-NEXT: 3. 1 4.0 1.0 0.0 movd %mm3, (%rbx)534# CHECK-NEXT: 1 2.5 1.0 0.0 <total>535 536# CHECK: [5] Code Region537 538# CHECK: Iterations: 100539# CHECK-NEXT: Instructions: 400540# CHECK-NEXT: Total Cycles: 403541# CHECK-NEXT: Total uOps: 400542 543# CHECK: Dispatch Width: 4544# CHECK-NEXT: uOps Per Cycle: 0.99545# CHECK-NEXT: IPC: 0.99546# CHECK-NEXT: Block RThroughput: 4.0547 548# CHECK: Instruction Info:549# CHECK-NEXT: [1]: #uOps550# CHECK-NEXT: [2]: Latency551# CHECK-NEXT: [3]: RThroughput552# CHECK-NEXT: [4]: MayLoad553# CHECK-NEXT: [5]: MayStore554# CHECK-NEXT: [6]: HasSideEffects (U)555 556# CHECK: [1] [2] [3] [4] [5] [6] Instructions:557# CHECK-NEXT: 1 1 1.00 * movaps %xmm0, (%rax)558# CHECK-NEXT: 1 1 1.00 * movaps %xmm1, (%rcx)559# CHECK-NEXT: 1 1 1.00 * movaps %xmm2, (%rdx)560# CHECK-NEXT: 1 1 1.00 * movaps %xmm3, (%rbx)561 562# CHECK: Dynamic Dispatch Stall Cycles:563# CHECK-NEXT: RAT - Register unavailable: 0564# CHECK-NEXT: RCU - Retire tokens unavailable: 0565# CHECK-NEXT: SCHEDQ - Scheduler full: 329 (81.6%)566# CHECK-NEXT: LQ - Load queue full: 0567# CHECK-NEXT: SQ - Store queue full: 0568# CHECK-NEXT: GROUP - Static restrictions on the dispatch group: 0569# CHECK-NEXT: USH - Uncategorised Structural Hazard: 0570 571# CHECK: Dispatch Logic - number of cycles where we saw N micro opcodes dispatched:572# CHECK-NEXT: [# dispatched], [# cycles]573# CHECK-NEXT: 0, 56 (13.9%)574# CHECK-NEXT: 1, 329 (81.6%)575# CHECK-NEXT: 3, 1 (0.2%)576# CHECK-NEXT: 4, 17 (4.2%)577 578# CHECK: Schedulers - number of cycles where we saw N micro opcodes issued:579# CHECK-NEXT: [# issued], [# cycles]580# CHECK-NEXT: 0, 3 (0.7%)581# CHECK-NEXT: 1, 400 (99.3%)582 583# CHECK: Scheduler's queue usage:584# CHECK-NEXT: [1] Resource name.585# CHECK-NEXT: [2] Average number of used buffer entries.586# CHECK-NEXT: [3] Maximum number of used buffer entries.587# CHECK-NEXT: [4] Total number of buffer entries.588 589# CHECK: [1] [2] [3] [4]590# CHECK-NEXT: SBPortAny 49 54 54591 592# CHECK: Resources:593# CHECK-NEXT: [0] - SBDivider594# CHECK-NEXT: [1] - SBFPDivider595# CHECK-NEXT: [2] - SBPort0596# CHECK-NEXT: [3] - SBPort1597# CHECK-NEXT: [4] - SBPort4598# CHECK-NEXT: [5] - SBPort5599# CHECK-NEXT: [6.0] - SBPort23600# CHECK-NEXT: [6.1] - SBPort23601 602# CHECK: Resource pressure per iteration:603# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]604# CHECK-NEXT: - - - - 4.00 - 2.00 2.00605 606# CHECK: Resource pressure by instruction:607# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:608# CHECK-NEXT: - - - - 1.00 - - 1.00 movaps %xmm0, (%rax)609# CHECK-NEXT: - - - - 1.00 - 1.00 - movaps %xmm1, (%rcx)610# CHECK-NEXT: - - - - 1.00 - - 1.00 movaps %xmm2, (%rdx)611# CHECK-NEXT: - - - - 1.00 - 1.00 - movaps %xmm3, (%rbx)612 613# CHECK: Timeline view:614# CHECK-NEXT: Index 0123456615 616# CHECK: [0,0] DeER .. movaps %xmm0, (%rax)617# CHECK-NEXT: [0,1] D=eER.. movaps %xmm1, (%rcx)618# CHECK-NEXT: [0,2] D==eER. movaps %xmm2, (%rdx)619# CHECK-NEXT: [0,3] D===eER movaps %xmm3, (%rbx)620 621# CHECK: Average Wait times (based on the timeline view):622# CHECK-NEXT: [0]: Executions623# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue624# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready625# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage626 627# CHECK: [0] [1] [2] [3]628# CHECK-NEXT: 0. 1 1.0 1.0 0.0 movaps %xmm0, (%rax)629# CHECK-NEXT: 1. 1 2.0 1.0 0.0 movaps %xmm1, (%rcx)630# CHECK-NEXT: 2. 1 3.0 1.0 0.0 movaps %xmm2, (%rdx)631# CHECK-NEXT: 3. 1 4.0 1.0 0.0 movaps %xmm3, (%rbx)632# CHECK-NEXT: 1 2.5 1.0 0.0 <total>633