mirror of
https://github.com/openjdk/jdk.git
synced 2026-03-19 04:13:07 +00:00
8034188: OSR methods may not be recompiled at proper compilation level
Remove_osr_nmethod doesn't check that it is the correct method Reviewed-by: kvn, iveresov
This commit is contained in:
parent
94a86285a7
commit
cde5c5862b
@ -2711,7 +2711,7 @@ void InstanceKlass::remove_osr_nmethod(nmethod* n) {
|
||||
Method* m = n->method();
|
||||
// Search for match
|
||||
while(cur != NULL && cur != n) {
|
||||
if (TieredCompilation) {
|
||||
if (TieredCompilation && m == cur->method()) {
|
||||
// Find max level before n
|
||||
max_level = MAX2(max_level, cur->comp_level());
|
||||
}
|
||||
@ -2733,7 +2733,9 @@ void InstanceKlass::remove_osr_nmethod(nmethod* n) {
|
||||
cur = next;
|
||||
while (cur != NULL) {
|
||||
// Find max level after n
|
||||
max_level = MAX2(max_level, cur->comp_level());
|
||||
if (m == cur->method()) {
|
||||
max_level = MAX2(max_level, cur->comp_level());
|
||||
}
|
||||
cur = cur->osr_link();
|
||||
}
|
||||
m->set_highest_osr_comp_level(max_level);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user