2012-04-26 Michael Hope <michael.hope@linaro.org>
authormichaelh <michaelh@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 26 Apr 2012 04:33:08 +0000 (04:33 +0000)
committermichaelh <michaelh@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 26 Apr 2012 04:33:08 +0000 (04:33 +0000)
    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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186859 138bc75d-0d04-0410-961f-82ee72b054a4

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

index ef6fc51..59f50fd 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 80bd825..2ace6f0 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.  */