diff options
| author | 2018-06-08 09:22:55 -0700 | |
|---|---|---|
| committer | 2018-06-13 10:32:17 -0700 | |
| commit | c97946ca7e99eeb53388d3d4d4577705f5537671 (patch) | |
| tree | f24e0ab43c61546f23e4c3f06723b7ed34cec904 | |
| parent | 6cae5ea222ba256b0ade1e18e37a0f49e952c57c (diff) | |
Allow jumping back to interpreter in instrumentation entrypoint.
We were incorrectly asserting that all non-deoptimized methods had
valid (and findable) compiled code available. With the JIT this is no
longer true.
NB Several additional patches are required for the instrumentation
trampolines to actually work correctly in all instances.
Test: ./test.py --host
Test: ./test/testrunner/testrunner.py --host --runtime-option=-Xplugin:libtracefast-trampolined.so
Change-Id: I069957a63dc36abaadd24063099c0d9e279f1884
| -rw-r--r-- | runtime/entrypoints/quick/quick_trampoline_entrypoints.cc | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/runtime/entrypoints/quick/quick_trampoline_entrypoints.cc b/runtime/entrypoints/quick/quick_trampoline_entrypoints.cc index dc89c27685..3ccfa556f1 100644 --- a/runtime/entrypoints/quick/quick_trampoline_entrypoints.cc +++ b/runtime/entrypoints/quick/quick_trampoline_entrypoints.cc @@ -1109,7 +1109,6 @@ extern "C" const void* artInstrumentationMethodEntryFromCode(ArtMethod* method, result = GetQuickToInterpreterBridge(); } else { result = instrumentation->GetQuickCodeFor(method, kRuntimePointerSize); - DCHECK(!Runtime::Current()->GetClassLinker()->IsQuickToInterpreterBridge(result)); } bool interpreter_entry = (result == GetQuickToInterpreterBridge()); |