Code cleanup to avoid LLVM dependency when building with quick only.

Change-Id: I0985c227d775c72fd23975d4c9bf673ba32615c2
diff --git a/compiler/compiler_backend.cc b/compiler/compiler_backend.cc
index b8f21a9..eaa39f8 100644
--- a/compiler/compiler_backend.cc
+++ b/compiler/compiler_backend.cc
@@ -177,7 +177,9 @@
 #ifdef ART_USE_PORTABLE_COMPILER
 
 extern "C" void ArtInitCompilerContext(art::CompilerDriver& driver);
+
 extern "C" void ArtUnInitCompilerContext(art::CompilerDriver& driver);
+
 extern "C" art::CompiledMethod* ArtCompileMethod(art::CompilerDriver& driver,
                                                  const art::DexFile::CodeItem* code_item,
                                                  uint32_t access_flags,
@@ -186,10 +188,14 @@
                                                  uint32_t method_idx,
                                                  jobject class_loader,
                                                  const art::DexFile& dex_file);
+
 extern "C" art::CompiledMethod* ArtLLVMJniCompileMethod(art::CompilerDriver& driver,
                                                         uint32_t access_flags, uint32_t method_idx,
                                                         const art::DexFile& dex_file);
 
+extern "C" void compilerLLVMSetBitcodeFileName(art::CompilerDriver& driver,
+                                               std::string const& filename);
+
 
 class LLVMBackend : public CompilerBackend {
  public:
@@ -267,6 +273,15 @@
 
   bool isPortable() const { return true; }
 
+  void SetBitcodeFileName(std::string const& filename) {
+    typedef void (*SetBitcodeFileNameFn)(CompilerDriver&, std::string const&);
+
+    SetBitcodeFileNameFn set_bitcode_file_name =
+      reinterpret_cast<SetBitcodeFileNameFn>(compilerLLVMSetBitcodeFileName);
+
+    set_bitcode_file_name(*this, filename);
+  }
+
  private:
   DISALLOW_COPY_AND_ASSIGN(LLVMBackend);
 };