patches/glibc/2.3.2/glibc-2.3.3-allow-gcc-4.0-powerpc-procfs.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sat Feb 24 11:00:05 2007 +0000 (2007-02-24)
changeset 1 eeea35fbf182
permissions -rw-r--r--
Add the full crosstool-NG sources to the new repository of its own.
You might just say: 'Yeah! crosstool-NG's got its own repo!".
Unfortunately, that's because the previous repo got damaged beyond repair and I had no backup.
That means I'm putting backups in place in the afternoon.
That also means we've lost history... :-(
     1 (Combined with earlier fix old/glibc-2.3.2-powerpc-procfs.patch
     2 from http://sources.redhat.com/ml/libc-alpha/2003-12/msg00101.html)
     3 
     4 This fix discussed here:
     5 http://gcc.gnu.org/ml/gcc/2005-01/msg00509.html
     6 
     7 Revision 1.12, Wed Mar 2 20:11:38 2005 UTC by roland
     8 Branch: MAIN
     9 CVS Tags: fedora-glibc-20050303T1335, HEAD
    10 Changes since 1.11: +3 -8 lines
    11 Diff to previous 1.11 (colored)
    12 
    13 2005-02-21  Alan Modra <amodra@bigpond.net.au>
    14 
    15 	* sysdeps/unix/sysv/linux/powerpc/sys/procfs.h (elf_vrreg_t): Don't
    16 	use __uint128_t.
    17 
    18 http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/powerpc/sys/procfs.h?cvsroot=glibc
    19 http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/powerpc/sys/procfs.h.diff?r1=1.11&r2=1.12&cvsroot=glibc
    20 
    21 Fixes
    22 
    23 In file included from ../linuxthreads_db/proc_service.h:20,
    24                  from ../linuxthreads_db/thread_dbP.h:7,
    25                  from ../linuxthreads/descr.h:44,
    26                  from ../linuxthreads/internals.h:30,
    27                  from ../linuxthreads/sysdeps/pthread/bits/libc-lock.h:27,
    28                  from ../sysdeps/generic/ldsodefs.h:38,
    29                  from ../sysdeps/unix/sysv/linux/ldsodefs.h:25,
    30                  from <stdin>:2:
    31 ../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:57: error: syntax error before 'elf_vrreg_t'
    32 ../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:57: warning: type defaults to 'int' in declaration of 'elf_vrreg_t'
    33 ../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:57: warning: data definition has no type or storage class
    34 ../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:58: error: syntax error before 'elf_vrregset_t'
    35 ../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:58: warning: type defaults to 'int' in declaration of 'elf_vrregset_t'
    36 ../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:58: warning: data definition has no type or storage class
    37 make[2]: make[2]: Leaving directory `/home/dank/queue/jobdir.fast2/crosstool-dev/build/powerpc-750-linux-gnu/gcc-4.0-20050305-glibc-2.3-20050307/glibc-2.3-20050307/csu'
    38 
    39 Rediffed against glibc-2.3.3
    40 
    41 --- glibc-2.3.3.orig/sysdeps/unix/sysv/linux/powerpc/sys/procfs.h	Sun Jan 12 00:24:23 2003
    42 +++ glibc-2.3.3.new/sysdeps/unix/sysv/linux/powerpc/sys/procfs.h	Fri Mar 18 11:20:58 2005
    43 @@ -45,18 +45,13 @@
    44  
    45  typedef double elf_fpreg_t;
    46  typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
    47 -#endif
    48 -
    49 -/* gcc 3.1 and newer support __uint128_t.  */
    50 -#if !__GNUC_PREREQ(3,1)
    51 -typedef struct {
    52 -  unsigned long u[4];
    53 -} __attribute((aligned(16))) __uint128_t;
    54 -#endif
    55  
    56  /* Altivec registers */
    57 -typedef __uint128_t elf_vrreg_t;
    58 +typedef struct {
    59 +  unsigned int u[4];
    60 +} __attribute__ ((aligned (16))) elf_vrreg_t;
    61  typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
    62 +#endif
    63  
    64  struct elf_siginfo
    65    {