Specify the filename upon writing.
Change-Id: I5aac9401ab03cc5fa3a6573ef9c9dbdda9163149
diff --git a/src/compiler_llvm/compiler_llvm.cc b/src/compiler_llvm/compiler_llvm.cc
index 8945210..28320c7 100644
--- a/src/compiler_llvm/compiler_llvm.cc
+++ b/src/compiler_llvm/compiler_llvm.cc
@@ -129,15 +129,8 @@
// Allocate compilation unit
size_t cunit_idx = cunits_.size();
-
curr_cunit_ = new CompilationUnit(insn_set_, cunit_idx);
- // Setup bitcode output filename
- if (IsBitcodeFileNameAvailable()) {
- curr_cunit_->SetBitcodeFileName(
- StringPrintf("%s-%zu", bitcode_filename_.c_str(), cunit_idx));
- }
-
// Register compilation unit
cunits_.push_back(curr_cunit_);
}
@@ -167,7 +160,9 @@
// Write bitcode to file when filename is set
if (IsBitcodeFileNameAvailable()) {
- curr_cunit_->WriteBitcodeToFile();
+ const size_t cunit_idx = cunits_.size();
+ curr_cunit_->WriteBitcodeToFile(
+ StringPrintf("%s-%zu", bitcode_filename_.c_str(), cunit_idx));
}
// Materialize the llvm::Module into ELF object file