patches/glibc/2.7/270-sh-fix-procfs.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 17:54:21 2011 +0200 (2011-07-17)
changeset 2888 dd71df95903a
parent 962 2ba4393e0441
permissions -rw-r--r--
cc/gcc: pass the companion libs prefix to cc_core

In case of canadian-cross, the companion libraries are not the same for
the core cc (they run on 'build') as they are for the final cc (they run
on 'host').

Prepare for this differentiation (coming later), while retaining the
current behavior (to use the same compblibs).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@969
     1
diff -durN glibc-2.7.orig/sysdeps/unix/sysv/linux/sh/sys/procfs.h glibc-2.7/sysdeps/unix/sysv/linux/sh/sys/procfs.h
yann@969
     2
--- glibc-2.7.orig/sysdeps/unix/sysv/linux/sh/sys/procfs.h	2004-11-20 18:56:16.000000000 +0100
yann@969
     3
+++ glibc-2.7/sysdeps/unix/sysv/linux/sh/sys/procfs.h	2008-10-24 11:21:15.000000000 +0200
yann@969
     4
@@ -29,10 +29,32 @@
yann@962
     5
 #include <sys/types.h>
yann@962
     6
 #include <sys/ucontext.h>
yann@962
     7
 #include <sys/user.h>
yann@962
     8
-#include <asm/elf.h>
yann@969
     9
 
yann@962
    10
 __BEGIN_DECLS
yann@969
    11
 
yann@969
    12
+/* BEGIN - UGLY HACK - YEM
yann@969
    13
+ * These definitions are copied from the Alpha file,
yann@969
    14
+ * and the register numbers are set accordingly to
yann@969
    15
+ * what I could find in the Linux kernel sources
yann@969
    16
+ * Highly dubious !!!!
yann@969
    17
+ * BIG FAT WARNING !!!
yann@969
    18
+ */
yann@969
    19
+
yann@969
    20
+/* Linux kernel says 16 (standards?) registers */
yann@969
    21
+#define ELF_NGREG  16
yann@969
    22
+/* Linux kernel says 16 floating point registers */
yann@969
    23
+#define ELF_NFPREG 16
yann@969
    24
+
yann@969
    25
+/* Copied from Alpha as is */
yann@969
    26
+typedef unsigned long elf_greg_t;
yann@969
    27
+typedef elf_greg_t elf_gregset_t[ELF_NGREG];
yann@969
    28
+
yann@969
    29
+/* Ditto */
yann@969
    30
+typedef double elf_fpreg_t;
yann@969
    31
+typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
yann@969
    32
+
yann@969
    33
+/* END - UGLY HACK - YEM */
yann@969
    34
+
yann@969
    35
 struct elf_siginfo
yann@969
    36
   {
yann@969
    37
     int si_signo;			/* Signal number.  */