< prev index next >

src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp

Print this page




5723 
5724     // Build this early so it's available for the interpreter.
5725     StubRoutines::_throw_StackOverflowError_entry =
5726       generate_throw_exception("StackOverflowError throw_exception",
5727                                CAST_FROM_FN_PTR(address,
5728                                                 SharedRuntime::throw_StackOverflowError));
5729     StubRoutines::_throw_delayed_StackOverflowError_entry =
5730       generate_throw_exception("delayed StackOverflowError throw_exception",
5731                                CAST_FROM_FN_PTR(address,
5732                                                 SharedRuntime::throw_delayed_StackOverflowError));
5733     if (UseCRC32Intrinsics) {
5734       // set table address before stub generation which use it
5735       StubRoutines::_crc_table_adr = (address)StubRoutines::aarch64::_crc_table;
5736       StubRoutines::_updateBytesCRC32 = generate_updateBytesCRC32();
5737     }
5738 
5739     if (UseCRC32CIntrinsics) {
5740       StubRoutines::_updateBytesCRC32C = generate_updateBytesCRC32C();
5741     }
5742 
5743     if (vmIntrinsics::is_intrinsic_available(vmIntrinsics::_dlog)) {
5744       StubRoutines::_dlog = generate_dlog();
5745     }

5746 
5747     if (vmIntrinsics::is_intrinsic_available(vmIntrinsics::_dsin)) {
5748       StubRoutines::_dsin = generate_dsin_dcos(/* isCos = */ false);
5749     }
5750 
5751     if (vmIntrinsics::is_intrinsic_available(vmIntrinsics::_dcos)) {
5752       StubRoutines::_dcos = generate_dsin_dcos(/* isCos = */ true);
5753     }
5754   }
5755 
5756   void generate_all() {
5757     // support for verify_oop (must happen after universe_init)
5758     StubRoutines::_verify_oop_subroutine_entry     = generate_verify_oop();
5759     StubRoutines::_throw_AbstractMethodError_entry =
5760       generate_throw_exception("AbstractMethodError throw_exception",
5761                                CAST_FROM_FN_PTR(address,
5762                                                 SharedRuntime::
5763                                                 throw_AbstractMethodError));
5764 
5765     StubRoutines::_throw_IncompatibleClassChangeError_entry =




5723 
5724     // Build this early so it's available for the interpreter.
5725     StubRoutines::_throw_StackOverflowError_entry =
5726       generate_throw_exception("StackOverflowError throw_exception",
5727                                CAST_FROM_FN_PTR(address,
5728                                                 SharedRuntime::throw_StackOverflowError));
5729     StubRoutines::_throw_delayed_StackOverflowError_entry =
5730       generate_throw_exception("delayed StackOverflowError throw_exception",
5731                                CAST_FROM_FN_PTR(address,
5732                                                 SharedRuntime::throw_delayed_StackOverflowError));
5733     if (UseCRC32Intrinsics) {
5734       // set table address before stub generation which use it
5735       StubRoutines::_crc_table_adr = (address)StubRoutines::aarch64::_crc_table;
5736       StubRoutines::_updateBytesCRC32 = generate_updateBytesCRC32();
5737     }
5738 
5739     if (UseCRC32CIntrinsics) {
5740       StubRoutines::_updateBytesCRC32C = generate_updateBytesCRC32C();
5741     }
5742 
5743     // Disabled until JDK-8210858 is fixed
5744     // if (vmIntrinsics::is_intrinsic_available(vmIntrinsics::_dlog)) {
5745     //   StubRoutines::_dlog = generate_dlog();
5746     // }
5747 
5748     if (vmIntrinsics::is_intrinsic_available(vmIntrinsics::_dsin)) {
5749       StubRoutines::_dsin = generate_dsin_dcos(/* isCos = */ false);
5750     }
5751 
5752     if (vmIntrinsics::is_intrinsic_available(vmIntrinsics::_dcos)) {
5753       StubRoutines::_dcos = generate_dsin_dcos(/* isCos = */ true);
5754     }
5755   }
5756 
5757   void generate_all() {
5758     // support for verify_oop (must happen after universe_init)
5759     StubRoutines::_verify_oop_subroutine_entry     = generate_verify_oop();
5760     StubRoutines::_throw_AbstractMethodError_entry =
5761       generate_throw_exception("AbstractMethodError throw_exception",
5762                                CAST_FROM_FN_PTR(address,
5763                                                 SharedRuntime::
5764                                                 throw_AbstractMethodError));
5765 
5766     StubRoutines::_throw_IncompatibleClassChangeError_entry =


< prev index next >