Currently we check VM's flags, directives and JIT compiler's support when we generate intrinsics.
We have *product* VM flags for most intrinsics and set them in VM based on HW support.
But not all intrinsics have such flags and it is not scalable to add new *product* flag for each new intrinsic.
Also we have -XX:DisableIntrinsic=<id> and -XX:ControlIntrinsic=<id> flags to control intrinsics from command line. We don't need specific flags for that.
I propose to add new VM_Version::is_intrinsic_supported(id) method to check HW/platform support for an intrinsic without adding a new flag.
We have *product* VM flags for most intrinsics and set them in VM based on HW support.
But not all intrinsics have such flags and it is not scalable to add new *product* flag for each new intrinsic.
Also we have -XX:DisableIntrinsic=<id> and -XX:ControlIntrinsic=<id> flags to control intrinsics from command line. We don't need specific flags for that.
I propose to add new VM_Version::is_intrinsic_supported(id) method to check HW/platform support for an intrinsic without adding a new flag.
- relates to
-
JDK-8304267 JDK-8303415 missed change in Zero Interpreter
-
- Resolved
-
-
JDK-8303864 Replace global intrinsics flags with VM_Version::is_intrinsic_supported(id)
-
- Open
-