[llvm] r330816 - [llvm-mca] Add a new option category for views.

Andrea Di Biagio via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 25 04:33:14 PDT 2018


Author: adibiagio
Date: Wed Apr 25 04:33:14 2018
New Revision: 330816

URL: http://llvm.org/viewvc/llvm-project?rev=330816&view=rev
Log:
[llvm-mca] Add a new option category for views.

With this patch, options to add/tweak views are all grouped together in the
-help output.

The new "View Options" category looks like this:

```
  View Options:

    -dispatch-stats                 - Print dispatch statistics
    -instruction-info               - Print the instruction info view
    -instruction-tables             - Print instruction tables
    -register-file-stats            - Print register file statistics
    -resource-pressure              - Print the resource pressure view
    -retire-stats                   - Print retire control unit statistics
    -scheduler-stats                - Print scheduler statistics
    -timeline                       - Print the timeline view
    -timeline-max-cycles=<uint>     - Maximum number of cycles in the timeline view. Defaults to 80 cycles
    -timeline-max-iterations=<uint> - Maximum number of iterations to print in timeline view
```

Modified:
    llvm/trunk/tools/llvm-mca/llvm-mca.cpp

Modified: llvm/trunk/tools/llvm-mca/llvm-mca.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-mca/llvm-mca.cpp?rev=330816&r1=330815&r2=330816&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-mca/llvm-mca.cpp (original)
+++ llvm/trunk/tools/llvm-mca/llvm-mca.cpp Wed Apr 25 04:33:14 2018
@@ -52,6 +52,8 @@
 
 using namespace llvm;
 
+llvm::cl::OptionCategory ViewOptions("View Options");
+
 static cl::opt<std::string>
     InputFilename(cl::Positional, cl::desc("<input file>"), cl::init("-"));
 
@@ -95,39 +97,47 @@ static cl::opt<unsigned>
 static cl::opt<bool>
     PrintRegisterFileStats("register-file-stats",
                            cl::desc("Print register file statistics"),
+                           cl::cat(ViewOptions),
                            cl::init(false));
 
 static cl::opt<bool> PrintDispatchStats("dispatch-stats",
                                         cl::desc("Print dispatch statistics"),
+                                        cl::cat(ViewOptions),
                                         cl::init(false));
 
 static cl::opt<bool> PrintSchedulerStats("scheduler-stats",
                                          cl::desc("Print scheduler statistics"),
+                                         cl::cat(ViewOptions),
                                          cl::init(false));
 
 static cl::opt<bool>
     PrintRetireStats("retire-stats",
                      cl::desc("Print retire control unit statistics"),
+                     cl::cat(ViewOptions),
                      cl::init(false));
 
 static cl::opt<bool>
     PrintResourcePressureView("resource-pressure",
                               cl::desc("Print the resource pressure view"),
+                              cl::cat(ViewOptions),
                               cl::init(true));
 
 static cl::opt<bool> PrintTimelineView("timeline",
                                        cl::desc("Print the timeline view"),
+                                       cl::cat(ViewOptions),
                                        cl::init(false));
 
 static cl::opt<unsigned> TimelineMaxIterations(
     "timeline-max-iterations",
     cl::desc("Maximum number of iterations to print in timeline view"),
+    cl::cat(ViewOptions),
     cl::init(0));
 
 static cl::opt<unsigned> TimelineMaxCycles(
     "timeline-max-cycles",
     cl::desc(
         "Maximum number of cycles in the timeline view. Defaults to 80 cycles"),
+    cl::cat(ViewOptions),
     cl::init(80));
 
 static cl::opt<bool> AssumeNoAlias(
@@ -144,11 +154,13 @@ static cl::opt<unsigned>
 static cl::opt<bool>
     PrintInstructionTables("instruction-tables",
                            cl::desc("Print instruction tables"),
+                           cl::cat(ViewOptions),
                            cl::init(false));
 
 static cl::opt<bool>
     PrintInstructionInfoView("instruction-info",
                              cl::desc("Print the instruction info view"),
+                             cl::cat(ViewOptions),
                              cl::init(true));
 
 namespace {




More information about the llvm-commits mailing list