mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 15:24:43 +02: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
1 changed files with 4 additions and 2 deletions
|
@ -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
|
||||
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…
Add table
Add a link
Reference in a new issue