From 0c6f9e780d85992f4a7140180f12f0fc98e31ade Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Sun, 28 Jan 2007 06:58:44 +0000 Subject: Paul Brook writes: The patch below tweaks the ARM nommu startup code so that doubleword stack alignment is preserved. This is required on EABI targets. --- libc/sysdeps/linux/arm/crt1.S | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'libc/sysdeps') diff --git a/libc/sysdeps/linux/arm/crt1.S b/libc/sysdeps/linux/arm/crt1.S index 02c2f8de9..8d4d230a7 100644 --- a/libc/sysdeps/linux/arm/crt1.S +++ b/libc/sysdeps/linux/arm/crt1.S @@ -119,9 +119,10 @@ _start: * uClinux/arm stacks look a little different from normal * MMU-full Linux/arm stacks (for no good reason) */ - /* pull argc and argv off the stack */ - ldr a2, [sp, #0] - ldr a3, [sp, #4] + /* pull argc and argv off the stack. We are going to push 3 + * arguments, so pop one here to maintain doubleword alignment. */ + ldr a2, [sp], #4 + ldr a3, [sp] #endif /* Push stack limit */ -- cgit v1.2.3