@@ -454,12 +454,7 @@ void MacroAssembler::call_VM_base(Register oop_result,
454454 ld (t0, Address (java_thread, in_bytes (Thread::pending_exception_offset ())));
455455 Label ok;
456456 beqz (t0, ok);
457- RuntimeAddress target (StubRoutines::forward_exception_entry ());
458- relocate (target.rspec (), [&] {
459- int32_t offset;
460- la (t1, target.target (), offset);
461- jr (t1, offset);
462- });
457+ j (RuntimeAddress (StubRoutines::forward_exception_entry ()));
463458 bind (ok);
464459 }
465460
@@ -977,17 +972,19 @@ void MacroAssembler::j(const address dest, Register temp) {
977972 }
978973}
979974
980- void MacroAssembler::j (const Address &adr , Register temp) {
981- switch (adr .getMode ()) {
975+ void MacroAssembler::j (const Address &dest , Register temp) {
976+ switch (dest .getMode ()) {
982977 case Address::literal: {
983- relocate (adr.rspec (), [&] {
984- j (adr.target (), temp);
978+ relocate (dest.rspec (), [&] {
979+ int32_t offset;
980+ la (temp, dest.target (), offset);
981+ jr (temp, offset);
985982 });
986983 break ;
987984 }
988985 case Address::base_plus_offset: {
989- int32_t offset = ((int32_t )adr .offset () << 20 ) >> 20 ;
990- la (temp, Address (adr .base (), adr .offset () - offset));
986+ int32_t offset = ((int32_t )dest .offset () << 20 ) >> 20 ;
987+ la (temp, Address (dest .base (), dest .offset () - offset));
991988 jr (temp, offset);
992989 break ;
993990 }
@@ -4194,8 +4191,7 @@ void MacroAssembler::reserved_stack_check() {
41944191 // We have already removed our own frame.
41954192 // throw_delayed_StackOverflowError will think that it's been
41964193 // called by our caller.
4197- la (t1, RuntimeAddress (SharedRuntime::throw_delayed_StackOverflowError_entry ()));
4198- jr (t1);
4194+ j (RuntimeAddress (SharedRuntime::throw_delayed_StackOverflowError_entry ()));
41994195 should_not_reach_here ();
42004196
42014197 bind (no_reserved_zone_enabling);
0 commit comments