aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-08-23 07:31:22 +0000
committerChris Lattner <sabre@nondot.org>2009-08-23 07:31:22 +0000
commit2e35bec78a3279ceb330bec3d401ba6e8da8480c (patch)
tree058a5cd31a5880eae4d74085b779cfebaf3e4ef4 /tools
parent103289e9383ad1eb66caf28c9b166aebce963a35 (diff)
use raw_fd_ostream instead of fstream with graphwriter,
flush the right stream in opt.cpp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79837 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools')
-rw-r--r--tools/opt/GraphPrinters.cpp5
-rw-r--r--tools/opt/opt.cpp10
2 files changed, 8 insertions, 7 deletions
diff --git a/tools/opt/GraphPrinters.cpp b/tools/opt/GraphPrinters.cpp
index 6bd0a6e9f7..c38469cc12 100644
--- a/tools/opt/GraphPrinters.cpp
+++ b/tools/opt/GraphPrinters.cpp
@@ -28,9 +28,10 @@ static void WriteGraphToFile(std::ostream &O, const std::string &GraphName,
const GraphType &GT) {
std::string Filename = GraphName + ".dot";
O << "Writing '" << Filename << "'...";
- std::ofstream F(Filename.c_str());
+ std::string ErrInfo;
+ raw_fd_ostream F(Filename.c_str(), ErrInfo, raw_fd_ostream::F_Force);
- if (F.good())
+ if (ErrInfo.empty())
WriteGraph(F, GT);
else
O << " error opening file for writing!";
diff --git a/tools/opt/opt.cpp b/tools/opt/opt.cpp
index f41b202349..ffe53d5dd1 100644
--- a/tools/opt/opt.cpp
+++ b/tools/opt/opt.cpp
@@ -141,7 +141,7 @@ struct CallGraphSCCPassPrinter : public CallGraphSCCPass {
if (F) {
outs().flush();
getAnalysisID<Pass>(PassToPrint).print(outs(), F->getParent());
- cout << std::flush;
+ outs().flush();
}
}
}
@@ -170,7 +170,7 @@ struct ModulePassPrinter : public ModulePass {
outs() << "Printing analysis '" << PassToPrint->getPassName() << "':\n";
outs().flush();
getAnalysisID<Pass>(PassToPrint).print(outs(), &M);
- cout << std::flush;
+ outs().flush();
}
// Get and print pass...
@@ -200,7 +200,7 @@ struct FunctionPassPrinter : public FunctionPass {
// Get and print pass...
outs().flush();
getAnalysisID<Pass>(PassToPrint).print(outs(), F.getParent());
- cout << std::flush;
+ outs().flush();
return false;
}
@@ -226,7 +226,7 @@ struct LoopPassPrinter : public LoopPass {
outs().flush();
getAnalysisID<Pass>(PassToPrint).print(outs(),
L->getHeader()->getParent()->getParent());
- cout << std::flush;
+ outs().flush();
}
// Get and print pass...
return false;
@@ -257,7 +257,7 @@ struct BasicBlockPassPrinter : public BasicBlockPass {
// Get and print pass...
outs().flush();
getAnalysisID<Pass>(PassToPrint).print(outs(), BB.getParent()->getParent());
- cout << std::flush;
+ outs().flush();
return false;
}