[llvm] r219244 - [Bugpoint] Close error log in ProcessFailure. Bugpoint had been failing to close
Lang Hames
lhames at gmail.com
Tue Oct 7 14:47:24 PDT 2014
Author: lhames
Date: Tue Oct 7 16:47:23 2014
New Revision: 219244
URL: http://llvm.org/viewvc/llvm-project?rev=219244&view=rev
Log:
[Bugpoint] Close error log in ProcessFailure. Bugpoint had been failing to close
this, and in some circumstances (e.g. reducing particularly large test-cases)
this was causing bugpoint to be killed for hitting open file-handle limits.
No test case: I was only able to trigger this with test cases taking upwards of
10 mins to run.
Modified:
llvm/trunk/tools/bugpoint/ToolRunner.cpp
Modified: llvm/trunk/tools/bugpoint/ToolRunner.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/bugpoint/ToolRunner.cpp?rev=219244&r1=219243&r2=219244&view=diff
==============================================================================
--- llvm/trunk/tools/bugpoint/ToolRunner.cpp (original)
+++ llvm/trunk/tools/bugpoint/ToolRunner.cpp Tue Oct 7 16:47:23 2014
@@ -141,21 +141,13 @@ static std::string ProcessFailure(String
// Rerun the compiler, capturing any error messages to print them.
SmallString<128> ErrorFilename;
- int ErrorFD;
std::error_code EC = sys::fs::createTemporaryFile(
- "bugpoint.program_error_messages", "", ErrorFD, ErrorFilename);
+ "bugpoint.program_error_messages", "", ErrorFilename);
if (EC) {
errs() << "Error making unique filename: " << EC.message() << "\n";
exit(1);
}
-#ifdef _WIN32
- // Close ErrorFD immediately, or it couldn't be reopened on Win32.
- // FIXME: We may have an option in openFileForWrite(), not to use ResultFD
- // but to close it.
- delete new raw_fd_ostream(ErrorFD, true);
-#endif
-
RunProgramWithTimeout(ProgPath, Args, "", ErrorFilename.str(),
ErrorFilename.str(), Timeout, MemoryLimit);
// FIXME: check return code ?
More information about the llvm-commits
mailing list