eliminate the ostream version of CheckBitcodeOutputToConsole,

change the raw_ostream one to take the raw_ostream byref instead
of byptr.  Prune #includes, eliminate a use of Streams.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79863 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2009-08-23 21:36:09 +00:00
parent 9441cfe488
commit b683ea4712
6 changed files with 15 additions and 39 deletions

View File

@ -15,19 +15,11 @@
#ifndef LLVM_SUPPORT_SYSTEMUTILS_H
#define LLVM_SUPPORT_SYSTEMUTILS_H
#include "llvm/System/Program.h"
#include <string>
namespace llvm {
/// Determine if the ostream provided is connected to the std::cout and
/// displayed or not (to a console window). If so, generate a warning message
/// advising against display of bitcode and return true. Otherwise just return
/// false
/// @brief Check for output written to a console
bool CheckBitcodeOutputToConsole(
std::ostream* stream_to_check, ///< The stream to be checked
bool print_warning = true ///< Control whether warnings are printed
);
class raw_ostream;
namespace sys { class Path; }
/// Determine if the raw_ostream provided is connected to the outs() and
/// displayed or not (to a console window). If so, generate a warning message
@ -35,8 +27,8 @@ bool CheckBitcodeOutputToConsole(
/// false
/// @brief Check for output written to a console
bool CheckBitcodeOutputToConsole(
raw_ostream* stream_to_check, ///< The stream to be checked
bool print_warning = true ///< Control whether warnings are printed
raw_ostream &stream_to_check, ///< The stream to be checked
bool print_warning = true ///< Control whether warnings are printed
);
/// FindExecutable - Find a named executable, giving the argv[0] of program

View File

@ -12,37 +12,20 @@
//
//===----------------------------------------------------------------------===//
#include "llvm/Support/Streams.h"
#include "llvm/Support/SystemUtils.h"
#include "llvm/System/Process.h"
#include "llvm/System/Program.h"
#include <ostream>
using namespace llvm;
bool llvm::CheckBitcodeOutputToConsole(raw_ostream* stream_to_check,
bool llvm::CheckBitcodeOutputToConsole(raw_ostream &stream_to_check,
bool print_warning) {
if (stream_to_check == &outs() &&
if (&stream_to_check == &outs() &&
sys::Process::StandardOutIsDisplayed()) {
if (print_warning) {
cerr << "WARNING: You're attempting to print out a bitcode file.\n"
<< "This is inadvisable as it may cause display problems. If\n"
<< "you REALLY want to taste LLVM bitcode first-hand, you\n"
<< "can force output with the `-f' option.\n\n";
}
return true;
}
return false;
}
bool llvm::CheckBitcodeOutputToConsole(std::ostream* stream_to_check,
bool print_warning) {
if (stream_to_check == cout.stream() &&
sys::Process::StandardOutIsDisplayed()) {
if (print_warning) {
cerr << "WARNING: You're attempting to print out a bitcode file.\n"
<< "This is inadvisable as it may cause display problems. If\n"
<< "you REALLY want to taste LLVM bitcode first-hand, you\n"
<< "can force output with the `-f' option.\n\n";
errs() << "WARNING: You're attempting to print out a bitcode file.\n"
<< "This is inadvisable as it may cause display problems. If\n"
<< "you REALLY want to taste LLVM bitcode first-hand, you\n"
<< "can force output with the `-f' option.\n\n";
}
return true;
}

View File

@ -20,6 +20,7 @@
#include "llvm/ADT/Triple.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/SystemUtils.h"
#include "llvm/System/Path.h"
#include <exception>
#include <vector>

View File

@ -114,7 +114,7 @@ int main(int argc, char **argv) {
sys::RemoveFileOnSignal(sys::Path(OutputFilename));
if (!DisableOutput)
if (Force || !CheckBitcodeOutputToConsole(Out.get(), true))
if (Force || !CheckBitcodeOutputToConsole(*Out, true))
WriteBitcodeToFile(M.get(), *Out);
return 0;
}

View File

@ -36,6 +36,7 @@
#include "llvm/Support/StandardPasses.h"
#include "llvm/Support/SystemUtils.h"
#include "llvm/System/Host.h"
#include "llvm/System/Program.h"
#include "llvm/System/Signals.h"
#include "llvm/Target/SubtargetFeature.h"
#include "llvm/Target/TargetOptions.h"

View File

@ -395,9 +395,8 @@ int main(int argc, char **argv) {
// If the output is set to be emitted to standard out, and standard out is a
// console, print out a warning message and refuse to do it. We don't
// impress anyone by spewing tons of binary goo to a terminal.
if (!Force && !NoOutput && CheckBitcodeOutputToConsole(Out,!Quiet)) {
if (!Force && !NoOutput && CheckBitcodeOutputToConsole(*Out, !Quiet))
NoOutput = true;
}
// Create a PassManager to hold and optimize the collection of passes we are
// about to build...