From eecfa369eb91838fbd833183717b2579a0127acb Mon Sep 17 00:00:00 2001 From: Bill Wendling Date: Thu, 29 May 2008 21:46:33 +0000 Subject: [PATCH] Remove more iostream header includes. Needed to implement a "FlushStream" function to flush a specified std::ostream. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51705 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Support/Streams.h | 8 ++++++++ lib/Support/Streams.cpp | 9 +++++++++ lib/System/Unix/Program.inc | 6 +++--- lib/Target/CellSPU/SPUISelDAGToDAG.cpp | 1 - lib/Target/CellSPU/SPUInstrInfo.cpp | 4 ++-- lib/Target/CellSPU/SPURegisterInfo.cpp | 3 +-- 6 files changed, 23 insertions(+), 8 deletions(-) diff --git a/include/llvm/Support/Streams.h b/include/llvm/Support/Streams.h index 46bac8baaf6..2444d5b6af3 100644 --- a/include/llvm/Support/Streams.h +++ b/include/llvm/Support/Streams.h @@ -19,6 +19,9 @@ namespace llvm { + /// FlushStream - Function called by BaseStream to flush an ostream. + void FlushStream(std::ostream &S); + /// BaseStream - Acts like the STL streams. It's a wrapper for the std::cerr, /// std::cout, std::cin, etc. streams. However, it doesn't require #including /// @verbatim @endverbatm in every file (doing so increases static @@ -39,6 +42,11 @@ namespace llvm { return *this; } + void flush() { + if (Stream) + FlushStream(*Stream); + } + template BaseStream &operator << (const Ty &Thing) { if (Stream) *Stream << Thing; diff --git a/lib/Support/Streams.cpp b/lib/Support/Streams.cpp index 122955ff4eb..cf6cfeb7fd0 100644 --- a/lib/Support/Streams.cpp +++ b/lib/Support/Streams.cpp @@ -19,3 +19,12 @@ using namespace llvm; OStream llvm::cout(std::cout); OStream llvm::cerr(std::cerr); IStream llvm::cin(std::cin); + +namespace llvm { + +/// FlushStream - Function called by BaseStream to flush an ostream. +void FlushStream(std::ostream &S) { + S << std::flush; +} + +} // end anonymous namespace diff --git a/lib/System/Unix/Program.inc b/lib/System/Unix/Program.inc index d0dade1f8ca..182e14db096 100644 --- a/lib/System/Unix/Program.inc +++ b/lib/System/Unix/Program.inc @@ -17,8 +17,8 @@ //===----------------------------------------------------------------------===// #include +#include #include "Unix.h" -#include #if HAVE_SYS_STAT_H #include #endif @@ -210,8 +210,8 @@ Program::ExecuteAndWait(const Path& path, } // Make sure stderr and stdout have been flushed - std::cerr << std::flush; - std::cout << std::flush; + cerr.flush(); + cout.flush(); fsync(1); fsync(2); diff --git a/lib/Target/CellSPU/SPUISelDAGToDAG.cpp b/lib/Target/CellSPU/SPUISelDAGToDAG.cpp index c6628aca63a..b491b13b71b 100644 --- a/lib/Target/CellSPU/SPUISelDAGToDAG.cpp +++ b/lib/Target/CellSPU/SPUISelDAGToDAG.cpp @@ -31,7 +31,6 @@ #include "llvm/Support/Debug.h" #include "llvm/Support/MathExtras.h" #include "llvm/Support/Compiler.h" -#include #include #include diff --git a/lib/Target/CellSPU/SPUInstrInfo.cpp b/lib/Target/CellSPU/SPUInstrInfo.cpp index bf94cdc0946..3e991a9e79c 100644 --- a/lib/Target/CellSPU/SPUInstrInfo.cpp +++ b/lib/Target/CellSPU/SPUInstrInfo.cpp @@ -17,7 +17,7 @@ #include "SPUTargetMachine.h" #include "SPUGenInstrInfo.inc" #include "llvm/CodeGen/MachineInstrBuilder.h" -#include +#include "llvm/Support/Streams.h" using namespace llvm; @@ -218,7 +218,7 @@ void SPUInstrInfo::copyRegToReg(MachineBasicBlock &MBB, BuildMI(MBB, MI, get(SPU::ORv4i32), DestReg).addReg(SrcReg) .addReg(SrcReg); } else { - std::cerr << "Attempt to copy unknown/unsupported register class!\n"; + cerr << "Attempt to copy unknown/unsupported register class!\n"; abort(); } } diff --git a/lib/Target/CellSPU/SPURegisterInfo.cpp b/lib/Target/CellSPU/SPURegisterInfo.cpp index ea69d215a53..b6b7fd31741 100644 --- a/lib/Target/CellSPU/SPURegisterInfo.cpp +++ b/lib/Target/CellSPU/SPURegisterInfo.cpp @@ -40,7 +40,6 @@ #include "llvm/ADT/BitVector.h" #include "llvm/ADT/STLExtras.h" #include -#include using namespace llvm; @@ -178,7 +177,7 @@ unsigned SPURegisterInfo::getRegisterNumbering(unsigned RegEnum) { case SPU::R126: return 126; case SPU::R127: return 127; default: - std::cerr << "Unhandled reg in SPURegisterInfo::getRegisterNumbering!\n"; + cerr << "Unhandled reg in SPURegisterInfo::getRegisterNumbering!\n"; abort(); } }