Adds the necessary support bits to libgcc.  All other mainstream
i386/amd64 targets already have this.

Tested on i386-unknown-openbsd5.2 and x86_64-unknown-openbsd5.2.
Fixes a couple of testcases.


libgcc/:

2012-10-06  Mark Kettenis  <kette...@openbsd.org>

            * config.host (i[34567]86-*-openbsd* and x86_64-*-openbsd*):
            Add to list of i[34567]86-*-* and x86_64-*-* soft-fp targets.

gcc/:

2012-10-06  Mark Kettenis  <kette...@openbsd.org>

            * config/i386/openbsdelf.h (LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT) 
            (TF_SIZE): Define.


Index: libgcc/config.host
===================================================================
--- libgcc/config.host  (revision 192154)
+++ libgcc/config.host  (working copy)
@@ -1156,7 +1156,8 @@
   i[34567]86-*-gnu* | \
   i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]* | \
   i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw* | \
-  i[34567]86-*-freebsd* | x86_64-*-freebsd*)
+  i[34567]86-*-freebsd* | x86_64-*-freebsd* | \
+  i[34567]86-*-openbsd* | x86_64-*-openbsd*)
        tmake_file="${tmake_file} t-softfp-tf"
        if test "${host_address}" = 32; then
                tmake_file="${tmake_file} i386/${host_address}/t-softfp"
Index: gcc/config/i386/openbsdelf.h
===================================================================
--- gcc/config/i386/openbsdelf.h        (revision 192154)
+++ gcc/config/i386/openbsdelf.h        (working copy)
@@ -111,3 +111,9 @@
 #define OBSD_HAS_CORRECT_SPECS
 
 #define HAVE_ENABLE_EXECUTE_STACK
+
+/* Put all *tf routines in libgcc.  */
+#undef LIBGCC2_HAS_TF_MODE
+#define LIBGCC2_HAS_TF_MODE 1
+#define LIBGCC2_TF_CEXT q
+#define TF_SIZE 113

Reply via email to