diff options
author | Brian Carlstrom <bdc@google.com> | 2014-03-06 02:10:21 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2014-03-06 02:10:22 +0000 |
commit | 359597ee8c0667a7d2c0b74dcbb0f90bb6059bae (patch) | |
tree | 251da13911288d0a89ed1cba316bd94fc1f496e0 /compiler | |
parent | e26baffe7f9e2a54f276f5c65e48454e413683ba (diff) | |
parent | 5e754d88c73f1f1fafbbf87d564df000d5a0a12c (diff) | |
download | art-359597ee8c0667a7d2c0b74dcbb0f90bb6059bae.zip art-359597ee8c0667a7d2c0b74dcbb0f90bb6059bae.tar.gz art-359597ee8c0667a7d2c0b74dcbb0f90bb6059bae.tar.bz2 |
Merge "Revert "Revert "Avoid compiling monster methods in boot image"""
Diffstat (limited to 'compiler')
-rw-r--r-- | compiler/image_writer.cc | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/compiler/image_writer.cc b/compiler/image_writer.cc index e3114eb..74be604 100644 --- a/compiler/image_writer.cc +++ b/compiler/image_writer.cc @@ -816,12 +816,14 @@ void ImageWriter::PatchOatCodeAndMethods() { uintptr_t value = quick_code - patch_location + patch->RelativeOffset(); SetPatchLocation(patch, value); } else { - // generic JNI, not interpreter bridge from GetQuickOatCodeFor(). - if (target->IsNative() && - quick_code == reinterpret_cast<uintptr_t>(GetQuickToInterpreterBridge())) { - code_offset = quick_generic_jni_trampoline_offset_; + if (quick_code == reinterpret_cast<uintptr_t>(GetQuickToInterpreterBridge())) { + if (target->IsNative()) { + // generic JNI, not interpreter bridge from GetQuickOatCodeFor(). + code_offset = quick_generic_jni_trampoline_offset_; + } else { + code_offset = quick_to_interpreter_bridge_offset_; + } } - SetPatchLocation(patch, PointerToLowMemUInt32(GetOatAddress(code_offset))); } } |