From e8012740b90f9acf286d852755d358eb4c708ab5 Mon Sep 17 00:00:00 2001 From: LemonBoy Date: Wed, 15 Jan 2020 20:03:41 +0100 Subject: [PATCH] Fix off-by-one error (and missing store op) --- lib/std/special/compiler_rt/arm.zig | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/std/special/compiler_rt/arm.zig b/lib/std/special/compiler_rt/arm.zig index 6dab675fc5..9ba423931b 100644 --- a/lib/std/special/compiler_rt/arm.zig +++ b/lib/std/special/compiler_rt/arm.zig @@ -78,9 +78,10 @@ pub fn __aeabi_uldivmod() callconv(.Naked) void { \\ push {r4, lr} \\ sub sp, #16 \\ add r4, sp, #8 + \\ str r4, [sp] \\ bl __udivmoddi4 - \\ ldr r3, [sp, #8] - \\ ldr r4, [sp, #12] + \\ ldr r2, [sp, #8] + \\ ldr r3, [sp, #12] \\ add sp, #16 \\ pop {r4, pc} : @@ -113,9 +114,10 @@ pub fn __aeabi_ldivmod() callconv(.Naked) void { \\ push {r4, lr} \\ sub sp, #16 \\ add r4, sp, #8 + \\ str r4, [sp] \\ bl __divmoddi4 - \\ ldr r3, [sp, #8] - \\ ldr r4, [sp, #12] + \\ ldr r2, [sp, #8] + \\ ldr r3, [sp, #12] \\ add sp, #16 \\ pop {r4, pc} :