Subzero: Basic Block Profiler.
BUG= None
R=stichnot@chromium.org
Review URL: https://codereview.chromium.org/1147023007.
diff --git a/src/IceClFlags.cpp b/src/IceClFlags.cpp
index 203b54e..069c3e3 100644
--- a/src/IceClFlags.cpp
+++ b/src/IceClFlags.cpp
@@ -65,6 +65,12 @@
DumpStats("szstats",
cl::desc("Print statistics after translating each function"));
+cl::opt<bool> EnableBlockProfile(
+ "enable-block-profile",
+ cl::desc("If true, instrument basic blocks, and output profiling "
+ "information to stdout at the end of program execution."),
+ cl::init(false));
+
cl::opt<bool>
FunctionSections("ffunction-sections",
cl::desc("Emit functions into separate sections"));
@@ -261,6 +267,7 @@
OutFlags.DisableIRGeneration = false;
OutFlags.DisableTranslation = false;
OutFlags.DumpStats = false;
+ OutFlags.EnableBlockProfile = false;
OutFlags.FunctionSections = false;
OutFlags.GenerateUnitTestMessages = false;
OutFlags.PhiEdgeSplit = false;
@@ -311,6 +318,7 @@
OutFlags.setDisableIRGeneration(::DisableIRGeneration);
OutFlags.setDisableTranslation(::DisableTranslation);
OutFlags.setDumpStats(::DumpStats);
+ OutFlags.setEnableBlockProfile(::EnableBlockProfile);
OutFlags.setFunctionSections(::FunctionSections);
OutFlags.setNumTranslationThreads(::NumThreads);
OutFlags.setOptLevel(::OLevel);