< prev index next >
src/share/vm/classfile/vmSymbols.cpp
Print this page
*** 449,470 ****
// -XX:-InlineNatives disables nearly all intrinsics except the ones listed in
// the following switch statement.
if (!InlineNatives) {
switch (id) {
! case vmIntrinsics::_indexOf:
! case vmIntrinsics::_compareTo:
! case vmIntrinsics::_equals:
case vmIntrinsics::_equalsC:
case vmIntrinsics::_getAndAddInt:
case vmIntrinsics::_getAndAddLong:
case vmIntrinsics::_getAndSetInt:
case vmIntrinsics::_getAndSetLong:
case vmIntrinsics::_getAndSetObject:
case vmIntrinsics::_loadFence:
case vmIntrinsics::_storeFence:
case vmIntrinsics::_fullFence:
case vmIntrinsics::_Reference_get:
break;
default:
return true;
}
--- 449,487 ----
// -XX:-InlineNatives disables nearly all intrinsics except the ones listed in
// the following switch statement.
if (!InlineNatives) {
switch (id) {
! case vmIntrinsics::_indexOfL:
! case vmIntrinsics::_indexOfU:
! case vmIntrinsics::_indexOfUL:
! case vmIntrinsics::_indexOfIL:
! case vmIntrinsics::_indexOfIU:
! case vmIntrinsics::_indexOfIUL:
! case vmIntrinsics::_indexOfU_char:
! case vmIntrinsics::_compareToL:
! case vmIntrinsics::_compareToU:
! case vmIntrinsics::_compareToLU:
! case vmIntrinsics::_compareToUL:
! case vmIntrinsics::_equalsL:
! case vmIntrinsics::_equalsU:
case vmIntrinsics::_equalsC:
+ case vmIntrinsics::_getCharStringU:
+ case vmIntrinsics::_putCharStringU:
+ case vmIntrinsics::_compressStringC:
+ case vmIntrinsics::_compressStringB:
+ case vmIntrinsics::_inflateStringC:
+ case vmIntrinsics::_inflateStringB:
case vmIntrinsics::_getAndAddInt:
case vmIntrinsics::_getAndAddLong:
case vmIntrinsics::_getAndSetInt:
case vmIntrinsics::_getAndSetLong:
case vmIntrinsics::_getAndSetObject:
case vmIntrinsics::_loadFence:
case vmIntrinsics::_storeFence:
case vmIntrinsics::_fullFence:
+ case vmIntrinsics::_hasNegatives:
case vmIntrinsics::_Reference_get:
break;
default:
return true;
}
*** 643,665 ****
case vmIntrinsics::_copyOfRange:
// These intrinsics use both the objectcopy and the arraycopy
// intrinsic mechanism.
if (!InlineObjectCopy || !InlineArrayCopy) return true;
break;
! case vmIntrinsics::_compareTo:
if (!SpecialStringCompareTo) return true;
break;
! case vmIntrinsics::_indexOf:
if (!SpecialStringIndexOf) return true;
break;
! case vmIntrinsics::_equals:
if (!SpecialStringEquals) return true;
break;
case vmIntrinsics::_equalsC:
if (!SpecialArraysEquals) return true;
break;
case vmIntrinsics::_encodeISOArray:
if (!SpecialEncodeISOArray) return true;
break;
case vmIntrinsics::_getCallerClass:
if (!InlineReflectionGetCallerClass) return true;
break;
--- 660,694 ----
case vmIntrinsics::_copyOfRange:
// These intrinsics use both the objectcopy and the arraycopy
// intrinsic mechanism.
if (!InlineObjectCopy || !InlineArrayCopy) return true;
break;
! case vmIntrinsics::_compareToL:
! case vmIntrinsics::_compareToU:
! case vmIntrinsics::_compareToLU:
! case vmIntrinsics::_compareToUL:
if (!SpecialStringCompareTo) return true;
break;
! case vmIntrinsics::_indexOfL:
! case vmIntrinsics::_indexOfU:
! case vmIntrinsics::_indexOfUL:
! case vmIntrinsics::_indexOfIL:
! case vmIntrinsics::_indexOfIU:
! case vmIntrinsics::_indexOfIUL:
! case vmIntrinsics::_indexOfU_char:
if (!SpecialStringIndexOf) return true;
break;
! case vmIntrinsics::_equalsL:
! case vmIntrinsics::_equalsU:
if (!SpecialStringEquals) return true;
break;
+ case vmIntrinsics::_equalsB:
case vmIntrinsics::_equalsC:
if (!SpecialArraysEquals) return true;
break;
case vmIntrinsics::_encodeISOArray:
+ case vmIntrinsics::_encodeByteISOArray:
if (!SpecialEncodeISOArray) return true;
break;
case vmIntrinsics::_getCallerClass:
if (!InlineReflectionGetCallerClass) return true;
break;
*** 690,699 ****
--- 719,734 ----
case vmIntrinsics::_negateExactL:
case vmIntrinsics::_subtractExactI:
case vmIntrinsics::_subtractExactL:
if (!UseMathExactIntrinsics || !InlineMathNatives) return true;
break;
+ case vmIntrinsics::_getCharStringU:
+ case vmIntrinsics::_putCharStringU:
+ // Until JDK-8138651 is fixed, we have to rely on a special flag to
+ // disable these intrinsics for experiments.
+ if (!StringCharIntrinsics) return true;
+ break;
#endif // COMPILER2
default:
return false;
}
< prev index next >