patches/uClibc/0.9.30/110-arm_fix_alignment.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sat Dec 31 16:23:27 2011 +0100 (2011-12-31)
changeset 2814 3dc2727ebffc
permissions -rw-r--r--
cc/gcc: add option to use system zlib

In some cases, it might be desirable to use the system zlib

Eg. because latest gcc seem to be totally borked when it comes
to multilib, and tries to build a multilib host zlib, when it
is *absolutely* *not* needed: we want mulitlib on the target,
not on the host! Sigh... :-(

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