clover/llvm: Define function for bitcode print-out.

Reviewed-by: Serge Martin <edb+mesa@sigluy.net>
Tested-by: Jan Vesely <jan.vesely@rutgers.edu>
This commit is contained in:
Francisco Jerez 2016-05-17 16:02:58 +02:00
parent f0721020ad
commit 26fa9bfd0d
1 changed files with 10 additions and 7 deletions

View File

@ -433,6 +433,14 @@ namespace {
c);
}
std::string
print_module_bitcode(const ::llvm::Module &mod) {
std::string s;
::llvm::raw_string_ostream os { s };
mod.print(os, NULL);
return os.str();
}
std::vector<char>
emit_code(::llvm::Module &mod, const target &target,
TargetMachine::CodeGenFileType ft,
@ -572,13 +580,8 @@ clover::compile_program_llvm(const std::string &source,
optimize(*mod, c->getCodeGenOpts().OptimizationLevel);
if (has_flag(debug::llvm)) {
std::string log;
raw_string_ostream s_log(log);
mod->print(s_log, NULL);
s_log.flush();
debug::log(".ll", log);
}
if (has_flag(debug::llvm))
debug::log(".ll", print_module_bitcode(*mod));
module m;
// Build the clover::module