diff options
-rw-r--r-- | llvm/test/tools/llvm-mca/X86/option-all-stats-1.s | 12 | ||||
-rw-r--r-- | llvm/test/tools/llvm-mca/X86/option-all-views-1.s | 22 | ||||
-rw-r--r-- | llvm/test/tools/llvm-mca/X86/register-file-statistics.s | 28 | ||||
-rw-r--r-- | llvm/test/tools/llvm-mca/X86/scheduler-queue-usage.s | 28 | ||||
-rw-r--r-- | llvm/tools/llvm-mca/llvm-mca.cpp | 11 |
5 files changed, 28 insertions, 73 deletions
diff --git a/llvm/test/tools/llvm-mca/X86/option-all-stats-1.s b/llvm/test/tools/llvm-mca/X86/option-all-stats-1.s index eb2b2d0458e..31ae051727d 100644 --- a/llvm/test/tools/llvm-mca/X86/option-all-stats-1.s +++ b/llvm/test/tools/llvm-mca/X86/option-all-stats-1.s @@ -6,12 +6,12 @@ add %eax, %eax -# ALL: Iterations: 100 -# ALL-NEXT: Instructions: 100 -# ALL-NEXT: Total Cycles: 103 -# ALL-NEXT: Dispatch Width: 2 -# ALL-NEXT: IPC: 0.97 -# ALL-NEXT: Block RThroughput: 0.5 +# FULLREPORT: Iterations: 100 +# FULLREPORT-NEXT: Instructions: 100 +# FULLREPORT-NEXT: Total Cycles: 103 +# FULLREPORT-NEXT: Dispatch Width: 2 +# FULLREPORT-NEXT: IPC: 0.97 +# FULLREPORT-NEXT: Block RThroughput: 0.5 # ALL: Instruction Info: # ALL-NEXT: [1]: #uOps diff --git a/llvm/test/tools/llvm-mca/X86/option-all-views-1.s b/llvm/test/tools/llvm-mca/X86/option-all-views-1.s index 7cbbbd96e2b..eff2e273e8e 100644 --- a/llvm/test/tools/llvm-mca/X86/option-all-views-1.s +++ b/llvm/test/tools/llvm-mca/X86/option-all-views-1.s @@ -1,17 +1,19 @@ # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py -# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -all-views < %s | FileCheck %s -check-prefix=ALL -check-prefix=DEFAULTREPORT -check-prefix=FULLREPORT -# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -all-views=true < %s | FileCheck %s -check-prefix=ALL -check-prefix=DEFAULTREPORT -check-prefix=FULLREPORT -# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -all-views=false < %s | FileCheck %s -check-prefix=ALL -check-prefix=NOREPORT -# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 < %s | FileCheck %s -check-prefix=ALL -check-prefix=DEFAULTREPORT +# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -all-views < %s | FileCheck %s -check-prefix=DEFAULTREPORT -check-prefix=FULLREPORT +# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -all-views=true < %s | FileCheck %s -check-prefix=DEFAULTREPORT -check-prefix=FULLREPORT +# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -all-views=false < %s | FileCheck %s -check-prefix=NOREPORT -allow-empty +# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 < %s | FileCheck %s -check-prefix=DEFAULTREPORT add %eax, %eax -# ALL: Iterations: 100 -# ALL-NEXT: Instructions: 100 -# ALL-NEXT: Total Cycles: 103 -# ALL-NEXT: Dispatch Width: 2 -# ALL-NEXT: IPC: 0.97 -# ALL-NEXT: Block RThroughput: 0.5 +# NOREPORT-NOT: {{.}} + +# DEFAULTREPORT: Iterations: 100 +# DEFAULTREPORT-NEXT: Instructions: 100 +# DEFAULTREPORT-NEXT: Total Cycles: 103 +# DEFAULTREPORT-NEXT: Dispatch Width: 2 +# DEFAULTREPORT-NEXT: IPC: 0.97 +# DEFAULTREPORT-NEXT: Block RThroughput: 0.5 # DEFAULTREPORT: Instruction Info: # DEFAULTREPORT-NEXT: [1]: #uOps diff --git a/llvm/test/tools/llvm-mca/X86/register-file-statistics.s b/llvm/test/tools/llvm-mca/X86/register-file-statistics.s index 804bfc8b3b9..c35edf5af55 100644 --- a/llvm/test/tools/llvm-mca/X86/register-file-statistics.s +++ b/llvm/test/tools/llvm-mca/X86/register-file-statistics.s @@ -12,34 +12,6 @@ xor %eax, %ebx -# ALL: Iterations: 1 -# ALL-NEXT: Instructions: 1 -# ALL-NEXT: Total Cycles: 4 - -# BDW-NEXT: Dispatch Width: 4 -# BTVER2-NEXT: Dispatch Width: 2 -# HSW-NEXT: Dispatch Width: 4 -# IVB-NEXT: Dispatch Width: 4 -# KNL-NEXT: Dispatch Width: 4 -# SKX-NEXT: Dispatch Width: 6 -# SKX-AVX512-NEXT: Dispatch Width: 6 -# SLM-NEXT: Dispatch Width: 2 -# SNB-NEXT: Dispatch Width: 4 -# ZNVER1-NEXT: Dispatch Width: 4 - -# ALL-NEXT: IPC: 0.25 - -# BDW-NEXT: Block RThroughput: 0.3 -# BTVER2-NEXT: Block RThroughput: 0.5 -# HSW-NEXT: Block RThroughput: 0.3 -# IVB-NEXT: Block RThroughput: 0.3 -# KNL-NEXT: Block RThroughput: 0.3 -# SKX-NEXT: Block RThroughput: 0.3 -# SKX-AVX512-NEXT: Block RThroughput: 0.3 -# SLM-NEXT: Block RThroughput: 0.5 -# SNB-NEXT: Block RThroughput: 0.3 -# ZNVER1-NEXT: Block RThroughput: 0.3 - # ALL: Register File statistics: # ALL-NEXT: Total number of mappings created: 2 # ALL-NEXT: Max number of mappings used: 2 diff --git a/llvm/test/tools/llvm-mca/X86/scheduler-queue-usage.s b/llvm/test/tools/llvm-mca/X86/scheduler-queue-usage.s index 3e57bbcabfb..4cf9e6a0230 100644 --- a/llvm/test/tools/llvm-mca/X86/scheduler-queue-usage.s +++ b/llvm/test/tools/llvm-mca/X86/scheduler-queue-usage.s @@ -12,34 +12,6 @@ xor %eax, %ebx -# ALL: Iterations: 1 -# ALL-NEXT: Instructions: 1 -# ALL-NEXT: Total Cycles: 4 - -# BDW-NEXT: Dispatch Width: 4 -# BTVER2-NEXT: Dispatch Width: 2 -# HSW-NEXT: Dispatch Width: 4 -# IVB-NEXT: Dispatch Width: 4 -# KNL-NEXT: Dispatch Width: 4 -# SKX-NEXT: Dispatch Width: 6 -# SKX-AVX512-NEXT: Dispatch Width: 6 -# SLM-NEXT: Dispatch Width: 2 -# SNB-NEXT: Dispatch Width: 4 -# ZNVER1-NEXT: Dispatch Width: 4 - -# ALL-NEXT: IPC: 0.25 - -# BDW-NEXT: Block RThroughput: 0.3 -# BTVER2-NEXT: Block RThroughput: 0.5 -# HSW-NEXT: Block RThroughput: 0.3 -# IVB-NEXT: Block RThroughput: 0.3 -# KNL-NEXT: Block RThroughput: 0.3 -# SKX-NEXT: Block RThroughput: 0.3 -# SKX-AVX512-NEXT: Block RThroughput: 0.3 -# SLM-NEXT: Block RThroughput: 0.5 -# SNB-NEXT: Block RThroughput: 0.3 -# ZNVER1-NEXT: Block RThroughput: 0.3 - # ALL: Schedulers - number of cycles where we saw N instructions issued: # ALL-NEXT: [# issued], [# cycles] # ALL-NEXT: 0, 3 (75.0%) diff --git a/llvm/tools/llvm-mca/llvm-mca.cpp b/llvm/tools/llvm-mca/llvm-mca.cpp index 925584b0193..4d10704c10c 100644 --- a/llvm/tools/llvm-mca/llvm-mca.cpp +++ b/llvm/tools/llvm-mca/llvm-mca.cpp @@ -109,6 +109,11 @@ static cl::opt<bool> PrintDispatchStats("dispatch-stats", cl::desc("Print dispatch statistics"), cl::cat(ViewOptions), cl::init(false)); +static cl::opt<bool> + PrintSummaryView("summary-view", cl::Hidden, + cl::desc("Print summary view (enabled by default)"), + cl::cat(ViewOptions), cl::init(true)); + static cl::opt<bool> PrintSchedulerStats("scheduler-stats", cl::desc("Print scheduler statistics"), cl::cat(ViewOptions), cl::init(false)); @@ -302,6 +307,7 @@ static void processViewOptions() { return; if (EnableAllViews.getNumOccurrences()) { + processOptionImpl(PrintSummaryView, EnableAllViews); processOptionImpl(PrintResourcePressureView, EnableAllViews); processOptionImpl(PrintTimelineView, EnableAllViews); processOptionImpl(PrintInstructionInfoView, EnableAllViews); @@ -311,6 +317,7 @@ static void processViewOptions() { EnableAllViews.getPosition() < EnableAllStats.getPosition() ? EnableAllStats : EnableAllViews; + processOptionImpl(PrintSummaryView, Default); processOptionImpl(PrintRegisterFileStats, Default); processOptionImpl(PrintDispatchStats, Default); processOptionImpl(PrintSchedulerStats, Default); @@ -495,7 +502,9 @@ int main(int argc, char **argv) { LoadQueueSize, StoreQueueSize, AssumeNoAlias); mca::BackendPrinter Printer(B); - Printer.addView(llvm::make_unique<mca::SummaryView>(SM, S, Width)); + if (PrintSummaryView) + Printer.addView(llvm::make_unique<mca::SummaryView>(SM, S, Width)); + if (PrintInstructionInfoView) Printer.addView( llvm::make_unique<mca::InstructionInfoView>(*STI, *MCII, S, *IP)); |