patches/glibc/2.5.1/130-i686-assembler.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Mon Mar 28 01:05:18 2011 +0200 (2011-03-28)
changeset 2362 0888065f8c4d
parent 744 4bf8448536d5
permissions -rw-r--r--
cc/gcc: cleanup the _or_later logic

So far, we've had a version always select appropriate _or_later option,
which in turn would select all previous _or_later options.

Because the dependencies on companion libs were cumulative, that was
working OK. But the upcoming 4.6 will no longer depend on libelf, so
we can't keep the cumulative scheme we've been using so far.

Have each release family select the corresponding dependencies, instead
of relying on selecting previous _or_later.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 2007-02-15  Khem Raj  <kraj@xxxxxxxxxx>
     2 
     3        * sysdeps/unix/sysv/linux/i386/sysdep.h: Re-define __i686.
     4        * nptl/sysdeps/pthread/pt-initfini.c: Ditto.
     5 
     6 
     7 
     8 Index: glibc-2.4/sysdeps/unix/sysv/linux/i386/sysdep.h
     9 ===================================================================
    10 --- glibc-2.4/sysdeps/unix/sysv/linux/i386/sysdep.h	(revision 1469)
    11 +++ glibc-2.4/sysdeps/unix/sysv/linux/i386/sysdep.h	(working copy)
    12 @@ -29,6 +29,10 @@
    13  #include <dl-sysdep.h>
    14  #include <tls.h>
    15  
    16 +#if defined __i686 && defined __ASSEMBLER__
    17 +#undef __i686
    18 +#define __i686 __i686
    19 +#endif
    20  
    21  /* For Linux we can use the system call table in the header file
    22  	/usr/include/asm/unistd.h
    23 Index: glibc-2.4/nptl/sysdeps/pthread/pt-initfini.c
    24 ===================================================================
    25 --- glibc-2.4/nptl/sysdeps/pthread/pt-initfini.c	(revision 1469)
    26 +++ glibc-2.4/nptl/sysdeps/pthread/pt-initfini.c	(working copy)
    27 @@ -45,6 +45,11 @@
    28  /* Embed an #include to pull in the alignment and .end directives. */
    29  asm ("\n#include \"defs.h\"");
    30  
    31 +asm ("\n#if defined __i686 && defined __ASSEMBLER__");
    32 +asm ("\n#undef __i686");
    33 +asm ("\n#define __i686 __i686");
    34 +asm ("\n#endif");
    35 +
    36  /* The initial common code ends here. */
    37  asm ("\n/*@HEADER_ENDS*/");
    38