5120 // fabricate a RuntimeStub internally.
5121 StubRoutines::_throw_AbstractMethodError_entry =
5122 generate_throw_exception("AbstractMethodError throw_exception",
5123 CAST_FROM_FN_PTR(address,
5124 SharedRuntime::
5125 throw_AbstractMethodError));
5126
5127 StubRoutines::_throw_IncompatibleClassChangeError_entry =
5128 generate_throw_exception("IncompatibleClassChangeError throw_exception",
5129 CAST_FROM_FN_PTR(address,
5130 SharedRuntime::
5131 throw_IncompatibleClassChangeError));
5132
5133 StubRoutines::_throw_NullPointerException_at_call_entry =
5134 generate_throw_exception("NullPointerException at call throw_exception",
5135 CAST_FROM_FN_PTR(address,
5136 SharedRuntime::
5137 throw_NullPointerException_at_call));
5138
5139 // entry points that are platform specific
5140 if (UseShenandoahGC && (ShenandoahWriteBarrier || ShenandoahStoreValWriteBarrier || ShenandoahStoreValEnqueueBarrier)) {
5141 StubRoutines::x86::_shenandoah_wb = generate_shenandoah_wb(false, true);
5142 StubRoutines::_shenandoah_wb_C = generate_shenandoah_wb(true, !ShenandoahWriteBarrierCsetTestInIR);
5143 }
5144 StubRoutines::x86::_f2i_fixup = generate_f2i_fixup();
5145 StubRoutines::x86::_f2l_fixup = generate_f2l_fixup();
5146 StubRoutines::x86::_d2i_fixup = generate_d2i_fixup();
5147 StubRoutines::x86::_d2l_fixup = generate_d2l_fixup();
5148
5149 StubRoutines::x86::_float_sign_mask = generate_fp_mask("float_sign_mask", 0x7FFFFFFF7FFFFFFF);
5150 StubRoutines::x86::_float_sign_flip = generate_fp_mask("float_sign_flip", 0x8000000080000000);
5151 StubRoutines::x86::_double_sign_mask = generate_fp_mask("double_sign_mask", 0x7FFFFFFFFFFFFFFF);
5152 StubRoutines::x86::_double_sign_flip = generate_fp_mask("double_sign_flip", 0x8000000000000000);
5153
5154 // support for verify_oop (must happen after universe_init)
5155 StubRoutines::_verify_oop_subroutine_entry = generate_verify_oop();
5156
5157 // arraycopy stubs used by compilers
5158 generate_arraycopy_stubs();
5159
5160 // don't bother generating these AES intrinsic stubs unless global flag is set
|
5120 // fabricate a RuntimeStub internally.
5121 StubRoutines::_throw_AbstractMethodError_entry =
5122 generate_throw_exception("AbstractMethodError throw_exception",
5123 CAST_FROM_FN_PTR(address,
5124 SharedRuntime::
5125 throw_AbstractMethodError));
5126
5127 StubRoutines::_throw_IncompatibleClassChangeError_entry =
5128 generate_throw_exception("IncompatibleClassChangeError throw_exception",
5129 CAST_FROM_FN_PTR(address,
5130 SharedRuntime::
5131 throw_IncompatibleClassChangeError));
5132
5133 StubRoutines::_throw_NullPointerException_at_call_entry =
5134 generate_throw_exception("NullPointerException at call throw_exception",
5135 CAST_FROM_FN_PTR(address,
5136 SharedRuntime::
5137 throw_NullPointerException_at_call));
5138
5139 // entry points that are platform specific
5140 if (UseShenandoahGC && (ShenandoahWriteBarrier || ShenandoahStoreValEnqueueBarrier)) {
5141 StubRoutines::x86::_shenandoah_wb = generate_shenandoah_wb(false, true);
5142 StubRoutines::_shenandoah_wb_C = generate_shenandoah_wb(true, !ShenandoahWriteBarrierCsetTestInIR);
5143 }
5144 StubRoutines::x86::_f2i_fixup = generate_f2i_fixup();
5145 StubRoutines::x86::_f2l_fixup = generate_f2l_fixup();
5146 StubRoutines::x86::_d2i_fixup = generate_d2i_fixup();
5147 StubRoutines::x86::_d2l_fixup = generate_d2l_fixup();
5148
5149 StubRoutines::x86::_float_sign_mask = generate_fp_mask("float_sign_mask", 0x7FFFFFFF7FFFFFFF);
5150 StubRoutines::x86::_float_sign_flip = generate_fp_mask("float_sign_flip", 0x8000000080000000);
5151 StubRoutines::x86::_double_sign_mask = generate_fp_mask("double_sign_mask", 0x7FFFFFFFFFFFFFFF);
5152 StubRoutines::x86::_double_sign_flip = generate_fp_mask("double_sign_flip", 0x8000000000000000);
5153
5154 // support for verify_oop (must happen after universe_init)
5155 StubRoutines::_verify_oop_subroutine_entry = generate_verify_oop();
5156
5157 // arraycopy stubs used by compilers
5158 generate_arraycopy_stubs();
5159
5160 // don't bother generating these AES intrinsic stubs unless global flag is set
|