mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-22 06:07:49 +00:00
26 lines
903 B
Diff
26 lines
903 B
Diff
|
Original patch from Gentoo.
|
||
|
|
||
|
-= BEGIN original header =-
|
||
|
ARMV5 can use STRD and LDRD access instructions but these accesses need to be
|
||
|
8 byte aligned. The dynamic linker's malloc needs to match this so structures
|
||
|
become 8 byte aligned to void unaligned accesses.
|
||
|
|
||
|
RP - 14/02/2008
|
||
|
|
||
|
-= END original header =-
|
||
|
|
||
|
Modified slightly for uClibc-0.9.30.2 by Joachim Nilsson <jocke@vmlinux.org>
|
||
|
|
||
|
diff -durN uClibc-0.9.30.orig/ldso/ldso/arm/dl-sysdep.h uClibc-0.9.30/ldso/ldso/arm/dl-sysdep.h
|
||
|
--- uClibc-0.9.30.orig/ldso/ldso/arm/dl-sysdep.h 2008-09-25 10:35:20.000000000 +0200
|
||
|
+++ uClibc-0.9.30/ldso/ldso/arm/dl-sysdep.h 2009-02-07 09:57:59.000000000 +0100
|
||
|
@@ -15,6 +15,8 @@
|
||
|
GOT_BASE[1] = (unsigned long) MODULE; \
|
||
|
}
|
||
|
|
||
|
+#define DL_MALLOC_ALIGN 8 /* EABI needs 8 byte alignment for STRD LDRD*/
|
||
|
+
|
||
|
static __always_inline unsigned long arm_modulus(unsigned long m, unsigned long p)
|
||
|
{
|
||
|
unsigned long i,t,inc;
|