summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--compiler/image_writer.cc12
-rw-r--r--dex2oat/dex2oat.cc2
2 files changed, 8 insertions, 6 deletions
diff --git a/compiler/image_writer.cc b/compiler/image_writer.cc
index e3114eb80d..74be604c31 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)));
}
}
diff --git a/dex2oat/dex2oat.cc b/dex2oat/dex2oat.cc
index afa849580c..ec2713afbf 100644
--- a/dex2oat/dex2oat.cc
+++ b/dex2oat/dex2oat.cc
@@ -993,7 +993,7 @@ static int dex2oat(int argc, char** argv) {
if (compiler_filter_string == NULL) {
if (image) {
- compiler_filter_string = "everything";
+ compiler_filter_string = "speed";
} else {
#if ART_SMALL_MODE
compiler_filter_string = "interpret-only";