diff options
author | 2016-04-14 15:00:33 +0100 | |
---|---|---|
committer | 2016-04-15 15:42:31 +0100 | |
commit | 71cd50fb67fa48667b0ab59aa436a582c04ba43d (patch) | |
tree | 9f99f187060b0ef3a118120db367555d8f757f0c /runtime/interpreter/interpreter.cc | |
parent | 9b863613454ee139370d24e65adb41fabe75d482 (diff) |
Add weight to compiled/interpreter transitions.
Also:
- Cleanup logging.
- Check ArtMethod status before adding compilation requests.
- Don't request osr compilation if we know AddSamples does not come
from a back edge.
Bug: 27865109
Change-Id: I84512f7d957b61ce2458360ed430adb151830278
Diffstat (limited to 'runtime/interpreter/interpreter.cc')
-rw-r--r-- | runtime/interpreter/interpreter.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/runtime/interpreter/interpreter.cc b/runtime/interpreter/interpreter.cc index a43278228c..97dbe5d219 100644 --- a/runtime/interpreter/interpreter.cc +++ b/runtime/interpreter/interpreter.cc @@ -292,7 +292,7 @@ static inline JValue Execute(Thread* self, const DexFile::CodeItem* code_item, // Pop the shadow frame before calling into compiled code. self->PopShadowFrame(); - ArtInterpreterToCompiledCodeBridge(self, code_item, &shadow_frame, &result); + ArtInterpreterToCompiledCodeBridge(self, nullptr, code_item, &shadow_frame, &result); // Push the shadow frame back as the caller will expect it. self->PushShadowFrame(&shadow_frame); @@ -535,6 +535,10 @@ JValue EnterInterpreterFromEntryPoint(Thread* self, const DexFile::CodeItem* cod return JValue(); } + jit::Jit* jit = Runtime::Current()->GetJit(); + if (jit != nullptr) { + jit->NotifyCompiledCodeToInterpreterTransition(self, shadow_frame->GetMethod()); + } return Execute(self, code_item, *shadow_frame, JValue()); } |