From patchwork Tue Dec 14 20:21:15 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joseph Myers X-Patchwork-Id: 75530 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id B4704B6F14 for ; Wed, 15 Dec 2010 07:21:38 +1100 (EST) Received: (qmail 20219 invoked by alias); 14 Dec 2010 20:21:35 -0000 Received: (qmail 20071 invoked by uid 22791); 14 Dec 2010 20:21:29 -0000 X-SWARE-Spam-Status: No, hits=-1.3 required=5.0 tests=AWL, BAYES_00, TW_EQ, TW_FP, TW_GD, TW_GT, TW_QD, TW_QS, TW_QT, TW_TD, TW_VS, TW_VT, TW_XD, TW_XS, T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (38.113.113.100) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 14 Dec 2010 20:21:20 +0000 Received: (qmail 1761 invoked from network); 14 Dec 2010 20:21:17 -0000 Received: from unknown (HELO digraph.polyomino.org.uk) (joseph@127.0.0.2) by mail.codesourcery.com with ESMTPA; 14 Dec 2010 20:21:17 -0000 Received: from jsm28 (helo=localhost) by digraph.polyomino.org.uk with local-esmtp (Exim 4.72) (envelope-from ) id 1PSbN5-000418-3D for gcc-patches@gcc.gnu.org; Tue, 14 Dec 2010 20:21:15 +0000 Date: Tue, 14 Dec 2010 20:21:15 +0000 (UTC) From: "Joseph S. Myers" To: gcc-patches@gcc.gnu.org Subject: Remove US_SOFTWARE_GOFAST Message-ID: MIME-Version: 1.0 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org One thing shown up in going through config headers to find all options that need adding to .opt files was that we hadn't got round to removing US_SOFTWARE_GOFAST support. This patch removes that support. Tested building cc1 for crosses to mips-elf and sparc-elf. Will commit in the absence of any objections within the next 24 hours (this removal was preapproved in 2006 in bug 24998 comment 30). 2010-12-14 Joseph Myers * 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. Index: gcc/doc/tm.texi =================================================================== --- gcc/doc/tm.texi (revision 167746) +++ gcc/doc/tm.texi (working copy) @@ -5268,26 +5268,6 @@ If this macro evaluates to @code{false} 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 Index: gcc/doc/tm.texi.in =================================================================== --- gcc/doc/tm.texi.in (revision 167746) +++ gcc/doc/tm.texi.in (working copy) @@ -5250,26 +5250,6 @@ If this macro evaluates to @code{false} 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 Index: gcc/system.h =================================================================== --- gcc/system.h (revision 167746) +++ gcc/system.h (working copy) @@ -818,7 +818,7 @@ extern void fancy_abort (const char *, i 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 \ Index: gcc/config.gcc =================================================================== --- gcc/config.gcc (revision 167746) +++ gcc/config.gcc (working copy) @@ -3567,13 +3567,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-*-*) Index: gcc/config/spu/t-spu-elf =================================================================== --- gcc/config/spu/t-spu-elf (revision 167746) +++ gcc/config/spu/t-spu-elf (working copy) @@ -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. Index: gcc/config/sparc/sparc.c =================================================================== --- gcc/config/sparc/sparc.c (revision 167746) +++ gcc/config/sparc/sparc.c (working copy) @@ -8466,7 +8466,6 @@ sparc_function_ok_for_sibcall (tree decl } /* 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) \ Index: gcc/config/fp-bit.c =================================================================== --- gcc/config/fp-bit.c (revision 167746) +++ gcc/config/fp-bit.c (working copy) @@ -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.RUNTI 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 Index: gcc/config/fp-bit.h =================================================================== --- gcc/config/fp-bit.h (revision 167746) +++ gcc/config/fp-bit.h (working copy) @@ -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 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 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_typ 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); Index: gcc/config/gofast.h =================================================================== --- gcc/config/gofast.h (revision 167746) +++ gcc/config/gofast.h (working copy) @@ -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 -. */ - -/* 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 -} Index: gcc/config/mips/t-sr71k =================================================================== --- gcc/config/mips/t-sr71k (revision 167746) +++ gcc/config/mips/t-sr71k (working copy) @@ -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 Index: gcc/config/mips/t-gofast =================================================================== --- gcc/config/mips/t-gofast (revision 167746) +++ gcc/config/mips/t-gofast (working copy) @@ -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 -# . - -# 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 Index: gcc/config/mips/elforion.h =================================================================== --- gcc/config/mips/elforion.h (revision 167746) +++ gcc/config/mips/elforion.h (working copy) @@ -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. Index: gcc/config/mips/mips.c =================================================================== --- gcc/config/mips/mips.c (revision 167746) +++ gcc/config/mips/mips.c (working copy) @@ -11149,8 +11149,6 @@ mips_preferred_simd_mode (enum machine_m /* 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. */