aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/runtime/asm_ppc64x.s5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/runtime/asm_ppc64x.s b/src/runtime/asm_ppc64x.s
index 7270abbdee..18edb67988 100644
--- a/src/runtime/asm_ppc64x.s
+++ b/src/runtime/asm_ppc64x.s
@@ -688,7 +688,10 @@ havem:
MOVD R5, FIXED_FRAME+0(R1)
MOVD R6, FIXED_FRAME+8(R1)
MOVD R7, FIXED_FRAME+16(R1)
- BL runtime·cgocallbackg(SB)
+
+ MOVD $runtime·cgocallbackg(SB), R12
+ MOVD R12, CTR
+ CALL (CTR) // indirect call to bypass nosplit check. We're on a different stack now.
// Restore g->sched (== m->curg->sched) from saved values.
MOVD 0(R1), R5