[14] RFR (S): 8234923: Missed call_site_target nmethod dependency for non-fully initialized ConstantCallSite instance
Vladimir Ivanov
vladimir.x.ivanov at oracle.com
Fri Nov 29 15:55:43 UTC 2019
http://cr.openjdk.java.net/~vlivanov/8234923/webrev.00/
https://bugs.openjdk.java.net/browse/JDK-8234923
The fix for 8234401 is incomplete: though it does notify the JVM about
call site target update (by calling setTargetNormal [2]), on JVM side
JITs skip nmethod dependencies for ConstantCallSites irrespective of
whether they are fully initialized or not. So, affected nmethods aren't
invalidated.
The fix is to make JITs aware about initialization status of
ConstantCallSite instance by inspecting its isFrozen field and register
proper nmethod dependency if a CallSite is being initialized.
Testing: tier1-6
Best regards,
Vladimir Ivanov
[1]
https://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2019-November/036019.html
[2] https://hg.openjdk.java.net/jdk/jdk/rev/a6e25566cb56#l1.26
More information about the hotspot-compiler-dev
mailing list