10e21ca12SAndrea Di Biagio# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py 20e21ca12SAndrea Di Biagio# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -timeline -timeline-max-iterations=3 < %s | FileCheck %s 30e21ca12SAndrea Di Biagio 40e21ca12SAndrea Di Biagioleaq 8(%rsp, %rdi, 2), %rax 50e21ca12SAndrea Di Biagiovbroadcastss (%rax), %ymm0 60e21ca12SAndrea Di Biagio 70e21ca12SAndrea Di Biagio# CHECK: Iterations: 100 80e21ca12SAndrea Di Biagio# CHECK-NEXT: Instructions: 200 9a59ec4efSAndrea Di Biagio# CHECK-NEXT: Total Cycles: 209 100e21ca12SAndrea Di Biagio# CHECK-NEXT: Total uOps: 300 110e21ca12SAndrea Di Biagio 120e21ca12SAndrea Di Biagio# CHECK: Dispatch Width: 2 130e21ca12SAndrea Di Biagio# CHECK-NEXT: uOps Per Cycle: 1.44 140e21ca12SAndrea Di Biagio# CHECK-NEXT: IPC: 0.96 150e21ca12SAndrea Di Biagio# CHECK-NEXT: Block RThroughput: 2.0 160e21ca12SAndrea Di Biagio 170e21ca12SAndrea Di Biagio# CHECK: Instruction Info: 180e21ca12SAndrea Di Biagio# CHECK-NEXT: [1]: #uOps 190e21ca12SAndrea Di Biagio# CHECK-NEXT: [2]: Latency 200e21ca12SAndrea Di Biagio# CHECK-NEXT: [3]: RThroughput 210e21ca12SAndrea Di Biagio# CHECK-NEXT: [4]: MayLoad 220e21ca12SAndrea Di Biagio# CHECK-NEXT: [5]: MayStore 230e21ca12SAndrea Di Biagio# CHECK-NEXT: [6]: HasSideEffects (U) 240e21ca12SAndrea Di Biagio 250e21ca12SAndrea Di Biagio# CHECK: [1] [2] [3] [4] [5] [6] Instructions: 260e21ca12SAndrea Di Biagio# CHECK-NEXT: 1 2 1.00 leaq 8(%rsp,%rdi,2), %rax 270e21ca12SAndrea Di Biagio# CHECK-NEXT: 2 6 2.00 * vbroadcastss (%rax), %ymm0 280e21ca12SAndrea Di Biagio 290e21ca12SAndrea Di Biagio# CHECK: Resources: 300e21ca12SAndrea Di Biagio# CHECK-NEXT: [0] - JALU0 310e21ca12SAndrea Di Biagio# CHECK-NEXT: [1] - JALU1 320e21ca12SAndrea Di Biagio# CHECK-NEXT: [2] - JDiv 330e21ca12SAndrea Di Biagio# CHECK-NEXT: [3] - JFPA 340e21ca12SAndrea Di Biagio# CHECK-NEXT: [4] - JFPM 350e21ca12SAndrea Di Biagio# CHECK-NEXT: [5] - JFPU0 360e21ca12SAndrea Di Biagio# CHECK-NEXT: [6] - JFPU1 370e21ca12SAndrea Di Biagio# CHECK-NEXT: [7] - JLAGU 380e21ca12SAndrea Di Biagio# CHECK-NEXT: [8] - JMul 390e21ca12SAndrea Di Biagio# CHECK-NEXT: [9] - JSAGU 400e21ca12SAndrea Di Biagio# CHECK-NEXT: [10] - JSTC 410e21ca12SAndrea Di Biagio# CHECK-NEXT: [11] - JVALU0 420e21ca12SAndrea Di Biagio# CHECK-NEXT: [12] - JVALU1 430e21ca12SAndrea Di Biagio# CHECK-NEXT: [13] - JVIMUL 440e21ca12SAndrea Di Biagio 450e21ca12SAndrea Di Biagio# CHECK: Resource pressure per iteration: 460e21ca12SAndrea Di Biagio# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] 470e21ca12SAndrea Di Biagio# CHECK-NEXT: - 1.00 - 2.00 2.00 1.00 1.00 1.00 - 1.00 - - - - 480e21ca12SAndrea Di Biagio 490e21ca12SAndrea Di Biagio# CHECK: Resource pressure by instruction: 500e21ca12SAndrea Di Biagio# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] Instructions: 510e21ca12SAndrea Di Biagio# CHECK-NEXT: - 1.00 - - - - - - - 1.00 - - - - leaq 8(%rsp,%rdi,2), %rax 520e21ca12SAndrea Di Biagio# CHECK-NEXT: - - - 2.00 2.00 1.00 1.00 1.00 - - - - - - vbroadcastss (%rax), %ymm0 530e21ca12SAndrea Di Biagio 540e21ca12SAndrea Di Biagio# CHECK: Timeline view: 55a59ec4efSAndrea Di Biagio# CHECK-NEXT: 01234 560e21ca12SAndrea Di Biagio# CHECK-NEXT: Index 0123456789 570e21ca12SAndrea Di Biagio 580e21ca12SAndrea Di Biagio# CHECK: [0,0] DeeER. . . leaq 8(%rsp,%rdi,2), %rax 59a59ec4efSAndrea Di Biagio# CHECK-NEXT: [0,1] .D=eeeeeeER . vbroadcastss (%rax), %ymm0 60a59ec4efSAndrea Di Biagio# CHECK-NEXT: [1,0] . DeeE----R . leaq 8(%rsp,%rdi,2), %rax 61a59ec4efSAndrea Di Biagio# CHECK-NEXT: [1,1] . D=eeeeeeER . vbroadcastss (%rax), %ymm0 62a59ec4efSAndrea Di Biagio# CHECK-NEXT: [2,0] . DeeE----R . leaq 8(%rsp,%rdi,2), %rax 63a59ec4efSAndrea Di Biagio# CHECK-NEXT: [2,1] . D=eeeeeeER vbroadcastss (%rax), %ymm0 640e21ca12SAndrea Di Biagio 650e21ca12SAndrea Di Biagio# CHECK: Average Wait times (based on the timeline view): 660e21ca12SAndrea Di Biagio# CHECK-NEXT: [0]: Executions 670e21ca12SAndrea Di Biagio# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue 680e21ca12SAndrea Di Biagio# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready 690e21ca12SAndrea Di Biagio# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage 700e21ca12SAndrea Di Biagio 710e21ca12SAndrea Di Biagio# CHECK: [0] [1] [2] [3] 72a59ec4efSAndrea Di Biagio# CHECK-NEXT: 0. 3 1.0 1.0 2.7 leaq 8(%rsp,%rdi,2), %rax 73a59ec4efSAndrea Di Biagio# CHECK-NEXT: 1. 3 2.0 0.0 0.0 vbroadcastss (%rax), %ymm0 74*a5e65c1cSRoman Lebedev# CHECK-NEXT: 3 1.5 0.5 1.3 <total> 75