1 /* |
1 /* |
2 * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2010, 2019, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
194 task = next_task; |
194 task = next_task; |
195 } |
195 } |
196 |
196 |
197 if (max_task->comp_level() == CompLevel_full_profile && TieredStopAtLevel > CompLevel_full_profile |
197 if (max_task->comp_level() == CompLevel_full_profile && TieredStopAtLevel > CompLevel_full_profile |
198 && is_method_profiled(max_method)) { |
198 && is_method_profiled(max_method)) { |
|
199 |
|
200 if (CompileBroker::compilation_is_complete(max_method, max_task->osr_bci(), CompLevel_limited_profile)) { |
|
201 if (PrintTieredEvents) { |
|
202 print_event(REMOVE_FROM_QUEUE, max_method, max_method, max_task->osr_bci(), (CompLevel)max_task->comp_level()); |
|
203 } |
|
204 compile_queue->remove_and_mark_stale(max_task); |
|
205 max_method->clear_queued_for_compilation(); |
|
206 return NULL; |
|
207 } |
|
208 |
199 max_task->set_comp_level(CompLevel_limited_profile); |
209 max_task->set_comp_level(CompLevel_limited_profile); |
200 if (PrintTieredEvents) { |
210 if (PrintTieredEvents) { |
201 print_event(UPDATE_IN_QUEUE, max_method, max_method, max_task->osr_bci(), (CompLevel)max_task->comp_level()); |
211 print_event(UPDATE_IN_QUEUE, max_method, max_method, max_task->osr_bci(), (CompLevel)max_task->comp_level()); |
202 } |
212 } |
203 } |
213 } |