diff options
author | Brian Carlstrom <bdc@google.com> | 2014-03-05 10:59:04 -0800 |
---|---|---|
committer | Brian Carlstrom <bdc@google.com> | 2014-03-05 15:38:24 -0800 |
commit | 5e754d88c73f1f1fafbbf87d564df000d5a0a12c (patch) | |
tree | 97f90137dfd596aac487ba073f8623263b1522c6 /compiler/image_writer.cc | |
parent | 449fa6e44b220e48dee20f569b46161f3a056add (diff) | |
download | art-5e754d88c73f1f1fafbbf87d564df000d5a0a12c.zip art-5e754d88c73f1f1fafbbf87d564df000d5a0a12c.tar.gz art-5e754d88c73f1f1fafbbf87d564df000d5a0a12c.tar.bz2 |
Revert "Revert "Avoid compiling monster methods in boot image""
This reverts commit f679fab9be8905505d26a62bea257641f0bb0168.
(cherry picked from commit 9d0bdfe63bec5a43d7668d9094a52caf77b6ed53)
Change-Id: I72af1d44483edbd2a5f2e6b678e43f740d4613fd
Diffstat (limited to 'compiler/image_writer.cc')
-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))); } } |