diff --git a/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp b/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp index d0ba73d2dca..01053751cd2 100644 --- a/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp +++ b/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp @@ -41,6 +41,9 @@ using namespace llvm; static cl::opt<std::string> InputFilename(cl::Positional, cl::desc("<input bytecode>"), cl::init("-")); +static cl::opt<std::string> + OutputFilename("-o", cl::init("-"), cl::desc("<output file>")); + static cl::opt<bool> NoDetails ("nodetails", cl::desc("Skip detailed output")); static cl::opt<bool> Dump ("dump", cl::desc("Dump low level bytecode trace")); static cl::opt<bool> Verify ("verify", cl::desc("Progressively verify module")); @@ -59,12 +62,11 @@ main(int argc, char **argv) BytecodeAnalysis bca; /// Determine what to generate - bca.dumpBytecode = Dump; bca.detailedResults = !NoDetails; bca.progressiveVerify = Verify; /// Analyze the bytecode file - Module* M = AnalyzeBytecodeFile(InputFilename, bca, &ErrorMessage); + Module* M = AnalyzeBytecodeFile(InputFilename, bca, &ErrorMessage, (Dump?Out:0)); // All that bcanalyzer does is write the gathered statistics to the output PrintBytecodeAnalysis(bca,*Out);