From: Reid Spencer Date: Tue, 28 Nov 2006 07:04:10 +0000 (+0000) Subject: Add an -append-exit-code option to bugpoint. This will cause bugpoint to X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=5e1452c856a8bcf39ab7a67a5af946c8162f942d;p=oota-llvm.git Add an -append-exit-code option to bugpoint. This will cause bugpoint to append "exit " to the end of the output file. This is used by the nightly tester to make bugpoint match the output generated by the RunSafely.sh script so it doesn't find false positives. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31960 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/bugpoint/ExecutionDriver.cpp b/tools/bugpoint/ExecutionDriver.cpp index 93135efb815..92e77376004 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 + AppendProgramExitCode("append-exit-code", + cl::desc("Append the exit code to the output so it gets diff'd too"), + cl::init(false)); + cl::opt 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);