4120 StubRoutines::_cipherBlockChaining_decryptAESCrypt = generate_cipherBlockChaining_decryptAESCrypt_Parallel();
4121 }
4122
4123 // Safefetch stubs.
4124 generate_safefetch("SafeFetch32", sizeof(int), &StubRoutines::_safefetch32_entry,
4125 &StubRoutines::_safefetch32_fault_pc,
4126 &StubRoutines::_safefetch32_continuation_pc);
4127 generate_safefetch("SafeFetchN", sizeof(intptr_t), &StubRoutines::_safefetchN_entry,
4128 &StubRoutines::_safefetchN_fault_pc,
4129 &StubRoutines::_safefetchN_continuation_pc);
4130 #ifdef COMPILER2
4131 if (UseMultiplyToLenIntrinsic) {
4132 StubRoutines::_multiplyToLen = generate_multiplyToLen();
4133 }
4134 if (UseSquareToLenIntrinsic) {
4135 StubRoutines::_squareToLen = generate_squareToLen();
4136 }
4137 if (UseMulAddIntrinsic) {
4138 StubRoutines::_mulAdd = generate_mulAdd();
4139 }
4140 #endif
4141 }
4142
4143 public:
4144 StubGenerator(CodeBuffer* code, bool all) : StubCodeGenerator(code) {
4145 if (all) {
4146 generate_all();
4147 } else {
4148 generate_initial();
4149 }
4150 }
4151 }; // end class declaration
4152
4153 void StubGenerator_generate(CodeBuffer* code, bool all) {
4154 StubGenerator g(code, all);
4155 }
|
4120 StubRoutines::_cipherBlockChaining_decryptAESCrypt = generate_cipherBlockChaining_decryptAESCrypt_Parallel();
4121 }
4122
4123 // Safefetch stubs.
4124 generate_safefetch("SafeFetch32", sizeof(int), &StubRoutines::_safefetch32_entry,
4125 &StubRoutines::_safefetch32_fault_pc,
4126 &StubRoutines::_safefetch32_continuation_pc);
4127 generate_safefetch("SafeFetchN", sizeof(intptr_t), &StubRoutines::_safefetchN_entry,
4128 &StubRoutines::_safefetchN_fault_pc,
4129 &StubRoutines::_safefetchN_continuation_pc);
4130 #ifdef COMPILER2
4131 if (UseMultiplyToLenIntrinsic) {
4132 StubRoutines::_multiplyToLen = generate_multiplyToLen();
4133 }
4134 if (UseSquareToLenIntrinsic) {
4135 StubRoutines::_squareToLen = generate_squareToLen();
4136 }
4137 if (UseMulAddIntrinsic) {
4138 StubRoutines::_mulAdd = generate_mulAdd();
4139 }
4140
4141 #ifdef _WINDOWS
4142 if (UseMontgomeryMultiplyIntrinsic) {
4143 StubRoutines::_montgomeryMultiply
4144 = CAST_FROM_FN_PTR(address, SharedRuntime::montgomery_multiply);
4145 }
4146 if (UseMontgomerySquareIntrinsic) {
4147 StubRoutines::_montgomerySquare
4148 = CAST_FROM_FN_PTR(address, SharedRuntime::montgomery_square);
4149 }
4150 #endif // WINDOWS
4151 #endif // COMPILER2
4152 }
4153
4154 public:
4155 StubGenerator(CodeBuffer* code, bool all) : StubCodeGenerator(code) {
4156 if (all) {
4157 generate_all();
4158 } else {
4159 generate_initial();
4160 }
4161 }
4162 }; // end class declaration
4163
4164 void StubGenerator_generate(CodeBuffer* code, bool all) {
4165 StubGenerator g(code, all);
4166 }
|