diff options
-rw-r--r-- | tools/bugpoint/ExecutionDriver.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/bugpoint/ExecutionDriver.cpp b/tools/bugpoint/ExecutionDriver.cpp index 93135efb81..92e7737600 100644 --- a/tools/bugpoint/ExecutionDriver.cpp +++ b/tools/bugpoint/ExecutionDriver.cpp @@ -56,6 +56,11 @@ namespace { cl::desc("Assume nonzero exit code is failure (default on)"), cl::init(true)); + cl::opt<bool> + AppendProgramExitCode("append-exit-code", + cl::desc("Append the exit code to the output so it gets diff'd too"), + cl::init(false)); + cl::opt<std::string> InputFile("input", cl::init("/dev/null"), cl::desc("Filename to pipe in as stdin (default: /dev/null)")); @@ -277,6 +282,12 @@ std::string BugDriver::executeProgram(std::string OutputFile, } } + if (AppendProgramExitCode) { + std::ofstream outFile(OutputFile.c_str(), std::ios_base::app); + outFile << "exit " << RetVal << '\n'; + outFile.close(); + } + if (ProgramExitedNonzero != 0) *ProgramExitedNonzero = (RetVal != 0); |