8139421: PPC64LE: MacroAssembler::bxx64_patchable kill register R12
authormdoerr
Mon, 12 Oct 2015 12:20:38 +0200
changeset 33170 1021810aef42
parent 33169 d9dc5d6fdb31
child 33171 25ea04039ff9
child 33172 06453a29bc41
8139421: PPC64LE: MacroAssembler::bxx64_patchable kill register R12 Summary: Register R12 must be preserved for stub calls (e.g. deopt handler). Reviewed-by: goetz
hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp
--- a/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp	Mon Oct 12 16:35:40 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp	Mon Oct 12 12:20:38 2015 +0200
@@ -594,13 +594,6 @@
            "can't identify emitted call");
   } else {
     // variant 1:
-#if defined(ABI_ELFv2)
-    nop();
-    calculate_address_from_global_toc(R12, dest, true, true, false);
-    mtctr(R12);
-    nop();
-    nop();
-#else
     mr(R0, R11);  // spill R11 -> R0.
 
     // Load the destination address into CTR,
@@ -610,7 +603,6 @@
     mtctr(R11);
     mr(R11, R0);  // spill R11 <- R0.
     nop();
-#endif
 
     // do the call/jump
     if (link) {