diff options
author | Chris Lattner <sabre@nondot.org> | 2009-08-23 07:31:22 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2009-08-23 07:31:22 +0000 |
commit | 2e35bec78a3279ceb330bec3d401ba6e8da8480c (patch) | |
tree | 058a5cd31a5880eae4d74085b779cfebaf3e4ef4 /tools | |
parent | 103289e9383ad1eb66caf28c9b166aebce963a35 (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.cpp | 5 | ||||
-rw-r--r-- | tools/opt/opt.cpp | 10 |
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 >) { 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; } |