4077 StubRoutines::_cipherBlockChaining_decryptAESCrypt = generate_cipherBlockChaining_decryptAESCrypt_Parallel();
4078 }
4079
4080 // Safefetch stubs.
4081 generate_safefetch("SafeFetch32", sizeof(int), &StubRoutines::_safefetch32_entry,
4082 &StubRoutines::_safefetch32_fault_pc,
4083 &StubRoutines::_safefetch32_continuation_pc);
4084 generate_safefetch("SafeFetchN", sizeof(intptr_t), &StubRoutines::_safefetchN_entry,
4085 &StubRoutines::_safefetchN_fault_pc,
4086 &StubRoutines::_safefetchN_continuation_pc);
4087 #ifdef COMPILER2
4088 if (UseMultiplyToLenIntrinsic) {
4089 StubRoutines::_multiplyToLen = generate_multiplyToLen();
4090 }
4091 if (UseSquareToLenIntrinsic) {
4092 StubRoutines::_squareToLen = generate_squareToLen();
4093 }
4094 if (UseMulAddIntrinsic) {
4095 StubRoutines::_mulAdd = generate_mulAdd();
4096 }
4097 #endif
4098 }
4099
4100 public:
4101 StubGenerator(CodeBuffer* code, bool all) : StubCodeGenerator(code) {
4102 if (all) {
4103 generate_all();
4104 } else {
4105 generate_initial();
4106 }
4107 }
4108 }; // end class declaration
4109
4110 void StubGenerator_generate(CodeBuffer* code, bool all) {
4111 StubGenerator g(code, all);
4112 }
|
4077 StubRoutines::_cipherBlockChaining_decryptAESCrypt = generate_cipherBlockChaining_decryptAESCrypt_Parallel();
4078 }
4079
4080 // Safefetch stubs.
4081 generate_safefetch("SafeFetch32", sizeof(int), &StubRoutines::_safefetch32_entry,
4082 &StubRoutines::_safefetch32_fault_pc,
4083 &StubRoutines::_safefetch32_continuation_pc);
4084 generate_safefetch("SafeFetchN", sizeof(intptr_t), &StubRoutines::_safefetchN_entry,
4085 &StubRoutines::_safefetchN_fault_pc,
4086 &StubRoutines::_safefetchN_continuation_pc);
4087 #ifdef COMPILER2
4088 if (UseMultiplyToLenIntrinsic) {
4089 StubRoutines::_multiplyToLen = generate_multiplyToLen();
4090 }
4091 if (UseSquareToLenIntrinsic) {
4092 StubRoutines::_squareToLen = generate_squareToLen();
4093 }
4094 if (UseMulAddIntrinsic) {
4095 StubRoutines::_mulAdd = generate_mulAdd();
4096 }
4097
4098 #ifndef _WINDOWS
4099 if (UseMontgomeryMultiplyIntrinsic) {
4100 StubRoutines::_montgomeryMultiply
4101 = CAST_FROM_FN_PTR(address, SharedRuntime::montgomery_multiply);
4102 }
4103 if (UseMontgomerySquareIntrinsic) {
4104 StubRoutines::_montgomerySquare
4105 = CAST_FROM_FN_PTR(address, SharedRuntime::montgomery_square);
4106 }
4107 #endif // WINDOWS
4108 #endif // COMPILER2
4109 }
4110
4111 public:
4112 StubGenerator(CodeBuffer* code, bool all) : StubCodeGenerator(code) {
4113 if (all) {
4114 generate_all();
4115 } else {
4116 generate_initial();
4117 }
4118 }
4119 }; // end class declaration
4120
4121 void StubGenerator_generate(CodeBuffer* code, bool all) {
4122 StubGenerator g(code, all);
4123 }
|