aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/Module
diff options
context:
space:
mode:
authorMartin Nowack <martin@se.inf.tu-dresden.de>2014-05-29 23:15:59 +0200
committerMartin Nowack <martin@se.inf.tu-dresden.de>2014-05-29 23:57:45 +0200
commitd934d983692c8952cdb887cbcd59f2df0001b9c0 (patch)
tree9179a257bb053ba0a0da0e9dc4d2c030202c0f28 /lib/Module
parentc2dec441f3f89916962175f0307b5c33473fa616 (diff)
downloadklee-d934d983692c8952cdb887cbcd59f2df0001b9c0.tar.gz
Refactoring from std::ostream to llvm::raw_ostream
According to LLVM: lightweight and simpler implementation of streams.
Diffstat (limited to 'lib/Module')
-rw-r--r--lib/Module/KModule.cpp24
-rw-r--r--lib/Module/Optimize.cpp2
2 files changed, 10 insertions, 16 deletions
diff --git a/lib/Module/KModule.cpp b/lib/Module/KModule.cpp
index e06e722a..697b6ea9 100644
--- a/lib/Module/KModule.cpp
+++ b/lib/Module/KModule.cpp
@@ -430,15 +430,13 @@ void KModule::prepare(const Interpreter::ModuleOptions &opts,
// around a kcachegrind parsing bug (it puts them on new lines), so
// that source browsing works.
if (OutputSource) {
- std::ostream *os = ih->openOutputFile("assembly.ll");
- assert(os && os->good() && "unable to open source output");
-
- llvm::raw_os_ostream *ros = new llvm::raw_os_ostream(*os);
+ llvm::raw_fd_ostream *os = ih->openOutputFile("assembly.ll");
+ assert(os && !os->has_error() && "unable to open source output");
// We have an option for this in case the user wants a .ll they
// can compile.
if (NoTruncateSourceLines) {
- *ros << *module;
+ *os << *module;
} else {
std::string string;
llvm::raw_string_ostream rss(string);
@@ -449,30 +447,26 @@ void KModule::prepare(const Interpreter::ModuleOptions &opts,
for (;;) {
const char *end = index(position, '\n');
if (!end) {
- *ros << position;
+ *os << position;
break;
} else {
unsigned count = (end - position) + 1;
if (count<255) {
- ros->write(position, count);
+ os->write(position, count);
} else {
- ros->write(position, 254);
- *ros << "\n";
+ os->write(position, 254);
+ *os << "\n";
}
position = end+1;
}
}
}
- delete ros;
-
delete os;
}
if (OutputModule) {
- std::ostream *f = ih->openOutputFile("final.bc");
- llvm::raw_os_ostream* rfs = new llvm::raw_os_ostream(*f);
- WriteBitcodeToFile(module, *rfs);
- delete rfs;
+ llvm::raw_fd_ostream *f = ih->openOutputFile("final.bc");
+ WriteBitcodeToFile(module, *f);
delete f;
}
diff --git a/lib/Module/Optimize.cpp b/lib/Module/Optimize.cpp
index 9c200bc8..6f060edd 100644
--- a/lib/Module/Optimize.cpp
+++ b/lib/Module/Optimize.cpp
@@ -272,7 +272,7 @@ void Optimize(Module* M) {
if (Opt->getNormalCtor())
addPass(Passes, Opt->getNormalCtor()());
else
- std::cerr << "llvm-ld: cannot create pass: " << Opt->getPassName()
+ llvm::errs() << "llvm-ld: cannot create pass: " << Opt->getPassName()
<< "\n";
}
#endif