Details
-
Enhancement
-
Resolution: Fixed
-
P4
-
11, 12, 13
-
b04
Backports
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8226502 | 11.0.5-oracle | Martin Doerr | P4 | Resolved | Fixed | b02 |
JDK-8223458 | 11.0.4 | Martin Doerr | P4 | Resolved | Fixed | b02 |
Description
JIT compilers use ciMethod::liveness_at_bci to determine which local values are live at a certain bci. This function triggers computation of liveness information if not yet available. Then it retrieves the information from the existing data structures.
When at least one of the JVMTI capabilities "can_access_local_variables" or "can_pop_frame" are enabled, this retrieved information gets completely overwritten to keep all local values alive. So the previous steps were completely unnecessary.
This change disables this unneccessary computation and thus improves C2 performance.
When at least one of the JVMTI capabilities "can_access_local_variables" or "can_pop_frame" are enabled, this retrieved information gets completely overwritten to keep all local values alive. So the previous steps were completely unnecessary.
This change disables this unneccessary computation and thus improves C2 performance.
Attachments
Issue Links
- backported by
-
JDK-8223458 Unnecessary liveness computation with JVMTI
- Resolved
-
JDK-8226502 Unnecessary liveness computation with JVMTI
- Resolved