From 080119799bb9cbace0d20bcc671497a53e3ec14e Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Tue, 23 Feb 2021 11:38:24 -0500 Subject: [PATCH] runtime: fix usleep on windows/arm Changed calling convention to pre-multiply the argument by -100, and then deleted the * 100 but not the negation in the windows/arm assembly. Delete the negation. Fixes the current all.bash breakage on windows/arm builder. (Maybe that will uncover more.) Change-Id: I13006a44866ecc007586deb180a49c038d70aa99 Reviewed-on: https://go-review.googlesource.com/c/go/+/295529 Trust: Russ Cox Run-TryBot: Russ Cox TryBot-Result: Go Bot Reviewed-by: Cherry Zhang --- src/runtime/sys_windows_arm.s | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/runtime/sys_windows_arm.s b/src/runtime/sys_windows_arm.s index 4be5ce7da0..9a5d9b1dd4 100644 --- a/src/runtime/sys_windows_arm.s +++ b/src/runtime/sys_windows_arm.s @@ -375,12 +375,11 @@ TEXT runtime·tstart_stdcall(SB),NOSPLIT|NOFRAME,$0 // duration (in -100ns units) is in dt+0(FP). // g may be nil. TEXT runtime·usleep2(SB),NOSPLIT|NOFRAME,$0-4 - MOVW dt+0(FP), R0 + MOVW dt+0(FP), R3 MOVM.DB.W [R4, R14], (R13) // push {r4, lr} MOVW R13, R4 // Save SP SUB $8, R13 // R13 = R13 - 8 BIC $0x7, R13 // Align SP for ABI - RSB $0, R0, R3 // R3 = -R0 MOVW $0, R1 // R1 = FALSE (alertable) MOVW $-1, R0 // R0 = handle MOVW R13, R2 // R2 = pTime -- 2.50.0