JDK-8062477 : Add speculative type profiling for parameters of Class.cast() and Class.isInstance() methods
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 9,10
  • Priority: P3
  • Status: Open
  • Resolution: Unresolved
  • OS: generic
  • CPU: generic
  • Submitted: 2014-10-29
  • Updated: 2019-10-12
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
tbdUnresolved
Related Reports
Relates :  
Description
Currently, by default, only jsr292 related methods have speculative type profiling for parameters, arguments, return.
But Class.cast() and Class.isInstance() methods are used by jsr292 code very frequent.
8054492 changes added instrinsic for Class.cast() and we had intrinsic for Class.isInstance().
These intrinsics call gen_checkast() and gen_instanceof() which use speculative types from bytecode profiling.
It could be useful to pass ciProfileData data generated from parameters types profiling to this methods when they are called from intrinsics.