From 689544c0b9287852c3ace3c7bd106a8996bbf28f Mon Sep 17 00:00:00 2001 From: Keith Randall Date: Mon, 18 Mar 2019 12:49:49 -0700 Subject: [PATCH] runtime: fix registers for bounds check calling convention on arm Some of the registers in which indexes + length were supposed to be passed were wrong. Update #30116 Change-Id: I1089366b7429c1e0ecad9219b847db069ce6b5d6 Reviewed-on: https://go-review.googlesource.com/c/go/+/168041 Run-TryBot: Keith Randall Reviewed-by: Brad Fitzpatrick TryBot-Result: Gobot Gobot --- src/runtime/asm_arm.s | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/runtime/asm_arm.s b/src/runtime/asm_arm.s index c1e915b97c..af7da64ce6 100644 --- a/src/runtime/asm_arm.s +++ b/src/runtime/asm_arm.s @@ -1054,22 +1054,22 @@ TEXT runtime·panicExtendIndexU(SB),NOSPLIT,$0-12 TEXT runtime·panicExtendSliceAlen(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) MOVW R1, lo+4(FP) - MOVW R3, y+8(FP) + MOVW R2, y+8(FP) JMP runtime·goPanicExtendSliceAlen(SB) TEXT runtime·panicExtendSliceAlenU(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) MOVW R1, lo+4(FP) - MOVW R3, y+8(FP) + MOVW R2, y+8(FP) JMP runtime·goPanicExtendSliceAlenU(SB) TEXT runtime·panicExtendSliceAcap(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) MOVW R1, lo+4(FP) - MOVW R3, y+8(FP) + MOVW R2, y+8(FP) JMP runtime·goPanicExtendSliceAcap(SB) TEXT runtime·panicExtendSliceAcapU(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) MOVW R1, lo+4(FP) - MOVW R3, y+8(FP) + MOVW R2, y+8(FP) JMP runtime·goPanicExtendSliceAcapU(SB) TEXT runtime·panicExtendSliceB(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) @@ -1083,33 +1083,33 @@ TEXT runtime·panicExtendSliceBU(SB),NOSPLIT,$0-12 JMP runtime·goPanicExtendSliceBU(SB) TEXT runtime·panicExtendSlice3Alen(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) - MOVW R3, lo+4(FP) + MOVW R2, lo+4(FP) MOVW R3, y+8(FP) JMP runtime·goPanicExtendSlice3Alen(SB) TEXT runtime·panicExtendSlice3AlenU(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) - MOVW R3, lo+4(FP) + MOVW R2, lo+4(FP) MOVW R3, y+8(FP) JMP runtime·goPanicExtendSlice3AlenU(SB) TEXT runtime·panicExtendSlice3Acap(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) - MOVW R3, lo+4(FP) + MOVW R2, lo+4(FP) MOVW R3, y+8(FP) JMP runtime·goPanicExtendSlice3Acap(SB) TEXT runtime·panicExtendSlice3AcapU(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) - MOVW R3, lo+4(FP) + MOVW R2, lo+4(FP) MOVW R3, y+8(FP) JMP runtime·goPanicExtendSlice3AcapU(SB) TEXT runtime·panicExtendSlice3B(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) MOVW R1, lo+4(FP) - MOVW R3, y+8(FP) + MOVW R2, y+8(FP) JMP runtime·goPanicExtendSlice3B(SB) TEXT runtime·panicExtendSlice3BU(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) MOVW R1, lo+4(FP) - MOVW R3, y+8(FP) + MOVW R2, y+8(FP) JMP runtime·goPanicExtendSlice3BU(SB) TEXT runtime·panicExtendSlice3C(SB),NOSPLIT,$0-12 MOVW R4, hi+0(FP) -- 2.50.0