aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/sys_netbsd_arm64.s
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/sys_netbsd_arm64.s')
-rw-r--r--src/runtime/sys_netbsd_arm64.s8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/runtime/sys_netbsd_arm64.s b/src/runtime/sys_netbsd_arm64.s
index 32e6740c52..6bcd3445d3 100644
--- a/src/runtime/sys_netbsd_arm64.s
+++ b/src/runtime/sys_netbsd_arm64.s
@@ -317,9 +317,15 @@ TEXT runtime·sigtramp(SB),NOSPLIT,$176
BEQ 2(PC)
BL runtime·load_g(SB)
+#ifdef GOEXPERIMENT_regabiargs
+ // Restore signum to R0.
+ MOVW 8(RSP), R0
+ // R1 and R2 already contain info and ctx, respectively.
+#else
MOVD R1, 16(RSP)
MOVD R2, 24(RSP)
- BL runtime·sigtrampgo(SB)
+#endif
+ BL runtime·sigtrampgo<ABIInternal>(SB)
// Restore callee-save registers.
RESTORE_R19_TO_R28(8*4)