[uClibc-cvs] uClibc/libc/sysdeps/linux/arm __longjmp.S,1.3,1.4 setjmp.S,1.7,1.8

David McCullough davidm at uclibc.org
Sun Feb 23 23:24:48 UTC 2003


Update of /var/cvs/uClibc/libc/sysdeps/linux/arm
In directory winder:/tmp/cvs-serv19320

Modified Files:
	__longjmp.S setjmp.S 
Log Message:

Fix FP handling alignment problems on ARM platforms without an FPU,   
patch from Vadim Lebedev <vadim at 7chips.com>.



Index: __longjmp.S
===================================================================
RCS file: /var/cvs/uClibc/libc/sysdeps/linux/arm/__longjmp.S,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- __longjmp.S	6 Nov 2002 20:16:27 -0000	1.3
+++ __longjmp.S	23 Feb 2003 23:24:44 -0000	1.4
@@ -34,6 +34,8 @@
 
 #if defined __UCLIBC_HAS_FLOATS__ && ! defined __UCLIBC_HAS_SOFT_FLOAT__
 	lfmfd	f4, 4, [ip] !	/* load the floating point regs */
+#else
+	add		ip, ip, #48		/* skip the FP registers */
 #endif	
 
 	ldmia     ip ,  {v1-v6, sl, fp, sp, pc}

Index: setjmp.S
===================================================================
RCS file: /var/cvs/uClibc/libc/sysdeps/linux/arm/setjmp.S,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- setjmp.S	6 Nov 2002 20:16:27 -0000	1.7
+++ setjmp.S	23 Feb 2003 23:24:44 -0000	1.8
@@ -29,6 +29,8 @@
 	/* Save registers */
 #if defined __UCLIBC_HAS_FLOATS__ && ! defined __UCLIBC_HAS_SOFT_FLOAT__
 	sfmea   f4, 4, [r0]!
+#else
+	sub     r0, r0, #48		/* skip the FP registers */
 #endif
 	stmia   r0, {v1-v6, sl, fp, sp, lr}
 




More information about the uClibc-cvs mailing list