mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-17 09:34:38 +02:00
8276217: Harmonize StrictMath intrinsics handling
Reviewed-by: aph, kvn
This commit is contained in:
parent
fb0be81f01
commit
9eadcbb47e
15 changed files with 98 additions and 45 deletions
|
@ -1645,21 +1645,6 @@ void Method::init_intrinsic_id(vmSymbolID klass_id) {
|
|||
|
||||
// A few slightly irregular cases:
|
||||
switch (klass_id) {
|
||||
case VM_SYMBOL_ENUM_NAME(java_lang_StrictMath):
|
||||
// Second chance: check in regular Math.
|
||||
switch (name_id) {
|
||||
case VM_SYMBOL_ENUM_NAME(min_name):
|
||||
case VM_SYMBOL_ENUM_NAME(max_name):
|
||||
case VM_SYMBOL_ENUM_NAME(sqrt_name):
|
||||
// pretend it is the corresponding method in the non-strict class:
|
||||
klass_id = VM_SYMBOL_ENUM_NAME(java_lang_Math);
|
||||
id = vmIntrinsics::find_id(klass_id, name_id, sig_id, flags);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
// Signature-polymorphic methods: MethodHandle.invoke*, InvokeDynamic.*., VarHandle
|
||||
case VM_SYMBOL_ENUM_NAME(java_lang_invoke_MethodHandle):
|
||||
case VM_SYMBOL_ENUM_NAME(java_lang_invoke_VarHandle):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue