mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-04 19:26:30 +00:00
[llvm-mca] Removed an empty line generated by the timeline view. NFC.
Also, regenerate all tests. llvm-svn: 332853
This commit is contained in:
parent
d65d55551b
commit
36a508f010
@ -39,8 +39,7 @@
|
||||
# CHECK-NEXT: 1.00 - - - - - - - b t
|
||||
|
||||
# CHECK: Timeline view:
|
||||
|
||||
# CHECK: Index 0123456
|
||||
# CHECK-NEXT: Index 0123456
|
||||
|
||||
# CHECK: [0,0] DeER .. b t
|
||||
# CHECK-NEXT: [1,0] D=eER.. b t
|
||||
|
@ -28,8 +28,7 @@
|
||||
# ALL-NEXT: 1 0 - b t
|
||||
|
||||
# ALL: Timeline view:
|
||||
|
||||
# ALL: Index 01
|
||||
# ALL-NEXT: Index 01
|
||||
|
||||
# ALL: [0,0] DR b t
|
||||
# ALL-NEXT: [1,0] DR b t
|
||||
|
@ -1,14 +1,15 @@
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=arm-eabi -mcpu=cortex-a9 -iterations=100 < %s | FileCheck %s
|
||||
|
||||
vadd.f32 s0, s2, s2
|
||||
|
||||
# CHECK: Iterations: 100
|
||||
# CHECK: Iterations: 100
|
||||
# CHECK-NEXT: Instructions: 100
|
||||
# CHECK-NEXT: Total Cycles: 105
|
||||
# CHECK-NEXT: Dispatch Width: 2
|
||||
# CHECK-NEXT: IPC: 0.95
|
||||
|
||||
# CHECK: Instruction Info:
|
||||
# CHECK: Instruction Info:
|
||||
# CHECK-NEXT: [1]: #uOps
|
||||
# CHECK-NEXT: [2]: Latency
|
||||
# CHECK-NEXT: [3]: RThroughput
|
||||
@ -16,23 +17,23 @@ vadd.f32 s0, s2, s2
|
||||
# CHECK-NEXT: [5]: MayStore
|
||||
# CHECK-NEXT: [6]: HasSideEffects
|
||||
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 4 1.00 vadd.f32 s0, s2, s2
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 4 1.00 vadd.f32 s0, s2, s2
|
||||
|
||||
|
||||
# CHECK: Resources:
|
||||
# CHECK-NEXT: [0] - A9UnitAGU
|
||||
# CHECK: Resources:
|
||||
# CHECK-NEXT: [0] - A9UnitAGU
|
||||
# CHECK-NEXT: [1.0] - A9UnitALU
|
||||
# CHECK-NEXT: [1.1] - A9UnitALU
|
||||
# CHECK-NEXT: [2] - A9UnitB
|
||||
# CHECK-NEXT: [3] - A9UnitFP
|
||||
# CHECK-NEXT: [4] - A9UnitLS
|
||||
# CHECK-NEXT: [5] - A9UnitMul
|
||||
# CHECK-NEXT: [2] - A9UnitB
|
||||
# CHECK-NEXT: [3] - A9UnitFP
|
||||
# CHECK-NEXT: [4] - A9UnitLS
|
||||
# CHECK-NEXT: [5] - A9UnitMul
|
||||
|
||||
# CHECK: Resource pressure per iteration:
|
||||
# CHECK: Resource pressure per iteration:
|
||||
# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5]
|
||||
# CHECK-NEXT: 1.00 - - - 1.00 - -
|
||||
|
||||
# CHECK: Resource pressure by instruction:
|
||||
# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] Instructions:
|
||||
# CHECK-NEXT: 1.00 - - - 1.00 - - vadd.f32 s0, s2, s2
|
||||
# CHECK: Resource pressure by instruction:
|
||||
# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] Instructions:
|
||||
# CHECK-NEXT: 1.00 - - - 1.00 - - vadd.f32 s0, s2, s2
|
||||
|
||||
|
@ -27,8 +27,7 @@ vmulps (%rdi), %xmm1, %xmm2
|
||||
# CHECK-NEXT: 1 7 1.00 * vmulps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# CHECK: Timeline view:
|
||||
|
||||
# CHECK: Index 0123456789
|
||||
# CHECK-NEXT: Index 0123456789
|
||||
|
||||
# CHECK: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# CHECK-NEXT: [0,1] DeeeeeeeER vmulps (%rdi), %xmm1, %xmm2
|
||||
|
@ -26,8 +26,7 @@
|
||||
# CHECK-NEXT: 2 6 1.00 * imull (%rdi)
|
||||
|
||||
# CHECK: Timeline view:
|
||||
|
||||
# CHECK: Index 0123456789
|
||||
# CHECK-NEXT: Index 0123456789
|
||||
|
||||
# CHECK: [0,0] DeeeER . imull %esi
|
||||
# CHECK-NEXT: [0,1] .DeeeeeeER imull (%rdi)
|
||||
|
@ -25,8 +25,7 @@
|
||||
# CHECK-NEXT: 1 1 0.50 addq %rdx, %r8
|
||||
|
||||
# CHECK: Timeline view:
|
||||
|
||||
# CHECK: Index 0123456
|
||||
# CHECK-NEXT: Index 0123456
|
||||
|
||||
# CHECK: [0,0] DeER .. addq %rdi, %rsi
|
||||
# CHECK-NEXT: [0,1] DeeeeER addq (%rsp), %rsi
|
||||
|
@ -23,8 +23,7 @@ vandps (%rdi), %xmm1, %xmm2
|
||||
# CHECK-NEXT: 1 6 1.00 * vandps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# CHECK: Timeline view:
|
||||
|
||||
# CHECK: Index 012345678
|
||||
# CHECK-NEXT: Index 012345678
|
||||
|
||||
# CHECK: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# CHECK-NEXT: [0,1] DeeeeeeER vandps (%rdi), %xmm1, %xmm2
|
||||
|
@ -23,8 +23,7 @@ vandps (%rdi), %ymm1, %ymm2
|
||||
# CHECK-NEXT: 2 6 2.00 * vandps (%rdi), %ymm1, %ymm2
|
||||
|
||||
# CHECK: Timeline view:
|
||||
|
||||
# CHECK: Index 0123456789
|
||||
# CHECK-NEXT: Index 0123456789
|
||||
|
||||
# CHECK: [0,0] DeeeER . vaddps %ymm0, %ymm0, %ymm1
|
||||
# CHECK-NEXT: [0,1] .DeeeeeeER vandps (%rdi), %ymm1, %ymm2
|
||||
|
@ -1,29 +1,108 @@
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=HASWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=BDWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=SKYLAKE
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=BTVER2
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ZNVER1
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=HASWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=BDWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=SKYLAKE
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=BTVER2
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=ZNVER1
|
||||
|
||||
add %edi, %esi
|
||||
bextrl %esi, (%rdi), %eax
|
||||
|
||||
# BDWELL: Iterations: 1
|
||||
# BDWELL-NEXT: Instructions: 2
|
||||
# BDWELL-NEXT: Total Cycles: 10
|
||||
# BDWELL-NEXT: Dispatch Width: 4
|
||||
# BDWELL-NEXT: IPC: 0.20
|
||||
|
||||
# HASWELL: Index 0123456789
|
||||
# HASWELL: [0,0] DeER . . addl %edi, %esi
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeeER bextrl %esi, (%rdi), %eax
|
||||
# HASWELL: Iterations: 1
|
||||
# HASWELL-NEXT: Instructions: 2
|
||||
# HASWELL-NEXT: Total Cycles: 10
|
||||
# HASWELL-NEXT: Dispatch Width: 4
|
||||
# HASWELL-NEXT: IPC: 0.20
|
||||
|
||||
# BDWELL: Index 0123456789
|
||||
# BDWELL: [0,0] DeER . . addl %edi, %esi
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeeER bextrl %esi, (%rdi), %eax
|
||||
# SKYLAKE: Iterations: 1
|
||||
# SKYLAKE-NEXT: Instructions: 2
|
||||
# SKYLAKE-NEXT: Total Cycles: 10
|
||||
# SKYLAKE-NEXT: Dispatch Width: 6
|
||||
# SKYLAKE-NEXT: IPC: 0.20
|
||||
|
||||
# SKYLAKE: Index 0123456789
|
||||
# SKYLAKE: [0,0] DeER . . addl %edi, %esi
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeeER bextrl %esi, (%rdi), %eax
|
||||
# BTVER2: Iterations: 1
|
||||
# BTVER2-NEXT: Instructions: 2
|
||||
# BTVER2-NEXT: Total Cycles: 7
|
||||
# BTVER2-NEXT: Dispatch Width: 2
|
||||
# BTVER2-NEXT: IPC: 0.29
|
||||
|
||||
# BTVER2: Index 0123456
|
||||
# BTVER2: [0,0] DeER .. addl %edi, %esi
|
||||
# BTVER2-NEXT: [0,1] DeeeeER bextrl %esi, (%rdi), %eax
|
||||
# ZNVER1: Iterations: 1
|
||||
# ZNVER1-NEXT: Instructions: 2
|
||||
# ZNVER1-NEXT: Total Cycles: 8
|
||||
# ZNVER1-NEXT: Dispatch Width: 4
|
||||
# ZNVER1-NEXT: IPC: 0.25
|
||||
|
||||
# ALL: Instruction Info:
|
||||
# ALL-NEXT: [1]: #uOps
|
||||
# ALL-NEXT: [2]: Latency
|
||||
# ALL-NEXT: [3]: RThroughput
|
||||
# ALL-NEXT: [4]: MayLoad
|
||||
# ALL-NEXT: [5]: MayStore
|
||||
# ALL-NEXT: [6]: HasSideEffects
|
||||
|
||||
# ZNVER1: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# ZNVER1-NEXT: 1 1 0.25 addl %edi, %esi
|
||||
# ZNVER1-NEXT: 2 5 0.50 * bextrl %esi, (%rdi), %eax
|
||||
|
||||
# BDWELL: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# BDWELL-NEXT: 1 1 0.25 addl %edi, %esi
|
||||
# BDWELL-NEXT: 3 7 0.50 * bextrl %esi, (%rdi), %eax
|
||||
|
||||
# HASWELL: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# HASWELL-NEXT: 1 1 0.25 addl %edi, %esi
|
||||
# HASWELL-NEXT: 3 7 0.50 * bextrl %esi, (%rdi), %eax
|
||||
|
||||
# SKYLAKE: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# SKYLAKE-NEXT: 1 1 0.25 addl %edi, %esi
|
||||
# SKYLAKE-NEXT: 3 7 0.50 * bextrl %esi, (%rdi), %eax
|
||||
|
||||
# BTVER2: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# BTVER2-NEXT: 1 1 0.50 addl %edi, %esi
|
||||
# BTVER2-NEXT: 1 4 1.00 * bextrl %esi, (%rdi), %eax
|
||||
|
||||
# BTVER2: Timeline view:
|
||||
# BTVER2-NEXT: Index 0123456
|
||||
|
||||
# ZNVER1: Timeline view:
|
||||
# ZNVER1-NEXT: Index 01234567
|
||||
|
||||
# BDWELL: Timeline view:
|
||||
# BDWELL-NEXT: Index 0123456789
|
||||
|
||||
# HASWELL: Timeline view:
|
||||
# HASWELL-NEXT: Index 0123456789
|
||||
|
||||
# SKYLAKE: Timeline view:
|
||||
# SKYLAKE-NEXT: Index 0123456789
|
||||
|
||||
# BDWELL: [0,0] DeER . . addl %edi, %esi
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeeER bextrl %esi, (%rdi), %eax
|
||||
|
||||
# HASWELL: [0,0] DeER . . addl %edi, %esi
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeeER bextrl %esi, (%rdi), %eax
|
||||
|
||||
# SKYLAKE: [0,0] DeER . . addl %edi, %esi
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeeER bextrl %esi, (%rdi), %eax
|
||||
|
||||
# ZNVER1: [0,0] DeER . . addl %edi, %esi
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeER bextrl %esi, (%rdi), %eax
|
||||
|
||||
# BTVER2: [0,0] DeER .. addl %edi, %esi
|
||||
# BTVER2-NEXT: [0,1] DeeeeER bextrl %esi, (%rdi), %eax
|
||||
|
||||
# ALL: Average Wait times (based on the timeline view):
|
||||
# ALL-NEXT: [0]: Executions
|
||||
# ALL-NEXT: [1]: Average time spent waiting in a scheduler's queue
|
||||
# ALL-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
|
||||
# ALL-NEXT: [3]: Average time elapsed from WB until retire stage
|
||||
|
||||
# ALL: [0] [1] [2] [3]
|
||||
# ALL-NEXT: 0. 1 1.0 1.0 0.0 addl %edi, %esi
|
||||
# ALL-NEXT: 1. 1 1.0 0.0 0.0 bextrl %esi, (%rdi), %eax
|
||||
|
||||
# ZNVER1: Index 01234567
|
||||
# ZNVER1: [0,0] DeER . . addl %edi, %esi
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeER bextrl %esi, (%rdi), %eax
|
||||
|
@ -1,24 +1,91 @@
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=HASWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=BDWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=SKYLAKE
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ZNVER1
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=HASWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=BDWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=SKYLAKE
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=ZNVER1
|
||||
|
||||
add %edi, %esi
|
||||
bzhil %esi, (%rdi), %eax
|
||||
|
||||
# ZNVER1: Iterations: 1
|
||||
# ZNVER1-NEXT: Instructions: 2
|
||||
# ZNVER1-NEXT: Total Cycles: 8
|
||||
# ZNVER1-NEXT: Dispatch Width: 4
|
||||
# ZNVER1-NEXT: IPC: 0.25
|
||||
|
||||
# HASWELL: Index 012345678
|
||||
# HASWELL: [0,0] DeER . . addl %edi, %esi
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeER bzhil %esi, (%rdi), %eax
|
||||
# BDWELL: Iterations: 1
|
||||
# BDWELL-NEXT: Instructions: 2
|
||||
# BDWELL-NEXT: Total Cycles: 9
|
||||
# BDWELL-NEXT: Dispatch Width: 4
|
||||
# BDWELL-NEXT: IPC: 0.22
|
||||
|
||||
# BDWELL: Index 012345678
|
||||
# BDWELL: [0,0] DeER . . addl %edi, %esi
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeER bzhil %esi, (%rdi), %eax
|
||||
# HASWELL: Iterations: 1
|
||||
# HASWELL-NEXT: Instructions: 2
|
||||
# HASWELL-NEXT: Total Cycles: 9
|
||||
# HASWELL-NEXT: Dispatch Width: 4
|
||||
# HASWELL-NEXT: IPC: 0.22
|
||||
|
||||
# SKYLAKE: Index 012345678
|
||||
# SKYLAKE: [0,0] DeER . . addl %edi, %esi
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeER bzhil %esi, (%rdi), %eax
|
||||
# SKYLAKE: Iterations: 1
|
||||
# SKYLAKE-NEXT: Instructions: 2
|
||||
# SKYLAKE-NEXT: Total Cycles: 9
|
||||
# SKYLAKE-NEXT: Dispatch Width: 6
|
||||
# SKYLAKE-NEXT: IPC: 0.22
|
||||
|
||||
# ALL: Instruction Info:
|
||||
# ALL-NEXT: [1]: #uOps
|
||||
# ALL-NEXT: [2]: Latency
|
||||
# ALL-NEXT: [3]: RThroughput
|
||||
# ALL-NEXT: [4]: MayLoad
|
||||
# ALL-NEXT: [5]: MayStore
|
||||
# ALL-NEXT: [6]: HasSideEffects
|
||||
|
||||
# ZNVER1: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# ZNVER1-NEXT: 1 1 0.25 addl %edi, %esi
|
||||
# ZNVER1-NEXT: 2 5 0.50 * bzhil %esi, (%rdi), %eax
|
||||
|
||||
# BDWELL: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# BDWELL-NEXT: 1 1 0.25 addl %edi, %esi
|
||||
# BDWELL-NEXT: 2 6 0.50 * bzhil %esi, (%rdi), %eax
|
||||
|
||||
# HASWELL: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# HASWELL-NEXT: 1 1 0.25 addl %edi, %esi
|
||||
# HASWELL-NEXT: 2 6 0.50 * bzhil %esi, (%rdi), %eax
|
||||
|
||||
# SKYLAKE: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# SKYLAKE-NEXT: 1 1 0.25 addl %edi, %esi
|
||||
# SKYLAKE-NEXT: 2 6 0.50 * bzhil %esi, (%rdi), %eax
|
||||
|
||||
# ZNVER1: Timeline view:
|
||||
# ZNVER1-NEXT: Index 01234567
|
||||
|
||||
# BDWELL: Timeline view:
|
||||
# BDWELL-NEXT: Index 012345678
|
||||
|
||||
# HASWELL: Timeline view:
|
||||
# HASWELL-NEXT: Index 012345678
|
||||
|
||||
# SKYLAKE: Timeline view:
|
||||
# SKYLAKE-NEXT: Index 012345678
|
||||
|
||||
# BDWELL: [0,0] DeER . . addl %edi, %esi
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeER bzhil %esi, (%rdi), %eax
|
||||
|
||||
# HASWELL: [0,0] DeER . . addl %edi, %esi
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeER bzhil %esi, (%rdi), %eax
|
||||
|
||||
# SKYLAKE: [0,0] DeER . . addl %edi, %esi
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeER bzhil %esi, (%rdi), %eax
|
||||
|
||||
# ZNVER1: [0,0] DeER . . addl %edi, %esi
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeER bzhil %esi, (%rdi), %eax
|
||||
|
||||
# ALL: Average Wait times (based on the timeline view):
|
||||
# ALL-NEXT: [0]: Executions
|
||||
# ALL-NEXT: [1]: Average time spent waiting in a scheduler's queue
|
||||
# ALL-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
|
||||
# ALL-NEXT: [3]: Average time elapsed from WB until retire stage
|
||||
|
||||
# ALL: [0] [1] [2] [3]
|
||||
# ALL-NEXT: 0. 1 1.0 1.0 0.0 addl %edi, %esi
|
||||
# ALL-NEXT: 1. 1 1.0 0.0 0.0 bzhil %esi, (%rdi), %eax
|
||||
|
||||
# ZNVER1: Index 01234567
|
||||
# ZNVER1: [0,0] DeER . . addl %edi, %esi
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeER bzhil %esi, (%rdi), %eax
|
||||
|
@ -1,3 +1,4 @@
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=btver2 -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefix=ALL --check-prefix=BTVER2 %s
|
||||
# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=znver1 -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefix=ALL --check-prefix=ZNVER1 %s
|
||||
# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=sandybridge -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefix=ALL --check-prefix=SANDYBRIDGE %s
|
||||
|
@ -1,3 +1,4 @@
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -resource-pressure=false < %s | FileCheck --check-prefix=ALL --check-prefix=DEFAULT %s
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=0 -resource-pressure=false < %s | FileCheck --check-prefix=ALL --check-prefix=DEFAULT %s
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -resource-pressure=false < %s | FileCheck --check-prefix=ALL --check-prefix=CUSTOM %s
|
||||
@ -24,6 +25,6 @@ add %eax, %eax
|
||||
# ALL-NEXT: [5]: MayStore
|
||||
# ALL-NEXT: [6]: HasSideEffects
|
||||
|
||||
# ALL: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# ALL-NEXT: 1 1 0.50 addl %eax, %eax
|
||||
# ALL: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# ALL-NEXT: 1 1 0.50 addl %eax, %eax
|
||||
|
||||
|
@ -1,8 +1,19 @@
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 < %s 2>&1 | FileCheck --check-prefix=DEFAULT %s
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -dispatch=0 < %s 2>&1 | FileCheck --check-prefix=DEFAULT %s
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -dispatch=1 < %s 2>&1 | FileCheck --check-prefix=CUSTOM %s
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -resource-pressure=false -instruction-info=false -mcpu=btver2 < %s 2>&1 | FileCheck --check-prefix=ALL --check-prefix=DEFAULT %s
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -resource-pressure=false -instruction-info=false -mcpu=btver2 -dispatch=0 < %s 2>&1 | FileCheck --check-prefix=ALL --check-prefix=DEFAULT %s
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -resource-pressure=false -instruction-info=false -mcpu=btver2 -dispatch=1 < %s 2>&1 | FileCheck --check-prefix=ALL --check-prefix=CUSTOM %s
|
||||
|
||||
add %eax, %eax
|
||||
|
||||
# DEFAULT: Dispatch Width: 2
|
||||
# CUSTOM: Dispatch Width: 1
|
||||
# CUSTOM: Iterations: 100
|
||||
# CUSTOM-NEXT: Instructions: 100
|
||||
# CUSTOM-NEXT: Total Cycles: 103
|
||||
# CUSTOM-NEXT: Dispatch Width: 1
|
||||
# CUSTOM-NEXT: IPC: 0.97
|
||||
|
||||
# DEFAULT: Iterations: 100
|
||||
# DEFAULT-NEXT: Instructions: 100
|
||||
# DEFAULT-NEXT: Total Cycles: 103
|
||||
# DEFAULT-NEXT: Dispatch Width: 2
|
||||
# DEFAULT-NEXT: IPC: 0.97
|
||||
|
||||
|
@ -1,22 +1,74 @@
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=HASWELL
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefix=ALL -check-prefix=HASWELL
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=BDWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefix=ALL -check-prefix=BDWELL
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=SKYLAKE
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefix=ALL -check-prefix=SKYLAKE
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ZNVER1
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefix=ALL -check-prefix=ZNVER1
|
||||
|
||||
vaddps %xmm0, %xmm0, %xmm1
|
||||
vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# HASWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm1
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
# BDWELL: Iterations: 1
|
||||
# BDWELL-NEXT: Instructions: 2
|
||||
# BDWELL-NEXT: Total Cycles: 13
|
||||
# BDWELL-NEXT: Dispatch Width: 4
|
||||
# BDWELL-NEXT: IPC: 0.15
|
||||
|
||||
# BDWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm1
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
# SKYLAKE: Iterations: 1
|
||||
# SKYLAKE-NEXT: Instructions: 2
|
||||
# SKYLAKE-NEXT: Total Cycles: 13
|
||||
# SKYLAKE-NEXT: Dispatch Width: 6
|
||||
# SKYLAKE-NEXT: IPC: 0.15
|
||||
|
||||
# SKYLAKE: [0,0] DeeeeER . . vaddps %xmm0, %xmm0, %xmm1
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
# HASWELL: Iterations: 1
|
||||
# HASWELL-NEXT: Instructions: 2
|
||||
# HASWELL-NEXT: Total Cycles: 14
|
||||
# HASWELL-NEXT: Dispatch Width: 4
|
||||
# HASWELL-NEXT: IPC: 0.14
|
||||
|
||||
# ZNVER1: Iterations: 1
|
||||
# ZNVER1-NEXT: Instructions: 2
|
||||
# ZNVER1-NEXT: Total Cycles: 15
|
||||
# ZNVER1-NEXT: Dispatch Width: 4
|
||||
# ZNVER1-NEXT: IPC: 0.13
|
||||
|
||||
# BDWELL: Timeline view:
|
||||
# BDWELL-NEXT: 012
|
||||
# BDWELL-NEXT: Index 0123456789
|
||||
|
||||
# SKYLAKE: Timeline view:
|
||||
# SKYLAKE-NEXT: 012
|
||||
# SKYLAKE-NEXT: Index 0123456789
|
||||
|
||||
# HASWELL: Timeline view:
|
||||
# HASWELL-NEXT: 0123
|
||||
# HASWELL-NEXT: Index 0123456789
|
||||
|
||||
# ZNVER1: Timeline view:
|
||||
# ZNVER1-NEXT: 01234
|
||||
# ZNVER1-NEXT: Index 0123456789
|
||||
|
||||
# ZNVER1: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm1
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# HASWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm1
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# BDWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm1
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# SKYLAKE: [0,0] DeeeeER . . vaddps %xmm0, %xmm0, %xmm1
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# ALL: Average Wait times (based on the timeline view):
|
||||
# ALL-NEXT: [0]: Executions
|
||||
# ALL-NEXT: [1]: Average time spent waiting in a scheduler's queue
|
||||
# ALL-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
|
||||
# ALL-NEXT: [3]: Average time elapsed from WB until retire stage
|
||||
|
||||
# ALL: [0] [1] [2] [3]
|
||||
# ALL-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm1
|
||||
# ALL-NEXT: 1. 1 1.0 0.0 0.0 vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# ZNVER1: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm1
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
@ -1,22 +1,74 @@
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=HASWELL
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefix=ALL -check-prefix=HASWELL
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=BDWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefix=ALL -check-prefix=BDWELL
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=SKYLAKE
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefix=ALL -check-prefix=SKYLAKE
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ZNVER1
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefix=ALL -check-prefix=ZNVER1
|
||||
|
||||
vaddps %xmm0, %xmm0, %xmm2
|
||||
vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# HASWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm2
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
# BDWELL: Iterations: 1
|
||||
# BDWELL-NEXT: Instructions: 2
|
||||
# BDWELL-NEXT: Total Cycles: 13
|
||||
# BDWELL-NEXT: Dispatch Width: 4
|
||||
# BDWELL-NEXT: IPC: 0.15
|
||||
|
||||
# BDWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm2
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
# SKYLAKE: Iterations: 1
|
||||
# SKYLAKE-NEXT: Instructions: 2
|
||||
# SKYLAKE-NEXT: Total Cycles: 13
|
||||
# SKYLAKE-NEXT: Dispatch Width: 6
|
||||
# SKYLAKE-NEXT: IPC: 0.15
|
||||
|
||||
# SKYLAKE: [0,0] DeeeeER . . vaddps %xmm0, %xmm0, %xmm2
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
# HASWELL: Iterations: 1
|
||||
# HASWELL-NEXT: Instructions: 2
|
||||
# HASWELL-NEXT: Total Cycles: 14
|
||||
# HASWELL-NEXT: Dispatch Width: 4
|
||||
# HASWELL-NEXT: IPC: 0.14
|
||||
|
||||
# ZNVER1: Iterations: 1
|
||||
# ZNVER1-NEXT: Instructions: 2
|
||||
# ZNVER1-NEXT: Total Cycles: 15
|
||||
# ZNVER1-NEXT: Dispatch Width: 4
|
||||
# ZNVER1-NEXT: IPC: 0.13
|
||||
|
||||
# BDWELL: Timeline view:
|
||||
# BDWELL-NEXT: 012
|
||||
# BDWELL-NEXT: Index 0123456789
|
||||
|
||||
# SKYLAKE: Timeline view:
|
||||
# SKYLAKE-NEXT: 012
|
||||
# SKYLAKE-NEXT: Index 0123456789
|
||||
|
||||
# HASWELL: Timeline view:
|
||||
# HASWELL-NEXT: 0123
|
||||
# HASWELL-NEXT: Index 0123456789
|
||||
|
||||
# ZNVER1: Timeline view:
|
||||
# ZNVER1-NEXT: 01234
|
||||
# ZNVER1-NEXT: Index 0123456789
|
||||
|
||||
# ZNVER1: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm2
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# HASWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm2
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# BDWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm2
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# SKYLAKE: [0,0] DeeeeER . . vaddps %xmm0, %xmm0, %xmm2
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# ALL: Average Wait times (based on the timeline view):
|
||||
# ALL-NEXT: [0]: Executions
|
||||
# ALL-NEXT: [1]: Average time spent waiting in a scheduler's queue
|
||||
# ALL-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
|
||||
# ALL-NEXT: [3]: Average time elapsed from WB until retire stage
|
||||
|
||||
# ALL: [0] [1] [2] [3]
|
||||
# ALL-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm2
|
||||
# ALL-NEXT: 1. 1 1.0 0.0 0.0 vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
||||
# ZNVER1: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm2
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2
|
||||
|
@ -1,3 +1,4 @@
|
||||
# RUN: not llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=atom -o %t1 2>&1 | FileCheck %s
|
||||
|
||||
# CHECK: error: please specify an out-of-order cpu. 'atom' is an in-order cpu.
|
||||
|
||||
|
@ -23,15 +23,15 @@
|
||||
# ALL-NEXT: [5]: MayStore
|
||||
# ALL-NEXT: [6]: HasSideEffects
|
||||
|
||||
# INTEL: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# INTEL-NEXT: 1 1 0.50 mov eax, 1
|
||||
# INTEL-NEXT: 1 1 0.50 mov ebx, 255
|
||||
# INTEL-NEXT: 2 3 1.00 imul esi, edi
|
||||
# INTEL-NEXT: 1 1 0.50 lea eax, [rsi + rdi]
|
||||
# INTEL: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# INTEL-NEXT: 1 1 0.50 mov eax, 1
|
||||
# INTEL-NEXT: 1 1 0.50 mov ebx, 255
|
||||
# INTEL-NEXT: 2 3 1.00 imul esi, edi
|
||||
# INTEL-NEXT: 1 1 0.50 lea eax, [rsi + rdi]
|
||||
|
||||
# ATT: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# ATT-NEXT: 1 1 0.50 movl $1, %eax
|
||||
# ATT-NEXT: 1 1 0.50 movl $255, %ebx
|
||||
# ATT-NEXT: 2 3 1.00 imull %edi, %esi
|
||||
# ATT-NEXT: 1 1 0.50 leal (%rsi,%rdi), %eax
|
||||
# ATT: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# ATT-NEXT: 1 1 0.50 movl $1, %eax
|
||||
# ATT-NEXT: 1 1 0.50 movl $255, %ebx
|
||||
# ATT-NEXT: 2 3 1.00 imull %edi, %esi
|
||||
# ATT-NEXT: 1 1 0.50 leal (%rsi,%rdi), %eax
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
# RUN: not llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 %s
|
||||
|
||||
invalid_instruction_mnemonic
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
# RUN: not llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=foo -o %t1 2>&1 | FileCheck %s
|
||||
|
||||
# CHECK: 'foo' is not a recognized processor for this target (ignoring processor)
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
# RUN: not llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=btver2 -o %t1 2>&1 | FileCheck %s
|
||||
|
||||
# CHECK: error: no assembly instructions found.
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -resource-pressure=false < %s | FileCheck %s
|
||||
|
||||
add %edi, %esi
|
||||
@ -20,6 +21,6 @@
|
||||
# CHECK-NEXT: [5]: MayStore
|
||||
# CHECK-NEXT: [6]: HasSideEffects
|
||||
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %edi, %esi
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %edi, %esi
|
||||
|
||||
|
@ -1,10 +1,11 @@
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -resource-pressure=false < %s | FileCheck %s
|
||||
|
||||
add %esi, %edi
|
||||
# LLVM-MCA-BEGIN foo
|
||||
add %edi, %eax
|
||||
|
||||
# CHECK: [0] Code Region - foo
|
||||
# CHECK: [0] Code Region - foo
|
||||
|
||||
# CHECK: Iterations: 1
|
||||
# CHECK-NEXT: Instructions: 1
|
||||
@ -20,6 +21,6 @@
|
||||
# CHECK-NEXT: [5]: MayStore
|
||||
# CHECK-NEXT: [6]: HasSideEffects
|
||||
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %edi, %eax
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %edi, %eax
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -resource-pressure=false < %s | FileCheck %s
|
||||
|
||||
# LLVM-MCA-BEGIN Empty
|
||||
@ -8,7 +9,7 @@
|
||||
add %edi, %eax
|
||||
# LLVM-MCA-END
|
||||
|
||||
# CHECK: [0] Code Region - NotEmpty
|
||||
# CHECK: [0] Code Region - NotEmpty
|
||||
|
||||
# CHECK: Iterations: 1
|
||||
# CHECK-NEXT: Instructions: 1
|
||||
@ -24,6 +25,6 @@
|
||||
# CHECK-NEXT: [5]: MayStore
|
||||
# CHECK-NEXT: [6]: HasSideEffects
|
||||
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %edi, %eax
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %edi, %eax
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -resource-pressure=false < %s | FileCheck %s
|
||||
|
||||
add %ecx, %esi
|
||||
@ -12,7 +13,7 @@
|
||||
# LLVM-MCA-END
|
||||
add %esi, %eax
|
||||
|
||||
# CHECK: [0] Code Region - First Region
|
||||
# CHECK: [0] Code Region - First Region
|
||||
|
||||
# CHECK: Iterations: 1
|
||||
# CHECK-NEXT: Instructions: 1
|
||||
@ -28,10 +29,10 @@
|
||||
# CHECK-NEXT: [5]: MayStore
|
||||
# CHECK-NEXT: [6]: HasSideEffects
|
||||
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %edi, %esi
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %edi, %esi
|
||||
|
||||
# CHECK: [1] Code Region - Second Region
|
||||
# CHECK: [1] Code Region - Second Region
|
||||
|
||||
# CHECK: Iterations: 1
|
||||
# CHECK-NEXT: Instructions: 1
|
||||
@ -47,10 +48,10 @@
|
||||
# CHECK-NEXT: [5]: MayStore
|
||||
# CHECK-NEXT: [6]: HasSideEffects
|
||||
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %esi, %edx
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %esi, %edx
|
||||
|
||||
# CHECK: [2] Code Region - Third Region
|
||||
# CHECK: [2] Code Region - Third Region
|
||||
|
||||
# CHECK: Iterations: 1
|
||||
# CHECK-NEXT: Instructions: 1
|
||||
@ -66,6 +67,6 @@
|
||||
# CHECK-NEXT: [5]: MayStore
|
||||
# CHECK-NEXT: [6]: HasSideEffects
|
||||
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %edx, %eax
|
||||
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
|
||||
# CHECK-NEXT: 1 1 0.50 addl %edx, %eax
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
# RUN: not llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=generic < %s 2>&1 | FileCheck %s
|
||||
|
||||
# CHECK: error: unable to find instruction-level scheduling information for target triple 'x86_64-unknown-unknown' and cpu 'generic'.
|
||||
|
||||
|
@ -1,39 +1,142 @@
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=sandybridge -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=SANDY
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=sandybridge -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=SANDY
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=ivybridge -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=IVY
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=ivybridge -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=IVY
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=HASWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=HASWELL
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=BDWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=BDWELL
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=SKYLAKE
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=SKYLAKE
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=BTVER2
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=BTVER2
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ZNVER1
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=ZNVER1
|
||||
|
||||
vaddps %xmm0, %xmm0, %xmm1
|
||||
vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# BDWELL: Iterations: 1
|
||||
# BDWELL-NEXT: Instructions: 2
|
||||
# BDWELL-NEXT: Total Cycles: 10
|
||||
# BDWELL-NEXT: Dispatch Width: 4
|
||||
# BDWELL-NEXT: IPC: 0.20
|
||||
|
||||
# SANDY: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# SANDY-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# BTVER2: Iterations: 1
|
||||
# BTVER2-NEXT: Instructions: 2
|
||||
# BTVER2-NEXT: Total Cycles: 11
|
||||
# BTVER2-NEXT: Dispatch Width: 2
|
||||
# BTVER2-NEXT: IPC: 0.18
|
||||
|
||||
# IVY: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# IVY-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# HASWELL: Iterations: 1
|
||||
# HASWELL-NEXT: Instructions: 2
|
||||
# HASWELL-NEXT: Total Cycles: 11
|
||||
# HASWELL-NEXT: Dispatch Width: 4
|
||||
# HASWELL-NEXT: IPC: 0.18
|
||||
|
||||
# HASWELL: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# IVY: Iterations: 1
|
||||
# IVY-NEXT: Instructions: 2
|
||||
# IVY-NEXT: Total Cycles: 11
|
||||
# IVY-NEXT: Dispatch Width: 4
|
||||
# IVY-NEXT: IPC: 0.18
|
||||
|
||||
# BDWELL: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# SANDY: Iterations: 1
|
||||
# SANDY-NEXT: Instructions: 2
|
||||
# SANDY-NEXT: Total Cycles: 11
|
||||
# SANDY-NEXT: Dispatch Width: 4
|
||||
# SANDY-NEXT: IPC: 0.18
|
||||
|
||||
# SKYLAKE: [0,0] DeeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# ZNVER1: Iterations: 1
|
||||
# ZNVER1-NEXT: Instructions: 2
|
||||
# ZNVER1-NEXT: Total Cycles: 11
|
||||
# ZNVER1-NEXT: Dispatch Width: 4
|
||||
# ZNVER1-NEXT: IPC: 0.18
|
||||
|
||||
# BTVER2: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# BTVER2-NEXT: [0,1] .DeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# SKYLAKE: Iterations: 1
|
||||
# SKYLAKE-NEXT: Instructions: 2
|
||||
# SKYLAKE-NEXT: Total Cycles: 11
|
||||
# SKYLAKE-NEXT: Dispatch Width: 6
|
||||
# SKYLAKE-NEXT: IPC: 0.18
|
||||
|
||||
# BTVER2: Timeline view:
|
||||
# BTVER2-NEXT: 0
|
||||
# BTVER2-NEXT: Index 0123456789
|
||||
|
||||
# HASWELL: Timeline view:
|
||||
# HASWELL-NEXT: 0
|
||||
# HASWELL-NEXT: Index 0123456789
|
||||
|
||||
# IVY: Timeline view:
|
||||
# IVY-NEXT: 0
|
||||
# IVY-NEXT: Index 0123456789
|
||||
|
||||
# SANDY: Timeline view:
|
||||
# SANDY-NEXT: 0
|
||||
# SANDY-NEXT: Index 0123456789
|
||||
|
||||
# SKYLAKE: Timeline view:
|
||||
# SKYLAKE-NEXT: 0
|
||||
# SKYLAKE-NEXT: Index 0123456789
|
||||
|
||||
# ZNVER1: Timeline view:
|
||||
# ZNVER1-NEXT: 0
|
||||
# ZNVER1-NEXT: Index 0123456789
|
||||
|
||||
# BDWELL: Timeline view:
|
||||
# BDWELL-NEXT: Index 0123456789
|
||||
|
||||
# BTVER2: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# BTVER2-NEXT: [0,1] .DeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# HASWELL: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# IVY: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# IVY-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# SANDY: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# SANDY-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# ZNVER1: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# BDWELL: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# SKYLAKE: [0,0] DeeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# ALL: Average Wait times (based on the timeline view):
|
||||
# ALL-NEXT: [0]: Executions
|
||||
# ALL-NEXT: [1]: Average time spent waiting in a scheduler's queue
|
||||
# ALL-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
|
||||
# ALL-NEXT: [3]: Average time elapsed from WB until retire stage
|
||||
|
||||
# BDWELL: [0] [1] [2] [3]
|
||||
# BDWELL-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm1
|
||||
# BDWELL-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# HASWELL: [0] [1] [2] [3]
|
||||
# HASWELL-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm1
|
||||
# HASWELL-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# IVY: [0] [1] [2] [3]
|
||||
# IVY-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm1
|
||||
# IVY-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# SANDY: [0] [1] [2] [3]
|
||||
# SANDY-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm1
|
||||
# SANDY-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# SKYLAKE: [0] [1] [2] [3]
|
||||
# SKYLAKE-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm1
|
||||
# SKYLAKE-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# ZNVER1: [0] [1] [2] [3]
|
||||
# ZNVER1-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm1
|
||||
# ZNVER1-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# BTVER2: [0] [1] [2] [3]
|
||||
# BTVER2-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm1
|
||||
# BTVER2-NEXT: 1. 1 1.0 1.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# ZNVER1: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm1
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
@ -1,39 +1,142 @@
|
||||
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=sandybridge -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=SANDY
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=sandybridge -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=SANDY
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=ivybridge -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=IVY
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=ivybridge -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=IVY
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=HASWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=HASWELL
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=BDWELL
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=BDWELL
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=SKYLAKE
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=SKYLAKE
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=BTVER2
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=BTVER2
|
||||
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -timeline -resource-pressure=false < %s | FileCheck %s -check-prefix=ZNVER1
|
||||
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=1 -timeline -instruction-info=false -resource-pressure=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=ZNVER1
|
||||
|
||||
vaddps %xmm0, %xmm0, %xmm2
|
||||
vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# BDWELL: Iterations: 1
|
||||
# BDWELL-NEXT: Instructions: 2
|
||||
# BDWELL-NEXT: Total Cycles: 10
|
||||
# BDWELL-NEXT: Dispatch Width: 4
|
||||
# BDWELL-NEXT: IPC: 0.20
|
||||
|
||||
# SANDY: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# SANDY-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# BTVER2: Iterations: 1
|
||||
# BTVER2-NEXT: Instructions: 2
|
||||
# BTVER2-NEXT: Total Cycles: 11
|
||||
# BTVER2-NEXT: Dispatch Width: 2
|
||||
# BTVER2-NEXT: IPC: 0.18
|
||||
|
||||
# IVY: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# IVY-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# HASWELL: Iterations: 1
|
||||
# HASWELL-NEXT: Instructions: 2
|
||||
# HASWELL-NEXT: Total Cycles: 11
|
||||
# HASWELL-NEXT: Dispatch Width: 4
|
||||
# HASWELL-NEXT: IPC: 0.18
|
||||
|
||||
# HASWELL: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# IVY: Iterations: 1
|
||||
# IVY-NEXT: Instructions: 2
|
||||
# IVY-NEXT: Total Cycles: 11
|
||||
# IVY-NEXT: Dispatch Width: 4
|
||||
# IVY-NEXT: IPC: 0.18
|
||||
|
||||
# BDWELL: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# SANDY: Iterations: 1
|
||||
# SANDY-NEXT: Instructions: 2
|
||||
# SANDY-NEXT: Total Cycles: 11
|
||||
# SANDY-NEXT: Dispatch Width: 4
|
||||
# SANDY-NEXT: IPC: 0.18
|
||||
|
||||
# SKYLAKE: [0,0] DeeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# ZNVER1: Iterations: 1
|
||||
# ZNVER1-NEXT: Instructions: 2
|
||||
# ZNVER1-NEXT: Total Cycles: 11
|
||||
# ZNVER1-NEXT: Dispatch Width: 4
|
||||
# ZNVER1-NEXT: IPC: 0.18
|
||||
|
||||
# BTVER2: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# BTVER2-NEXT: [0,1] .DeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
# SKYLAKE: Iterations: 1
|
||||
# SKYLAKE-NEXT: Instructions: 2
|
||||
# SKYLAKE-NEXT: Total Cycles: 11
|
||||
# SKYLAKE-NEXT: Dispatch Width: 6
|
||||
# SKYLAKE-NEXT: IPC: 0.18
|
||||
|
||||
# BTVER2: Timeline view:
|
||||
# BTVER2-NEXT: 0
|
||||
# BTVER2-NEXT: Index 0123456789
|
||||
|
||||
# HASWELL: Timeline view:
|
||||
# HASWELL-NEXT: 0
|
||||
# HASWELL-NEXT: Index 0123456789
|
||||
|
||||
# IVY: Timeline view:
|
||||
# IVY-NEXT: 0
|
||||
# IVY-NEXT: Index 0123456789
|
||||
|
||||
# SANDY: Timeline view:
|
||||
# SANDY-NEXT: 0
|
||||
# SANDY-NEXT: Index 0123456789
|
||||
|
||||
# SKYLAKE: Timeline view:
|
||||
# SKYLAKE-NEXT: 0
|
||||
# SKYLAKE-NEXT: Index 0123456789
|
||||
|
||||
# ZNVER1: Timeline view:
|
||||
# ZNVER1-NEXT: 0
|
||||
# ZNVER1-NEXT: Index 0123456789
|
||||
|
||||
# BDWELL: Timeline view:
|
||||
# BDWELL-NEXT: Index 0123456789
|
||||
|
||||
# BTVER2: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# BTVER2-NEXT: [0,1] .DeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# HASWELL: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# HASWELL-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# IVY: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# IVY-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# SANDY: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# SANDY-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# ZNVER1: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# BDWELL: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# BDWELL-NEXT: [0,1] DeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# SKYLAKE: [0,0] DeeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# SKYLAKE-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# ALL: Average Wait times (based on the timeline view):
|
||||
# ALL-NEXT: [0]: Executions
|
||||
# ALL-NEXT: [1]: Average time spent waiting in a scheduler's queue
|
||||
# ALL-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
|
||||
# ALL-NEXT: [3]: Average time elapsed from WB until retire stage
|
||||
|
||||
# BDWELL: [0] [1] [2] [3]
|
||||
# BDWELL-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm2
|
||||
# BDWELL-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# HASWELL: [0] [1] [2] [3]
|
||||
# HASWELL-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm2
|
||||
# HASWELL-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# IVY: [0] [1] [2] [3]
|
||||
# IVY-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm2
|
||||
# IVY-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# SANDY: [0] [1] [2] [3]
|
||||
# SANDY-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm2
|
||||
# SANDY-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# SKYLAKE: [0] [1] [2] [3]
|
||||
# SKYLAKE-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm2
|
||||
# SKYLAKE-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# ZNVER1: [0] [1] [2] [3]
|
||||
# ZNVER1-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm2
|
||||
# ZNVER1-NEXT: 1. 1 1.0 0.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# BTVER2: [0] [1] [2] [3]
|
||||
# BTVER2-NEXT: 0. 1 1.0 1.0 0.0 vaddps %xmm0, %xmm0, %xmm2
|
||||
# BTVER2-NEXT: 1. 1 1.0 1.0 0.0 vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
||||
# ZNVER1: [0,0] DeeeER . vaddps %xmm0, %xmm0, %xmm2
|
||||
# ZNVER1-NEXT: [0,1] DeeeeeeeeER vblendvps %xmm1, (%rdi), %xmm2, %xmm3
|
||||
|
@ -179,15 +179,18 @@ void TimelineView::printTimelineViewEntry(formatted_raw_ostream &OS,
|
||||
|
||||
static void printTimelineHeader(formatted_raw_ostream &OS, unsigned Cycles) {
|
||||
OS << "\n\nTimeline view:\n";
|
||||
OS.PadToColumn(10);
|
||||
for (unsigned I = 0; I <= Cycles; ++I) {
|
||||
if (((I / 10) & 1) == 0)
|
||||
OS << ' ';
|
||||
else
|
||||
OS << I % 10;
|
||||
if (Cycles >= 10) {
|
||||
OS.PadToColumn(10);
|
||||
for (unsigned I = 0; I <= Cycles; ++I) {
|
||||
if (((I / 10) & 1) == 0)
|
||||
OS << ' ';
|
||||
else
|
||||
OS << I % 10;
|
||||
}
|
||||
OS << '\n';
|
||||
}
|
||||
|
||||
OS << "\nIndex";
|
||||
OS << "Index";
|
||||
OS.PadToColumn(10);
|
||||
for (unsigned I = 0; I <= Cycles; ++I) {
|
||||
if (((I / 10) & 1) == 0)
|
||||
|
Loading…
x
Reference in New Issue
Block a user