From 17a7f21790440255db6eebf5793e54f913379576 Mon Sep 17 00:00:00 2001 From: Joel Sing Date: Sun, 28 Apr 2019 03:08:37 +1000 Subject: [PATCH] runtime: correct exitThread on openbsd/arm64 The notdead argument to sys___threxit() is a pointer, hence requires a 64-bit move rather than a 32-bit one. Updates #31656 Change-Id: I52ad31ed5afaf43ccc3d934025288216e8052528 Reviewed-on: https://go-review.googlesource.com/c/go/+/174124 Reviewed-by: Brad Fitzpatrick --- src/runtime/sys_openbsd_arm64.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/runtime/sys_openbsd_arm64.s b/src/runtime/sys_openbsd_arm64.s index 407c819b21..ded916a026 100644 --- a/src/runtime/sys_openbsd_arm64.s +++ b/src/runtime/sys_openbsd_arm64.s @@ -25,7 +25,7 @@ TEXT runtime·exit(SB),NOSPLIT|NOFRAME,$0 // func exitThread(wait *uint32) TEXT runtime·exitThread(SB),NOSPLIT,$0-4 - MOVW wait+0(FP), R0 // arg 1 - notdead + MOVD wait+0(FP), R0 // arg 1 - notdead MOVD $302, R8 // sys___threxit SVC MOVD $0, R0 // crash on syscall failure -- 2.50.0