diff options
| author | 2014-02-10 21:50:25 +0000 | |
|---|---|---|
| committer | 2014-02-10 21:50:25 +0000 | |
| commit | 35d7e414134bd9f3d39e018a756617b21d49c877 (patch) | |
| tree | 175f04bb11570679deed2c1195c746e71cabcab2 /compiler/driver/compiler_driver.cc | |
| parent | 6c92e7d619986ecb02a379068bd6623cd5852cea (diff) | |
| parent | 55d0eac918321e0525f6e6491f36a80977e0d416 (diff) | |
Merge "Support Direct Method/Type access for X86"
Diffstat (limited to 'compiler/driver/compiler_driver.cc')
| -rw-r--r-- | compiler/driver/compiler_driver.cc | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc index 5b9d66c21d..74c4c2fb96 100644 --- a/compiler/driver/compiler_driver.cc +++ b/compiler/driver/compiler_driver.cc @@ -365,7 +365,7 @@ CompilerDriver::CompilerDriver(VerificationResults* verification_results, jni_compiler_(NULL), compiler_enable_auto_elf_loading_(NULL), compiler_get_method_code_addr_(NULL), - support_boot_image_fixup_(instruction_set == kThumb2), + support_boot_image_fixup_(instruction_set != kMips), dedupe_code_("dedupe code"), dedupe_mapping_table_("dedupe mapping table"), dedupe_vmap_table_("dedupe vmap table"), @@ -1396,6 +1396,24 @@ void CompilerDriver::AddCodePatch(const DexFile* dex_file, target_invoke_type, literal_offset)); } +void CompilerDriver::AddRelativeCodePatch(const DexFile* dex_file, + uint16_t referrer_class_def_idx, + uint32_t referrer_method_idx, + InvokeType referrer_invoke_type, + uint32_t target_method_idx, + InvokeType target_invoke_type, + size_t literal_offset, + int32_t pc_relative_offset) { + MutexLock mu(Thread::Current(), compiled_methods_lock_); + code_to_patch_.push_back(new RelativeCallPatchInformation(dex_file, + referrer_class_def_idx, + referrer_method_idx, + referrer_invoke_type, + target_method_idx, + target_invoke_type, + literal_offset, + pc_relative_offset)); +} void CompilerDriver::AddMethodPatch(const DexFile* dex_file, uint16_t referrer_class_def_idx, uint32_t referrer_method_idx, |