diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2013-06-18 15:29:32 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2013-06-18 15:29:32 +0000 |
commit | 88088f4067ae002aebf6e32079c446b06fab31f1 (patch) | |
tree | 2b4ba1321b978bebdee34fcbb9f6e403b2607071 /tools/bugpoint/OptimizerDriver.cpp | |
parent | 9c22f87b1374b06dc6c07f6e8047890e390bbe2d (diff) | |
download | external_llvm-88088f4067ae002aebf6e32079c446b06fab31f1.zip external_llvm-88088f4067ae002aebf6e32079c446b06fab31f1.tar.gz external_llvm-88088f4067ae002aebf6e32079c446b06fab31f1.tar.bz2 |
Don't use PathV1.h in tools/bugpoint/Miscompilation.cpp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184193 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/bugpoint/OptimizerDriver.cpp')
-rw-r--r-- | tools/bugpoint/OptimizerDriver.cpp | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/tools/bugpoint/OptimizerDriver.cpp b/tools/bugpoint/OptimizerDriver.cpp index ffa108b..6cc8f11 100644 --- a/tools/bugpoint/OptimizerDriver.cpp +++ b/tools/bugpoint/OptimizerDriver.cpp @@ -49,20 +49,28 @@ namespace { /// writeProgramToFile - This writes the current "Program" to the named bitcode /// file. If an error occurs, true is returned. /// +static bool writeProgramToFileAux(tool_output_file &Out, const Module *M) { + WriteBitcodeToFile(M, Out.os()); + Out.os().close(); + if (!Out.os().has_error()) { + Out.keep(); + return false; + } + return true; +} + +bool BugDriver::writeProgramToFile(const std::string &Filename, int FD, + const Module *M) const { + tool_output_file Out(Filename.c_str(), FD); + return writeProgramToFileAux(Out, M); +} + bool BugDriver::writeProgramToFile(const std::string &Filename, const Module *M) const { std::string ErrInfo; - tool_output_file Out(Filename.c_str(), ErrInfo, - raw_fd_ostream::F_Binary); - if (ErrInfo.empty()) { - WriteBitcodeToFile(M, Out.os()); - Out.os().close(); - if (!Out.os().has_error()) { - Out.keep(); - return false; - } - } - Out.os().clear_error(); + tool_output_file Out(Filename.c_str(), ErrInfo, raw_fd_ostream::F_Binary); + if (ErrInfo.empty()) + return writeProgramToFileAux(Out, M); return true; } |