summaryrefslogtreecommitdiff
path: root/runtime/runtime.cc
diff options
context:
space:
mode:
authorCalin Juravle <calin@google.com>2016-03-23 17:58:42 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2016-03-23 17:58:42 +0000
commit2e89e901b9f303549f3ba64e45d87292e9c986c8 (patch)
tree7fe88a48f7ab37f96152eeea1e2991f183bc5705 /runtime/runtime.cc
parent541261e66273857c638677424215de91f3d65a6f (diff)
parent40c68c690546e8c15dcb2de6137e72c74f573a75 (diff)
Merge "Fix dex2oat/oatdump cross-compilation."
Diffstat (limited to 'runtime/runtime.cc')
-rw-r--r--runtime/runtime.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/runtime/runtime.cc b/runtime/runtime.cc
index 941217f24d..512e8b8253 100644
--- a/runtime/runtime.cc
+++ b/runtime/runtime.cc
@@ -1606,8 +1606,8 @@ ArtMethod* Runtime::CreateImtConflictMethod(LinearAlloc* linear_alloc) {
method->SetEntryPointFromQuickCompiledCodePtrSize(nullptr, pointer_size);
} else {
method->SetEntryPointFromQuickCompiledCode(GetQuickImtConflictStub());
+ method->SetImtConflictTable(reinterpret_cast<ImtConflictTable*>(&empty_entry));
}
- method->SetImtConflictTable(reinterpret_cast<ImtConflictTable*>(&empty_entry));
return method;
}
@@ -1615,7 +1615,9 @@ void Runtime::SetImtConflictMethod(ArtMethod* method) {
CHECK(method != nullptr);
CHECK(method->IsRuntimeMethod());
imt_conflict_method_ = method;
- method->SetImtConflictTable(reinterpret_cast<ImtConflictTable*>(&empty_entry));
+ if (!IsAotCompiler()) {
+ method->SetImtConflictTable(reinterpret_cast<ImtConflictTable*>(&empty_entry));
+ }
}
ArtMethod* Runtime::CreateResolutionMethod() {
@@ -1933,7 +1935,9 @@ void Runtime::SetImtUnimplementedMethod(ArtMethod* method) {
CHECK(method != nullptr);
CHECK(method->IsRuntimeMethod());
imt_unimplemented_method_ = method;
- method->SetImtConflictTable(reinterpret_cast<ImtConflictTable*>(&empty_entry));
+ if (!IsAotCompiler()) {
+ method->SetImtConflictTable(reinterpret_cast<ImtConflictTable*>(&empty_entry));
+ }
}
bool Runtime::IsVerificationEnabled() const {