From f9487c039efb4112616d438593a2ab02792e0304 Mon Sep 17 00:00:00 2001 From: Dave Allison Date: Tue, 8 Apr 2014 23:08:12 +0000 Subject: Revert "Revert "Use trampolines for calls to helpers"" This reverts commit 081f73e888b3c246cf7635db37b7f1105cf1a2ff. Change-Id: Ibd777f8ce73cf8ed6c4cb81d50bf6437ac28cb61 Conflicts: compiler/dex/quick/mir_to_lir.h --- compiler/compiled_method.cc | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'compiler/compiled_method.cc') diff --git a/compiler/compiled_method.cc b/compiler/compiled_method.cc index 8e013c1ece..4eb1f7a7ce 100644 --- a/compiler/compiled_method.cc +++ b/compiler/compiled_method.cc @@ -16,20 +16,23 @@ #include "compiled_method.h" #include "driver/compiler_driver.h" +#include "oat_writer.h" +#include "dex/compiler_ir.h" namespace art { CompiledCode::CompiledCode(CompilerDriver* compiler_driver, InstructionSet instruction_set, - const std::vector& quick_code) + const std::vector& quick_code, + const FinalRelocations* relocs) : compiler_driver_(compiler_driver), instruction_set_(instruction_set), - portable_code_(nullptr), quick_code_(nullptr) { + portable_code_(nullptr), quick_code_(nullptr), final_relocations_(relocs) { SetCode(&quick_code, nullptr); } CompiledCode::CompiledCode(CompilerDriver* compiler_driver, InstructionSet instruction_set, const std::string& elf_object, const std::string& symbol) : compiler_driver_(compiler_driver), instruction_set_(instruction_set), - portable_code_(nullptr), quick_code_(nullptr), symbol_(symbol) { + portable_code_(nullptr), quick_code_(nullptr), symbol_(symbol), final_relocations_(nullptr) { CHECK_NE(elf_object.size(), 0U); CHECK_NE(symbol.size(), 0U); std::vector temp_code(elf_object.size()); @@ -161,8 +164,9 @@ CompiledMethod::CompiledMethod(CompilerDriver& driver, const std::vector& mapping_table, const std::vector& vmap_table, const std::vector& native_gc_map, - const std::vector* cfi_info) - : CompiledCode(&driver, instruction_set, quick_code), frame_size_in_bytes_(frame_size_in_bytes), + const std::vector* cfi_info, + const FinalRelocations* relocs) + : CompiledCode(&driver, instruction_set, quick_code, relocs), frame_size_in_bytes_(frame_size_in_bytes), core_spill_mask_(core_spill_mask), fp_spill_mask_(fp_spill_mask), mapping_table_(driver.DeduplicateMappingTable(mapping_table)), vmap_table_(driver.DeduplicateVMapTable(vmap_table)), @@ -176,7 +180,7 @@ CompiledMethod::CompiledMethod(CompilerDriver& driver, const size_t frame_size_in_bytes, const uint32_t core_spill_mask, const uint32_t fp_spill_mask) - : CompiledCode(&driver, instruction_set, code), + : CompiledCode(&driver, instruction_set, code, nullptr), frame_size_in_bytes_(frame_size_in_bytes), core_spill_mask_(core_spill_mask), fp_spill_mask_(fp_spill_mask), mapping_table_(driver.DeduplicateMappingTable(std::vector())), @@ -205,5 +209,4 @@ CompiledMethod::CompiledMethod(CompilerDriver& driver, InstructionSet instructio vmap_table_ = driver.DeduplicateVMapTable(std::vector()); gc_map_ = driver.DeduplicateGCMap(std::vector()); } - } // namespace art -- cgit v1.2.3