[llvm-commits] [llvm] r78183 - in /llvm/trunk/tools/bugpoint: BugDriver.cpp ExecutionDriver.cpp ToolRunner.cpp ToolRunner.h
Anton Korobeynikov
asl at math.spbu.ru
Wed Aug 5 02:32:25 PDT 2009
Author: asl
Date: Wed Aug 5 04:32:10 2009
New Revision: 78183
URL: http://llvm.org/viewvc/llvm-project?rev=78183&view=rev
Log:
Add save-temps option to bugpoint to keep temporary stuff.
Patch by Sandeep Patel
Modified:
llvm/trunk/tools/bugpoint/BugDriver.cpp
llvm/trunk/tools/bugpoint/ExecutionDriver.cpp
llvm/trunk/tools/bugpoint/ToolRunner.cpp
llvm/trunk/tools/bugpoint/ToolRunner.h
Modified: llvm/trunk/tools/bugpoint/BugDriver.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/bugpoint/BugDriver.cpp?rev=78183&r1=78182&r2=78183&view=diff
==============================================================================
--- llvm/trunk/tools/bugpoint/BugDriver.cpp (original)
+++ llvm/trunk/tools/bugpoint/BugDriver.cpp Wed Aug 5 04:32:10 2009
@@ -196,7 +196,7 @@
// Make sure the reference output file gets deleted on exit from this
// function, if appropriate.
sys::Path ROF(ReferenceOutputFile);
- FileRemover RemoverInstance(ROF, CreatedOutput);
+ FileRemover RemoverInstance(ROF, CreatedOutput && !SaveTemps);
// Diff the output of the raw program against the reference output. If it
// matches, then we assume there is a miscompilation bug and try to
Modified: llvm/trunk/tools/bugpoint/ExecutionDriver.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/bugpoint/ExecutionDriver.cpp?rev=78183&r1=78182&r2=78183&view=diff
==============================================================================
--- llvm/trunk/tools/bugpoint/ExecutionDriver.cpp (original)
+++ llvm/trunk/tools/bugpoint/ExecutionDriver.cpp Wed Aug 5 04:32:10 2009
@@ -288,7 +288,7 @@
}
// Remove the temporary bitcode file when we are done.
- FileRemover BitcodeFileRemover(BitcodeFile);
+ FileRemover BitcodeFileRemover(BitcodeFile, !SaveTemps);
// Actually compile the program!
Interpreter->compileProgram(BitcodeFile.toString());
@@ -328,7 +328,7 @@
// Remove the temporary bitcode file when we are done.
sys::Path BitcodePath (BitcodeFile);
- FileRemover BitcodeFileRemover(BitcodePath, CreatedBitcode);
+ FileRemover BitcodeFileRemover(BitcodePath, CreatedBitcode && !SaveTemps);
if (OutputFile.empty()) OutputFile = "bugpoint-execution-output";
Modified: llvm/trunk/tools/bugpoint/ToolRunner.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/bugpoint/ToolRunner.cpp?rev=78183&r1=78182&r2=78183&view=diff
==============================================================================
--- llvm/trunk/tools/bugpoint/ToolRunner.cpp (original)
+++ llvm/trunk/tools/bugpoint/ToolRunner.cpp Wed Aug 5 04:32:10 2009
@@ -22,6 +22,11 @@
#include <sstream>
using namespace llvm;
+namespace llvm {
+ cl::opt<bool>
+ SaveTemps("save-temps", cl::init(false), cl::desc("Save temporary files"));
+}
+
namespace {
cl::opt<std::string>
RemoteClient("remote-client",
@@ -395,7 +400,7 @@
sys::Path OutputAsmFile;
OutputCode(Bitcode, OutputAsmFile);
- FileRemover OutFileRemover(OutputAsmFile);
+ FileRemover OutFileRemover(OutputAsmFile, !SaveTemps);
std::vector<std::string> GCCArgs(ArgsForGCC);
GCCArgs.insert(GCCArgs.end(), SharedLibs.begin(), SharedLibs.end());
@@ -560,7 +565,7 @@
sys::Path OutputCFile;
OutputCode(Bitcode, OutputCFile);
- FileRemover CFileRemove(OutputCFile);
+ FileRemover CFileRemove(OutputCFile, !SaveTemps);
std::vector<std::string> GCCArgs(ArgsForGCC);
GCCArgs.insert(GCCArgs.end(), SharedLibs.begin(), SharedLibs.end());
@@ -726,7 +731,7 @@
errs() << "\n";
);
- FileRemover OutputBinaryRemover(OutputBinary);
+ FileRemover OutputBinaryRemover(OutputBinary, !SaveTemps);
if (RemoteClientPath.isEmpty()) {
DEBUG(errs() << "<run locally>";);
Modified: llvm/trunk/tools/bugpoint/ToolRunner.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/bugpoint/ToolRunner.h?rev=78183&r1=78182&r2=78183&view=diff
==============================================================================
--- llvm/trunk/tools/bugpoint/ToolRunner.h (original)
+++ llvm/trunk/tools/bugpoint/ToolRunner.h Wed Aug 5 04:32:10 2009
@@ -17,12 +17,15 @@
#ifndef BUGPOINT_TOOLRUNNER_H
#define BUGPOINT_TOOLRUNNER_H
+#include "llvm/Support/CommandLine.h"
#include "llvm/Support/SystemUtils.h"
#include <exception>
#include <vector>
namespace llvm {
+extern cl::opt<bool> SaveTemps;
+
class CBE;
class LLC;
More information about the llvm-commits
mailing list