diff options
author | Dan Gohman <gohman@apple.com> | 2009-09-11 20:46:33 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2009-09-11 20:46:33 +0000 |
commit | ec080467f5b322441055de1f6cd4f08edc23d7df (patch) | |
tree | 3d7adcfa07dbe6db4fc8175d0b1687c4a8726bd2 /tools/opt | |
parent | 82b3c2e40417098f9af0c33150c4b1c66ae1747c (diff) |
Fix llvm-extract's "writing bitcode to a terminal" warning, which wasn't
working. To support this, add an is_displayed() function to raw_ostream,
and generalize Process::StandardOutIsDisplayed and friends in order to
support it.
Also, call RemoveFileOnSignal before creating a file instead of after, so
that the file isn't left behind if the program is interrupted between when
the file is created and RemoveFileOnSignal is called.
While here, add a -S to llvm-extract and port it to IRReader so that it
supports assembly input.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81568 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/opt')
-rw-r--r-- | tools/opt/opt.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/tools/opt/opt.cpp b/tools/opt/opt.cpp index e470066712..fe0e03649d 100644 --- a/tools/opt/opt.cpp +++ b/tools/opt/opt.cpp @@ -362,6 +362,10 @@ int main(int argc, char **argv) { // FIXME: outs() is not binary! raw_ostream *Out = &outs(); // Default to printing to stdout... if (OutputFilename != "-") { + // Make sure that the Output file gets unlinked from the disk if we get a + // SIGINT + sys::RemoveFileOnSignal(sys::Path(OutputFilename)); + std::string ErrorInfo; Out = new raw_fd_ostream(OutputFilename.c_str(), ErrorInfo, raw_fd_ostream::F_Binary); @@ -370,10 +374,6 @@ int main(int argc, char **argv) { delete Out; return 1; } - - // Make sure that the Output file gets unlinked from the disk if we get a - // SIGINT - sys::RemoveFileOnSignal(sys::Path(OutputFilename)); } // If the output is set to be emitted to standard out, and standard out is a |