From 49a2bb23d1391c8be45985518d4c5e99ff11b864 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Tue, 30 Mar 2010 05:01:08 +0000 Subject: rename GetLibSupportInfoOutputFile -> CreateInfoOutputFile and have it always return a new stream to simplify clients. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99874 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Support/Statistic.cpp | 11 +++++------ lib/Support/Timer.cpp | 21 +++++++++------------ 2 files changed, 14 insertions(+), 18 deletions(-) diff --git a/lib/Support/Statistic.cpp b/lib/Support/Statistic.cpp index f88094a..40589c5 100644 --- a/lib/Support/Statistic.cpp +++ b/lib/Support/Statistic.cpp @@ -32,8 +32,8 @@ #include using namespace llvm; -// GetLibSupportInfoOutputFile - Return a file stream to print our output on. -namespace llvm { extern raw_ostream *GetLibSupportInfoOutputFile(); } +// CreateInfoOutputFile - Return a file stream to print our output on. +namespace llvm { extern raw_ostream *CreateInfoOutputFile(); } /// -stats - Command line option to cause transformations to emit stats about /// what they did. @@ -96,7 +96,7 @@ StatisticInfo::~StatisticInfo() { if (Stats.empty()) return; // Get the stream to write to. - raw_ostream &OutStream = *GetLibSupportInfoOutputFile(); + raw_ostream &OutStream = *CreateInfoOutputFile(); // Figure out how long the biggest Value and Name fields are. unsigned MaxNameLen = 0, MaxValLen = 0; @@ -125,9 +125,8 @@ StatisticInfo::~StatisticInfo() { } - OutStream << '\n'; // Flush the output stream... + OutStream << '\n'; // Flush the output stream. OutStream.flush(); - if (&OutStream != &outs() && &OutStream != &errs()) - delete &OutStream; // Close the file. + delete &OutStream; // Close the file. } diff --git a/lib/Support/Timer.cpp b/lib/Support/Timer.cpp index daafd63..c0bc750 100644 --- a/lib/Support/Timer.cpp +++ b/lib/Support/Timer.cpp @@ -22,8 +22,8 @@ #include "llvm/ADT/StringMap.h" using namespace llvm; -// GetLibSupportInfoOutputFile - Return a file stream to print our output on. -namespace llvm { extern raw_ostream *GetLibSupportInfoOutputFile(); } +// CreateInfoOutputFile - Return a file stream to print our output on. +namespace llvm { extern raw_ostream *CreateInfoOutputFile(); } // getLibSupportInfoOutputFilename - This ugly hack is brought to you courtesy // of constructor/destructor ordering being unspecified by C++. Basically the @@ -52,13 +52,13 @@ namespace { cl::Hidden, cl::location(getLibSupportInfoOutputFilename())); } -// GetLibSupportInfoOutputFile - Return a file stream to print our output on. -raw_ostream *llvm::GetLibSupportInfoOutputFile() { +// CreateInfoOutputFile - Return a file stream to print our output on. +raw_ostream *llvm::CreateInfoOutputFile() { std::string &LibSupportInfoOutputFilename = getLibSupportInfoOutputFilename(); if (LibSupportInfoOutputFilename.empty()) - return &errs(); + return new raw_fd_ostream(2, false); // stderr. if (LibSupportInfoOutputFilename == "-") - return &outs(); + return new raw_fd_ostream(1, false); // stdout. std::string Error; raw_ostream *Result = new raw_fd_ostream(LibSupportInfoOutputFilename.c_str(), @@ -69,7 +69,7 @@ raw_ostream *llvm::GetLibSupportInfoOutputFile() { errs() << "Error opening info-output-file '" << LibSupportInfoOutputFilename << " for appending!\n"; delete Result; - return &errs(); + return new raw_fd_ostream(2, false); // stderr. } @@ -264,12 +264,9 @@ void TimerGroup::removeTimer(Timer &T) { if (FirstTimer != 0 || TimersToPrint.empty()) return; - raw_ostream *OutStream = GetLibSupportInfoOutputFile(); - + raw_ostream *OutStream = CreateInfoOutputFile(); PrintQueuedTimers(*OutStream); - - if (OutStream != &errs() && OutStream != &outs()) - delete OutStream; // Close the file. + delete OutStream; // Close the file. } void TimerGroup::addTimer(Timer &T) { -- cgit v1.1