summaryrefslogtreecommitdiffstats
path: root/llvm/lib/System/Unix/Process.inc
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-09-11 20:46:33 +0000
committerDan Gohman <gohman@apple.com>2009-09-11 20:46:33 +0000
commite59292360311fd824f6be5f71cd0e537fee86392 (patch)
tree2a2c32e66f67335aed79d8b9311e2797c16daf10 /llvm/lib/System/Unix/Process.inc
parentdd3f5f1fcabd0be8167dcd5e96fbe1e7a09ff300 (diff)
downloadbcm5719-llvm-e59292360311fd824f6be5f71cd0e537fee86392.tar.gz
bcm5719-llvm-e59292360311fd824f6be5f71cd0e537fee86392.zip
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. llvm-svn: 81568
Diffstat (limited to 'llvm/lib/System/Unix/Process.inc')
-rw-r--r--llvm/lib/System/Unix/Process.inc20
1 files changed, 7 insertions, 13 deletions
diff --git a/llvm/lib/System/Unix/Process.inc b/llvm/lib/System/Unix/Process.inc
index 774783f8ad0..d7155852bf2 100644
--- a/llvm/lib/System/Unix/Process.inc
+++ b/llvm/lib/System/Unix/Process.inc
@@ -179,26 +179,20 @@ void Process::PreventCoreFiles() {
}
bool Process::StandardInIsUserInput() {
-#if HAVE_ISATTY
- return isatty(0);
-#else
- // If we don't have isatty, just return false.
- return false;
-#endif
+ return FileDescriptorIsDisplayed(STDIN_FILENO);
}
bool Process::StandardOutIsDisplayed() {
-#if HAVE_ISATTY
- return isatty(1);
-#else
- // If we don't have isatty, just return false.
- return false;
-#endif
+ return FileDescriptorIsDisplayed(STDOUT_FILENO);
}
bool Process::StandardErrIsDisplayed() {
+ return FileDescriptorIsDisplayed(STDERR_FILENO);
+}
+
+bool Process::FileDescriptorIsDisplayed(int fd) {
#if HAVE_ISATTY
- return isatty(2);
+ return isatty(fd);
#else
// If we don't have isatty, just return false.
return false;
OpenPOWER on IntegriCloud