[bugpoint] Allow the user to specify the path to opt on the commandline.
[oota-llvm.git] / tools / bugpoint / OptimizerDriver.cpp
index 0c39b9d6fc46a7e353f2a7d587dac007e4770bcd..20c609cc314eae9a04da19703684b338efc93f78 100644 (file)
@@ -44,6 +44,9 @@ namespace {
   // ChildOutput - This option captures the name of the child output file that
   // is set up by the parent bugpoint process
   cl::opt<std::string> ChildOutput("child-output", cl::ReallyHidden);
+  cl::opt<std::string> OptCmd("opt-command", cl::init(""),
+                              cl::desc("Path to opt. (default: search path "
+                                       "for 'opt'.)"));
 }
 
 /// writeProgramToFile - This writes the current "Program" to the named bitcode
@@ -154,7 +157,7 @@ bool BugDriver::runPasses(Module *Program,
     return 1;
   }
 
-  std::string tool = sys::FindProgramByName("opt");
+  std::string tool = OptCmd.empty()? sys::FindProgramByName("opt") : OptCmd;
   if (tool.empty()) {
     errs() << "Cannot find `opt' in PATH!\n";
     return 1;