8191339: [JVMCI] BigInteger compiler intrinsics on Graal

Reviewed-by: kvn
This commit is contained in:
Patric Hedlin 2017-12-06 13:07:21 +01:00
parent 8f4456e77a
commit 2edd37a6ac
2 changed files with 18 additions and 5 deletions
src/hotspot

@ -1042,9 +1042,7 @@ void VM_Version::get_processor_features() {
} }
} }
#endif // COMPILER2 && ASSERT #endif // COMPILER2 && ASSERT
#endif // COMPILER2_OR_JVMCI
#ifdef COMPILER2
#ifdef _LP64 #ifdef _LP64
if (FLAG_IS_DEFAULT(UseMultiplyToLenIntrinsic)) { if (FLAG_IS_DEFAULT(UseMultiplyToLenIntrinsic)) {
UseMultiplyToLenIntrinsic = true; UseMultiplyToLenIntrinsic = true;
@ -1092,8 +1090,8 @@ void VM_Version::get_processor_features() {
} }
FLAG_SET_DEFAULT(UseMulAddIntrinsic, false); FLAG_SET_DEFAULT(UseMulAddIntrinsic, false);
} }
#endif #endif // _LP64
#endif // COMPILER2 #endif // COMPILER2_OR_JVMCI
// On new cpus instructions which update whole XMM register should be used // On new cpus instructions which update whole XMM register should be used
// to prevent partial register stall due to dependencies on high half. // to prevent partial register stall due to dependencies on high half.

@ -98,7 +98,22 @@
"Number of methods to record in call profile") \ "Number of methods to record in call profile") \
\ \
develop(bool, TraceUncollectedSpeculations, false, \ develop(bool, TraceUncollectedSpeculations, false, \
"Print message when a failed speculation was not collected") "Print message when a failed speculation was not collected") \
\
NOT_COMPILER2(diagnostic(bool, UseMultiplyToLenIntrinsic, false, \
"Enables intrinsification of BigInteger.multiplyToLen()")) \
\
NOT_COMPILER2(diagnostic(bool, UseSquareToLenIntrinsic, false, \
"Enables intrinsification of BigInteger.squareToLen()")) \
\
NOT_COMPILER2(diagnostic(bool, UseMulAddIntrinsic, false, \
"Enables intrinsification of BigInteger.mulAdd()")) \
\
NOT_COMPILER2(diagnostic(bool, UseMontgomeryMultiplyIntrinsic, false, \
"Enables intrinsification of BigInteger.montgomeryMultiply()")) \
\
NOT_COMPILER2(diagnostic(bool, UseMontgomerySquareIntrinsic, false, \
"Enables intrinsification of BigInteger.montgomerySquare()"))
// Read default values for JVMCI globals // Read default values for JVMCI globals