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