mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 07:14:30 +02:00
8059334: nsk/jvmti/scenarios/hotswap/HS201/hs201t001 fails with exit code 0 after timeout
Check if we are in "interp only" mode before returning an nm for an OSR request Reviewed-by: sspitsyn, dcubed, kvn
This commit is contained in:
parent
3c76c33dba
commit
5865d3062f
1 changed files with 8 additions and 0 deletions
|
@ -921,6 +921,14 @@ nmethod* InterpreterRuntime::frequency_counter_overflow(JavaThread* thread, addr
|
||||||
int bci = method->bci_from(last_frame.bcp());
|
int bci = method->bci_from(last_frame.bcp());
|
||||||
nm = method->lookup_osr_nmethod_for(bci, CompLevel_none, false);
|
nm = method->lookup_osr_nmethod_for(bci, CompLevel_none, false);
|
||||||
}
|
}
|
||||||
|
if (nm != NULL && thread->is_interp_only_mode()) {
|
||||||
|
// Normally we never get an nm if is_interp_only_mode() is true, because
|
||||||
|
// policy()->event has a check for this and won't compile the method when
|
||||||
|
// true. However, it's possible for is_interp_only_mode() to become true
|
||||||
|
// during the compilation. We don't want to return the nm in that case
|
||||||
|
// because we want to continue to execute interpreted.
|
||||||
|
nm = NULL;
|
||||||
|
}
|
||||||
#ifndef PRODUCT
|
#ifndef PRODUCT
|
||||||
if (TraceOnStackReplacement) {
|
if (TraceOnStackReplacement) {
|
||||||
if (nm != NULL) {
|
if (nm != NULL) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue