Revert "Revert "Revert "Use trampolines for calls to helpers"""

This reverts commit f9487c039efb4112616d438593a2ab02792e0304.

Change-Id: Id48a4aae4ecce73db468587967968a3f7618b700
diff --git a/compiler/compiled_method.h b/compiler/compiled_method.h
index d9edc6b..90ae6ee 100644
--- a/compiler/compiled_method.h
+++ b/compiler/compiled_method.h
@@ -23,7 +23,6 @@
 #include "instruction_set.h"
 #include "utils.h"
 #include "UniquePtr.h"
-#include "final_relocations.h"
 
 namespace llvm {
   class Function;
@@ -32,14 +31,12 @@
 namespace art {
 
 class CompilerDriver;
-class OatWriter;
 
 class CompiledCode {
  public:
   // For Quick to supply an code blob
   CompiledCode(CompilerDriver* compiler_driver, InstructionSet instruction_set,
-               const std::vector<uint8_t>& quick_code,
-               const FinalRelocations* relocations);
+               const std::vector<uint8_t>& quick_code);
 
   // For Portable to supply an ELF object
   CompiledCode(CompilerDriver* compiler_driver, InstructionSet instruction_set,
@@ -81,13 +78,6 @@
   const std::vector<uint32_t>& GetOatdataOffsetsToCompliledCodeOffset() const;
   void AddOatdataOffsetToCompliledCodeOffset(uint32_t offset);
 
-  // Apply all the final relocations to the quick code sequence.
-  void ApplyFinalRelocations(const OatWriter *writer, uint32_t address) {
-    if (final_relocations_.get() != nullptr) {
-      final_relocations_->Apply(&(*quick_code_)[0], writer, address);
-    }
-  }
-
  private:
   CompilerDriver* const compiler_driver_;
 
@@ -107,10 +97,6 @@
   // OatWriter and then used by the ElfWriter to add relocations so
   // that MCLinker can update the values to the location in the linked .so.
   std::vector<uint32_t> oatdata_offsets_to_compiled_code_offset_;
-
-  // Set of relocations to apply as the final pass.  This happens
-  // only when the the final oat file addresses are known.
-  UniquePtr<const FinalRelocations> final_relocations_;
 };
 
 class CompiledMethod : public CompiledCode {
@@ -125,8 +111,7 @@
                  const std::vector<uint8_t>& mapping_table,
                  const std::vector<uint8_t>& vmap_table,
                  const std::vector<uint8_t>& native_gc_map,
-                 const std::vector<uint8_t>* cfi_info,
-                 const FinalRelocations* relocations);
+                 const std::vector<uint8_t>* cfi_info);
 
   // Constructs a CompiledMethod for the QuickJniCompiler.
   CompiledMethod(CompilerDriver& driver,