patches/uClibc/0.9.30.2/110-arm_fix_alignment.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Aug 31 23:24:40 2010 +0200 (2010-08-31)
changeset 2107 f5ab0a80e466
permissions -rw-r--r--
binutils/binutils: remove faulty patch

The added code should be conditinal to the target system
being !MIPS, but is based on the host system being !MIPS.

This is plain wrong, and had not been noticed until now
as I never used those binutils versions on MIPS.

See:
http://sourceware.org/ml/crossgcc/2010-08/msg00192.html

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
jocke@1737
     1
Original patch from Gentoo.
jocke@1737
     2
jocke@1737
     3
-= BEGIN original header =-
jocke@1737
     4
ARMV5 can use STRD and LDRD access instructions but these accesses need to be 
jocke@1737
     5
8 byte aligned. The dynamic linker's malloc needs to match this so structures
jocke@1737
     6
become 8 byte aligned to void unaligned accesses.
jocke@1737
     7
jocke@1737
     8
RP - 14/02/2008
jocke@1737
     9
jocke@1737
    10
-= END original header =-
jocke@1737
    11
jocke@1737
    12
Modified slightly for uClibc-0.9.30.2 by Joachim Nilsson <jocke@vmlinux.org>
jocke@1737
    13
jocke@1737
    14
diff -durN uClibc-0.9.30.orig/ldso/ldso/arm/dl-sysdep.h uClibc-0.9.30/ldso/ldso/arm/dl-sysdep.h
jocke@1737
    15
--- uClibc-0.9.30.orig/ldso/ldso/arm/dl-sysdep.h	2008-09-25 10:35:20.000000000 +0200
jocke@1737
    16
+++ uClibc-0.9.30/ldso/ldso/arm/dl-sysdep.h	2009-02-07 09:57:59.000000000 +0100
jocke@1737
    17
@@ -15,6 +15,8 @@
jocke@1737
    18
   GOT_BASE[1] = (unsigned long) MODULE; \
jocke@1737
    19
 }
jocke@1737
    20
 
jocke@1737
    21
+#define DL_MALLOC_ALIGN 8  /* EABI needs 8 byte alignment for STRD LDRD*/
jocke@1737
    22
+
jocke@1737
    23
 static __always_inline unsigned long arm_modulus(unsigned long m, unsigned long p)
jocke@1737
    24
 {
jocke@1737
    25
 	unsigned long i,t,inc;