summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog20
-rw-r--r--gcc/config.gcc8
-rw-r--r--gcc/config/fp-bit.c20
-rw-r--r--gcc/config/fp-bit.h165
-rw-r--r--gcc/config/gofast.h80
-rw-r--r--gcc/config/mips/elforion.h5
-rw-r--r--gcc/config/mips/mips.c5
-rw-r--r--gcc/config/mips/t-gofast37
-rw-r--r--gcc/config/mips/t-sr71k4
-rw-r--r--gcc/config/sparc/sparc.c3
-rw-r--r--gcc/config/spu/t-spu-elf4
-rw-r--r--gcc/doc/tm.texi20
-rw-r--r--gcc/doc/tm.texi.in20
-rw-r--r--gcc/system.h2
14 files changed, 92 insertions, 301 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f99ec93e9f0..6daa1c8e689 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,23 @@
+2010-12-15 Joseph Myers <joseph@codesourcery.com>
+
+ * doc/tm.texi.in (US_SOFTWARE_GOFAST): Don't document.
+ * doc/tm.texi: Regenerate.
+ * system.h (US_SOFTWARE_GOFAST): Poison.
+ * config.gcc (enable_gofast): Don't handle.
+ * config/gofast.h: Remove.
+ * config/mips/t-gofast: Remove.
+ * config/fp-bit.c (US_SOFTWARE_GOFAST): Don't handle.
+ * config/fp-bit.h (US_SOFTWARE_GOFAST): Don't handle.
+ * config/mips/elforion.h: Don't mention GOFAST in comment.
+ * config/mips/mips.c: Don't include gofast.h.
+ (mips_init_libfuncs): Don't call gofast_maybe_init_libfuncs.
+ * config/mips/t-sr71k (dp-bit.c, fp-bit.c): Don't define
+ US_SOFTWARE_GOFAST.
+ * config/sparc/sparc.c: Don't include gofast.h.
+ (sparc_init_libfuncs): Don't call gofast_maybe_init_libfuncs.
+ * config/spu/t-spu-elf (dp-bit.c, fp-bit.c): Don't undefine
+ US_SOFTWARE_GOFAST.
+
2010-12-14 Jan Hubicka <jh@suse.cz>
* tree.c (get_file_function_name): Avoid using random seed on GLOBAL_sub_I
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 51d9c264450..886da50d32e 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -3562,13 +3562,7 @@ case ${target} in
tm_defines="TARGET_ENDIAN_DEFAULT=0 $tm_defines"
;;
esac
- if test "x$enable_gofast" = xyes
- then
- tm_defines="US_SOFTWARE_GOFAST $tm_defines"
- tmake_file="mips/t-gofast $tmake_file"
- else
- tmake_file="mips/t-mips $tmake_file"
- fi
+ tmake_file="mips/t-mips $tmake_file"
;;
powerpc*-*-* | rs6000-*-*)
diff --git a/gcc/config/fp-bit.c b/gcc/config/fp-bit.c
index 1cdac6ebeca..82d924ec2bf 100644
--- a/gcc/config/fp-bit.c
+++ b/gcc/config/fp-bit.c
@@ -1,7 +1,7 @@
/* This is a software floating point library which can be used
for targets without hardware floating point.
Copyright (C) 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003,
- 2004, 2005, 2008, 2009 Free Software Foundation, Inc.
+ 2004, 2005, 2008, 2009, 2010 Free Software Foundation, Inc.
This file is part of GCC.
@@ -48,8 +48,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
8-bit processors.
CMPtype: Specify the type that floating point compares should return.
This defaults to SItype, aka int.
- US_SOFTWARE_GOFAST: This makes all entry points use the same names as the
- US Software goFast library.
_DEBUG_BITFLOAT: This makes debugging the code a little easier, by adding
two integers to the FLO_union_type.
NO_DENORMALS: Disable handling of denormals.
@@ -1179,8 +1177,6 @@ compare (FLO_type arg_a, FLO_type arg_b)
}
#endif /* L_compare_sf || L_compare_df */
-#ifndef US_SOFTWARE_GOFAST
-
/* These should be optimized for their specific tasks someday. */
#if defined(L_eq_sf) || defined(L_eq_df) || defined(L_eq_tf)
@@ -1308,8 +1304,6 @@ _le_f2 (FLO_type arg_a, FLO_type arg_b)
}
#endif /* L_le_sf || L_le_df */
-#endif /* ! US_SOFTWARE_GOFAST */
-
#if defined(L_unord_sf) || defined(L_unord_df) || defined(L_unord_tf)
CMPtype
_unord_f2 (FLO_type arg_a, FLO_type arg_b)
@@ -1434,14 +1428,7 @@ float_to_si (FLO_type arg_a)
}
#endif /* L_sf_to_si || L_df_to_si */
-#if defined(L_sf_to_usi) || defined(L_df_to_usi) || defined(L_tf_to_usi)
-#if defined US_SOFTWARE_GOFAST || defined(L_tf_to_usi)
-/* While libgcc2.c defines its own __fixunssfsi and __fixunsdfsi routines,
- we also define them for GOFAST because the ones in libgcc2.c have the
- wrong names and I'd rather define these here and keep GOFAST CYG-LOC's
- out of libgcc2.c. We can't define these here if not GOFAST because then
- there'd be duplicate copies. */
-
+#if defined(L_tf_to_usi)
USItype
float_to_usi (FLO_type arg_a)
{
@@ -1471,8 +1458,7 @@ float_to_usi (FLO_type arg_a)
else
return a.fraction.ll >> ((FRACBITS + NGARDS) - a.normal_exp);
}
-#endif /* US_SOFTWARE_GOFAST */
-#endif /* L_sf_to_usi || L_df_to_usi */
+#endif /* L_tf_to_usi */
#if defined(L_negate_sf) || defined(L_negate_df) || defined(L_negate_tf)
FLO_type
diff --git a/gcc/config/fp-bit.h b/gcc/config/fp-bit.h
index 3638cc53f8f..f0b07e91fb6 100644
--- a/gcc/config/fp-bit.h
+++ b/gcc/config/fp-bit.h
@@ -1,5 +1,6 @@
/* Header file for fp-bit.c. */
-/* Copyright (C) 2000, 2002, 2003, 2006, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2002, 2003, 2006, 2009, 2010
+ Free Software Foundation, Inc.
This file is part of GCC.
@@ -217,101 +218,67 @@ typedef unsigned int UTItype __attribute__ ((mode (TI)));
typedef DItype intfrac;
#endif /* FLOAT */
-#ifdef US_SOFTWARE_GOFAST
-# ifdef TFLOAT
-# error "GOFAST TFmode not supported"
-# elif defined FLOAT
-# define add fpadd
-# define sub fpsub
-# define multiply fpmul
-# define divide fpdiv
-# define compare fpcmp
-# define _unord_f2 __unordsf2
-# define usi_to_float __floatunsisf
-# define si_to_float sitofp
-# define float_to_si fptosi
-# define float_to_usi fptoui
-# define negate __negsf2
-# define sf_to_df fptodp
-# define sf_to_tf __extendsftf2
-# else
-# define add dpadd
-# define sub dpsub
-# define multiply dpmul
-# define divide dpdiv
-# define compare dpcmp
-# define _unord_f2 __unorddf2
-# define usi_to_float __floatunsidf
-# define si_to_float litodp
-# define float_to_si dptoli
-# define float_to_usi dptoul
-# define negate __negdf2
-# define df_to_sf dptofp
-# define df_to_tf __extenddftf2
-# endif /* FLOAT */
+#ifdef TFLOAT
+# define add __addtf3
+# define sub __subtf3
+# define multiply __multf3
+# define divide __divtf3
+# define compare __cmptf2
+# define _eq_f2 __eqtf2
+# define _ne_f2 __netf2
+# define _gt_f2 __gttf2
+# define _ge_f2 __getf2
+# define _lt_f2 __lttf2
+# define _le_f2 __letf2
+# define _unord_f2 __unordtf2
+# define usi_to_float __floatunsitf
+# define si_to_float __floatsitf
+# define float_to_si __fixtfsi
+# define float_to_usi __fixunstfsi
+# define negate __negtf2
+# define tf_to_sf __trunctfsf2
+# define tf_to_df __trunctfdf2
+#elif defined FLOAT
+# define add __addsf3
+# define sub __subsf3
+# define multiply __mulsf3
+# define divide __divsf3
+# define compare __cmpsf2
+# define _eq_f2 __eqsf2
+# define _ne_f2 __nesf2
+# define _gt_f2 __gtsf2
+# define _ge_f2 __gesf2
+# define _lt_f2 __ltsf2
+# define _le_f2 __lesf2
+# define _unord_f2 __unordsf2
+# define usi_to_float __floatunsisf
+# define si_to_float __floatsisf
+# define float_to_si __fixsfsi
+# define float_to_usi __fixunssfsi
+# define negate __negsf2
+# define sf_to_df __extendsfdf2
+# define sf_to_tf __extendsftf2
#else
-# ifdef TFLOAT
-# define add __addtf3
-# define sub __subtf3
-# define multiply __multf3
-# define divide __divtf3
-# define compare __cmptf2
-# define _eq_f2 __eqtf2
-# define _ne_f2 __netf2
-# define _gt_f2 __gttf2
-# define _ge_f2 __getf2
-# define _lt_f2 __lttf2
-# define _le_f2 __letf2
-# define _unord_f2 __unordtf2
-# define usi_to_float __floatunsitf
-# define si_to_float __floatsitf
-# define float_to_si __fixtfsi
-# define float_to_usi __fixunstfsi
-# define negate __negtf2
-# define tf_to_sf __trunctfsf2
-# define tf_to_df __trunctfdf2
-# elif defined FLOAT
-# define add __addsf3
-# define sub __subsf3
-# define multiply __mulsf3
-# define divide __divsf3
-# define compare __cmpsf2
-# define _eq_f2 __eqsf2
-# define _ne_f2 __nesf2
-# define _gt_f2 __gtsf2
-# define _ge_f2 __gesf2
-# define _lt_f2 __ltsf2
-# define _le_f2 __lesf2
-# define _unord_f2 __unordsf2
-# define usi_to_float __floatunsisf
-# define si_to_float __floatsisf
-# define float_to_si __fixsfsi
-# define float_to_usi __fixunssfsi
-# define negate __negsf2
-# define sf_to_df __extendsfdf2
-# define sf_to_tf __extendsftf2
-# else
-# define add __adddf3
-# define sub __subdf3
-# define multiply __muldf3
-# define divide __divdf3
-# define compare __cmpdf2
-# define _eq_f2 __eqdf2
-# define _ne_f2 __nedf2
-# define _gt_f2 __gtdf2
-# define _ge_f2 __gedf2
-# define _lt_f2 __ltdf2
-# define _le_f2 __ledf2
-# define _unord_f2 __unorddf2
-# define usi_to_float __floatunsidf
-# define si_to_float __floatsidf
-# define float_to_si __fixdfsi
-# define float_to_usi __fixunsdfsi
-# define negate __negdf2
-# define df_to_sf __truncdfsf2
-# define df_to_tf __extenddftf2
-# endif /* FLOAT */
-#endif /* US_SOFTWARE_GOFAST */
+# define add __adddf3
+# define sub __subdf3
+# define multiply __muldf3
+# define divide __divdf3
+# define compare __cmpdf2
+# define _eq_f2 __eqdf2
+# define _ne_f2 __nedf2
+# define _gt_f2 __gtdf2
+# define _ge_f2 __gedf2
+# define _lt_f2 __ltdf2
+# define _le_f2 __ledf2
+# define _unord_f2 __unorddf2
+# define usi_to_float __floatunsidf
+# define si_to_float __floatsidf
+# define float_to_si __fixdfsi
+# define float_to_usi __fixunsdfsi
+# define negate __negdf2
+# define df_to_sf __truncdfsf2
+# define df_to_tf __extenddftf2
+#endif /* FLOAT */
#ifndef INLINE
#define INLINE __inline__
@@ -437,8 +404,6 @@ extern int __fpcmp_parts (fp_number_type *, fp_number_type *);
extern CMPtype compare (FLO_type, FLO_type);
#endif
-#ifndef US_SOFTWARE_GOFAST
-
#if defined(L_eq_sf) || defined(L_eq_df) || defined(L_eq_tf)
extern CMPtype _eq_f2 (FLO_type, FLO_type);
#endif
@@ -467,8 +432,6 @@ extern CMPtype _le_f2 (FLO_type, FLO_type);
extern CMPtype _unord_f2 (FLO_type, FLO_type);
#endif
-#endif /* ! US_SOFTWARE_GOFAST */
-
#if defined(L_si_to_sf) || defined(L_si_to_df) || defined(L_si_to_tf)
extern FLO_type si_to_float (SItype);
#endif
@@ -477,11 +440,9 @@ extern FLO_type si_to_float (SItype);
extern SItype float_to_si (FLO_type);
#endif
-#if defined(L_sf_to_usi) || defined(L_df_to_usi) || defined(L_tf_to_usi)
-#if defined(US_SOFTWARE_GOFAST) || defined(L_tf_to_usi)
+#if defined(L_tf_to_usi)
extern USItype float_to_usi (FLO_type);
#endif
-#endif
#if defined(L_usi_to_sf) || defined(L_usi_to_df) || defined(L_usi_to_tf)
extern FLO_type usi_to_float (USItype);
diff --git a/gcc/config/gofast.h b/gcc/config/gofast.h
deleted file mode 100644
index 69e9eddf009..00000000000
--- a/gcc/config/gofast.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/* US Software GOFAST floating point library support.
- Copyright (C) 1994, 1998, 1999, 2002, 2003, 2004, 2007
- Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
-
-GCC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING3. If not see
-<http://www.gnu.org/licenses/>. */
-
-/* The US Software GOFAST library requires special optabs support.
- This file is intended to be included by config/ARCH/ARCH.c. It
- defines one function, gofast_maybe_init_libfuncs, which should be
- called from the TARGET_INIT_LIBFUNCS hook. When tm.h has defined
- US_SOFTWARE_GOFAST, this function will adjust all the optabs and
- libfuncs appropriately. Otherwise it will do nothing. */
-
-static void
-gofast_maybe_init_libfuncs (void)
-{
-#ifdef US_SOFTWARE_GOFAST
- int mode;
-
- set_optab_libfunc (add_optab, SFmode, "fpadd");
- set_optab_libfunc (add_optab, DFmode, "dpadd");
- set_optab_libfunc (sub_optab, SFmode, "fpsub");
- set_optab_libfunc (sub_optab, DFmode, "dpsub");
- set_optab_libfunc (smul_optab, SFmode, "fpmul");
- set_optab_libfunc (smul_optab, DFmode, "dpmul");
- set_optab_libfunc (sdiv_optab, SFmode, "fpdiv");
- set_optab_libfunc (sdiv_optab, DFmode, "dpdiv");
- set_optab_libfunc (cmp_optab, SFmode, "fpcmp");
- set_optab_libfunc (cmp_optab, DFmode, "dpcmp");
-
- /* GOFAST does not provide libfuncs for negation, so we use the
- standard names. */
-
- /* GCC does not use fpcmp/dpcmp for gt or ge because its own
- FP-emulation library returns +1 for both > and unord. So we
- leave gt and ge unset, such that, instead of fpcmp(a,b) >[=], we
- generate fpcmp(b,a) <[=] 0, which is unambiguous. For unord
- libfuncs, we use our own functions, since GOFAST doesn't supply
- them. */
-
- set_optab_libfunc (eq_optab, SFmode, "fpcmp");
- set_optab_libfunc (ne_optab, SFmode, "fpcmp");
- set_optab_libfunc (gt_optab, SFmode, 0);
- set_optab_libfunc (ge_optab, SFmode, 0);
- set_optab_libfunc (lt_optab, SFmode, "fpcmp");
- set_optab_libfunc (le_optab, SFmode, "fpcmp");
-
- set_optab_libfunc (eq_optab, DFmode, "dpcmp");
- set_optab_libfunc (ne_optab, DFmode, "dpcmp");
- set_optab_libfunc (gt_optab, DFmode, 0);
- set_optab_libfunc (ge_optab, DFmode, 0);
- set_optab_libfunc (lt_optab, DFmode, "dpcmp");
- set_optab_libfunc (le_optab, DFmode, "dpcmp");
-
- set_conv_libfunc (sext_optab, DFmode, SFmode, "fptodp");
- set_conv_libfunc (trunc_optab, SFmode, DFmode, "dptofp");
-
- set_conv_libfunc (sfix_optab, SImode, SFmode, "fptosi");
- set_conv_libfunc (sfix_optab, SImode, DFmode, "dptoli");
- set_conv_libfunc (ufix_optab, SImode, SFmode, "fptoui");
- set_conv_libfunc (ufix_optab, SImode, DFmode, "dptoul");
-
- set_conv_libfunc (sfloat_optab, SFmode, SImode, "sitofp");
- set_conv_libfunc (sfloat_optab, DFmode, SImode, "litodp");
-#endif
-}
diff --git a/gcc/config/mips/elforion.h b/gcc/config/mips/elforion.h
index 71ea25f3eab..5560580c274 100644
--- a/gcc/config/mips/elforion.h
+++ b/gcc/config/mips/elforion.h
@@ -1,6 +1,5 @@
-/* Definitions of target machine for GNU compiler. MIPS ORION version with
- GOFAST floating point library.
- Copyright (C) 1994, 1998, 2007 Free Software Foundation, Inc.
+/* Definitions of target machine for GNU compiler. MIPS ORION version.
+ Copyright (C) 1994, 1998, 2007, 2010 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index 74f7a7951ec..883747ecba4 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -11149,8 +11149,6 @@ mips_preferred_simd_mode (enum machine_mode mode ATTRIBUTE_UNUSED)
/* Implement TARGET_INIT_LIBFUNCS. */
-#include "config/gofast.h"
-
static void
mips_init_libfuncs (void)
{
@@ -11209,9 +11207,6 @@ mips_init_libfuncs (void)
"__mips16_floatunsidf");
}
}
- else
- /* Register the gofast functions if selected using --enable-gofast. */
- gofast_maybe_init_libfuncs ();
/* The MIPS16 ISA does not have an encoding for "sync", so we rely
on an external non-MIPS16 routine to implement __sync_synchronize. */
diff --git a/gcc/config/mips/t-gofast b/gcc/config/mips/t-gofast
deleted file mode 100644
index ba5d61b8598..00000000000
--- a/gcc/config/mips/t-gofast
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright (C) 2002 Free Software Foundation, Inc.
-#
-# This file is part of GCC.
-#
-# GCC is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3, or (at your option)
-# any later version.
-#
-# GCC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-
-# We want fine grained libraries, so use the new code to build the
-# floating point emulation libraries.
-FPBIT = fp-bit.c
-DPBIT = dp-bit.c
-
-dp-bit.c: $(srcdir)/config/fp-bit.c
- echo '#ifdef __MIPSEL__' > dp-bit.c
- echo '#define FLOAT_BIT_ORDER_MISMATCH' >> dp-bit.c
- echo '#endif' >> dp-bit.c
- echo '#define US_SOFTWARE_GOFAST' >> dp-bit.c
- cat $(srcdir)/config/fp-bit.c >> dp-bit.c
-
-fp-bit.c: $(srcdir)/config/fp-bit.c
- echo '#define FLOAT' > fp-bit.c
- echo '#ifdef __MIPSEL__' >> fp-bit.c
- echo '#define FLOAT_BIT_ORDER_MISMATCH' >> fp-bit.c
- echo '#endif' >> fp-bit.c
- echo '#define US_SOFTWARE_GOFAST' >> fp-bit.c
- cat $(srcdir)/config/fp-bit.c >> fp-bit.c
diff --git a/gcc/config/mips/t-sr71k b/gcc/config/mips/t-sr71k
index 534da28fd99..5eb96a12e43 100644
--- a/gcc/config/mips/t-sr71k
+++ b/gcc/config/mips/t-sr71k
@@ -1,4 +1,4 @@
-# Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003, 2010 Free Software Foundation, Inc.
#
# This file is part of GCC.
#
@@ -49,7 +49,6 @@ dp-bit.c: $(srcdir)/config/fp-bit.c
echo '#ifdef __MIPSEL__' > dp-bit.c
echo '#define FLOAT_BIT_ORDER_MISMATCH' >> dp-bit.c
echo '#endif' >> dp-bit.c
- echo '#define US_SOFTWARE_GOFAST' >> dp-bit.c
cat $(srcdir)/config/fp-bit.c >> dp-bit.c
fp-bit.c: $(srcdir)/config/fp-bit.c
@@ -57,7 +56,6 @@ fp-bit.c: $(srcdir)/config/fp-bit.c
echo '#ifdef __MIPSEL__' >> fp-bit.c
echo '#define FLOAT_BIT_ORDER_MISMATCH' >> fp-bit.c
echo '#endif' >> fp-bit.c
- echo '#define US_SOFTWARE_GOFAST' >> fp-bit.c
cat $(srcdir)/config/fp-bit.c >> fp-bit.c
# Build the libraries for both hard and soft floating point
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index 223408def9e..b37b8519b14 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -8466,7 +8466,6 @@ sparc_function_ok_for_sibcall (tree decl, tree exp ATTRIBUTE_UNUSED)
}
/* libfunc renaming. */
-#include "config/gofast.h"
static void
sparc_init_libfuncs (void)
@@ -8560,8 +8559,6 @@ sparc_init_libfuncs (void)
set_conv_libfunc (ufix_optab, DImode, DFmode, "__dtoul");
}
}
-
- gofast_maybe_init_libfuncs ();
}
#define def_builtin(NAME, CODE, TYPE) \
diff --git a/gcc/config/spu/t-spu-elf b/gcc/config/spu/t-spu-elf
index cc8c94b387b..3bb54e428dd 100644
--- a/gcc/config/spu/t-spu-elf
+++ b/gcc/config/spu/t-spu-elf
@@ -1,4 +1,4 @@
-# Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free
@@ -55,12 +55,10 @@ FPBIT = fp-bit.c
DPBIT = dp-bit.c
dp-bit.c: $(srcdir)/config/fp-bit.c $(srcdir)/config/spu/t-spu-elf
- echo '#undef US_SOFTWARE_GOFAST' > dp-bit.c
cat $(srcdir)/config/fp-bit.c >> dp-bit.c
fp-bit.c: $(srcdir)/config/fp-bit.c $(srcdir)/config/spu/t-spu-elf
echo '#define FLOAT' > fp-bit.c
- echo '#undef US_SOFTWARE_GOFAST' >> fp-bit.c
cat $(srcdir)/config/fp-bit.c >> fp-bit.c
# Don't let CTOR_LIST end up in sdata section.
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index 32ffb8c1489..da8d14bc82d 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -5268,26 +5268,6 @@ If this macro evaluates to @code{false} the comparison functions return
in @file{libgcc.a}, you do not need to define this macro.
@end defmac
-@cindex US Software GOFAST, floating point emulation library
-@cindex floating point emulation library, US Software GOFAST
-@cindex GOFAST, floating point emulation library
-@findex gofast_maybe_init_libfuncs
-@defmac US_SOFTWARE_GOFAST
-Define this macro if your system C library uses the US Software GOFAST
-library to provide floating point emulation.
-
-In addition to defining this macro, your architecture must set
-@code{TARGET_INIT_LIBFUNCS} to @code{gofast_maybe_init_libfuncs}, or
-else call that function from its version of that hook. It is defined
-in @file{config/gofast.h}, which must be included by your
-architecture's @file{@var{cpu}.c} file. See @file{sparc/sparc.c} for
-an example.
-
-If this macro is defined, the
-@code{TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL} target hook must return
-false for @code{SFmode} and @code{DFmode} comparisons.
-@end defmac
-
@cindex @code{EDOM}, implicit usage
@findex matherr
@defmac TARGET_EDOM
diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
index b4ab96654e5..050b163fb4a 100644
--- a/gcc/doc/tm.texi.in
+++ b/gcc/doc/tm.texi.in
@@ -5250,26 +5250,6 @@ If this macro evaluates to @code{false} the comparison functions return
in @file{libgcc.a}, you do not need to define this macro.
@end defmac
-@cindex US Software GOFAST, floating point emulation library
-@cindex floating point emulation library, US Software GOFAST
-@cindex GOFAST, floating point emulation library
-@findex gofast_maybe_init_libfuncs
-@defmac US_SOFTWARE_GOFAST
-Define this macro if your system C library uses the US Software GOFAST
-library to provide floating point emulation.
-
-In addition to defining this macro, your architecture must set
-@code{TARGET_INIT_LIBFUNCS} to @code{gofast_maybe_init_libfuncs}, or
-else call that function from its version of that hook. It is defined
-in @file{config/gofast.h}, which must be included by your
-architecture's @file{@var{cpu}.c} file. See @file{sparc/sparc.c} for
-an example.
-
-If this macro is defined, the
-@code{TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL} target hook must return
-false for @code{SFmode} and @code{DFmode} comparisons.
-@end defmac
-
@cindex @code{EDOM}, implicit usage
@findex matherr
@defmac TARGET_EDOM
diff --git a/gcc/system.h b/gcc/system.h
index 081e076fc28..5724c5ef033 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -822,7 +822,7 @@ extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
SWITCH_CURTAILS_COMPILATION SWITCH_TAKES_ARG WORD_SWITCH_TAKES_ARG \
TARGET_OPTION_TRANSLATE_TABLE HANDLE_PRAGMA_PACK_PUSH_POP \
HANDLE_SYSV_PRAGMA HANDLE_PRAGMA_WEAK CONDITIONAL_REGISTER_USAGE \
- FUNCTION_ARG_BOUNDARY MUST_USE_SJLJ_EXCEPTIONS
+ FUNCTION_ARG_BOUNDARY MUST_USE_SJLJ_EXCEPTIONS US_SOFTWARE_GOFAST
/* Hooks that are no longer used. */
#pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE \