patches/glibc/ports-2.10.1/420-alpha-no-asm-elf-header.patch
author Michael Hope <michael.hope@linaro.org>
Wed Oct 19 15:27:32 2011 +1300 (2011-10-19)
changeset 2739 f320e22f2cba
permissions -rw-r--r--
arch: add softfp support

Some architectures support a mixed hard/soft floating point, where
the compiler emits hardware floating point instructions, but passes
the operands in core (aka integer) registers.

For example, ARM supports this mode (to come in the next changeset).

Add support for softfp cross compilers to the GCC and GLIBC
configuration. Needed for Ubuntu and other distros that are softfp.

Signed-off-by: Michael Hope <michael.hope@linaro.org>
[yann.morin.1998@anciens.enib.fr: split the original patch]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1625
     1
2007-03-13  Mike Frysinger  <vapier@gentoo.org>
yann@1625
     2
yann@1625
     3
	* sysdeps/unix/sysv/linux/alpha/sys/procfs.h: Copy some defines
yann@1625
     4
	from alpha's asm/elf.h
yann@1625
     5
yann@1625
     6
diff -durN glibc-2.10.1.orig/glibc-ports-2.10.1/sysdeps/unix/sysv/linux/alpha/sys/procfs.h glibc-2.10.1/glibc-ports-2.10.1/sysdeps/unix/sysv/linux/alpha/sys/procfs.h
yann@1625
     7
--- glibc-2.10.1.orig/glibc-ports-2.10.1/sysdeps/unix/sysv/linux/alpha/sys/procfs.h	2009-05-16 10:36:20.000000000 +0200
yann@1625
     8
+++ glibc-2.10.1/glibc-ports-2.10.1/sysdeps/unix/sysv/linux/alpha/sys/procfs.h	2009-11-13 00:50:49.000000000 +0100
yann@1625
     9
@@ -29,10 +29,23 @@
yann@1625
    10
 #include <sys/types.h>
yann@1625
    11
 #include <sys/ucontext.h>
yann@1625
    12
 #include <sys/user.h>
yann@1625
    13
-#include <asm/elf.h>
yann@1625
    14
 
yann@1625
    15
 __BEGIN_DECLS
yann@1625
    16
 
yann@1625
    17
+/*
yann@1625
    18
+ * The OSF/1 version of <sys/procfs.h> makes gregset_t 46 entries long.
yann@1625
    19
+ * I have no idea why that is so.  For now, we just leave it at 33
yann@1625
    20
+ * (32 general regs + processor status word). 
yann@1625
    21
+ */
yann@1625
    22
+#define ELF_NGREG	33
yann@1625
    23
+#define ELF_NFPREG	32
yann@1625
    24
+
yann@1625
    25
+typedef unsigned long elf_greg_t;
yann@1625
    26
+typedef elf_greg_t elf_gregset_t[ELF_NGREG];
yann@1625
    27
+
yann@1625
    28
+typedef double elf_fpreg_t;
yann@1625
    29
+typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
yann@1625
    30
+
yann@1625
    31
 struct elf_siginfo
yann@1625
    32
   {
yann@1625
    33
     int si_signo;			/* Signal number.  */
yann@1625
    34
diff -durN glibc-2.10.1.orig/ports/sysdeps/unix/sysv/linux/alpha/sys/procfs.h glibc-2.10.1/ports/sysdeps/unix/sysv/linux/alpha/sys/procfs.h