svn commit: trunk/uClibc/libc/sysdeps/linux/arm

vapier at uclibc.org vapier at uclibc.org
Sun Jan 28 06:58:45 UTC 2007


Author: vapier
Date: 2007-01-27 22:58:44 -0800 (Sat, 27 Jan 2007)
New Revision: 17581

Log:
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.


Modified:
   trunk/uClibc/libc/sysdeps/linux/arm/crt1.S


Changeset:
Modified: trunk/uClibc/libc/sysdeps/linux/arm/crt1.S
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/arm/crt1.S	2007-01-28 06:55:56 UTC (rev 17580)
+++ trunk/uClibc/libc/sysdeps/linux/arm/crt1.S	2007-01-28 06:58:44 UTC (rev 17581)
@@ -119,9 +119,10 @@
 	 * 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 */




More information about the uClibc-cvs mailing list