linux-eabi.h (GLIBC_DYNAMIC_LINKER_SOFT_FLOAT): Define.
authorMichael Hope <michael.hope@linaro.org>
Thu, 26 Apr 2012 04:33:08 +0000 (04:33 +0000)
committerMichael Hope <michaelh@gcc.gnu.org>
Thu, 26 Apr 2012 04:33:08 +0000 (04:33 +0000)
2012-04-26  Michael Hope  <michael.hope@linaro.org>
    Richard Earnshaw  <rearnsha@arm.com>

* config/arm/linux-eabi.h (GLIBC_DYNAMIC_LINKER_SOFT_FLOAT): Define.
(GLIBC_DYNAMIC_LINKER_HARD_FLOAT): Define.
(GLIBC_DYNAMIC_LINKER_DEFAULT): Define.
(GLIBC_DYNAMIC_LINKER): Redefine to use the hard float path.

Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
From-SVN: r186859

gcc/ChangeLog
gcc/config/arm/linux-eabi.h

index ef6fc511086f319d78a6cdd6db3d63888b33cd45..59f50fd8b3a2fe243706bb3e74639301be24cce8 100644 (file)
@@ -1,3 +1,11 @@
+2012-04-26  Michael Hope  <michael.hope@linaro.org>
+           Richard Earnshaw  <rearnsha@arm.com>
+
+       * config/arm/linux-eabi.h (GLIBC_DYNAMIC_LINKER_SOFT_FLOAT): Define.
+       (GLIBC_DYNAMIC_LINKER_HARD_FLOAT): Define.
+       (GLIBC_DYNAMIC_LINKER_DEFAULT): Define.
+       (GLIBC_DYNAMIC_LINKER): Redefine to use the hard float path.
+
 2012-04-25  Sriraman Tallam  <tmsriram@google.com>
 
        * doc/extend.texi: Document avx2 support.
index 80bd82593757d215aa59fa349c190e566e73bf79..2ace6f01f51fe57e986b96387affe50adf738d0d 100644 (file)
 /* Use ld-linux.so.3 so that it will be possible to run "classic"
    GNU/Linux binaries on an EABI system.  */
 #undef  GLIBC_DYNAMIC_LINKER
-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.3"
+#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "/lib/ld-linux.so.3"
+#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT "/lib/ld-linux-armhf.so.3"
+#if TARGET_DEFAULT_FLOAT_ABI == ARM_FLOAT_ABI_HARD
+#define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_HARD_FLOAT
+#else
+#define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT
+#endif
+#define GLIBC_DYNAMIC_LINKER \
+   "%{mfloat-abi=hard:" GLIBC_DYNAMIC_LINKER_HARD_FLOAT "} \
+    %{mfloat-abi=soft*:" GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "} \
+    %{!mfloat-abi=*:" GLIBC_DYNAMIC_LINKER_DEFAULT "}"
 
 /* At this point, bpabi.h will have clobbered LINK_SPEC.  We want to
    use the GNU/Linux version, not the generic BPABI version.  */