This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

ARM/Linux soft float update


Once upon a time, ARM GNU/Linux used a separate floating point library named
libfloat.  Phil B. tells me that nobody seems to use it any more, and also
nowadays we have Nico's highly optimized software floating point
implementation.  This patch switches arm-unknown-linux-gnu to use the libgcc
floating point routines and not imply -lfloat.

OK?

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer

2004-04-20  Daniel Jacobowitz  <drow@mvista.com>

	PR target/14352
	* config/arm/t-linux (LIB1ASMFUNCS): Add soft floating point
	functions.
	* config/arm/linux-elf.h (LIBGCC_SPEC): Delete.

Index: config/arm/t-linux
===================================================================
RCS file: /big/fsf/rsync/gcc-cvs/gcc/gcc/config/arm/t-linux,v
retrieving revision 1.9
diff -u -p -r1.9 t-linux
--- a/config/arm/t-linux	20 Sep 2003 21:09:07 -0000	1.9
+++ b/config/arm/t-linux	20 Apr 2004 21:58:05 -0000
@@ -4,7 +4,10 @@ TARGET_LIBGCC2_CFLAGS = -fomit-frame-poi
 LIBGCC2_DEBUG_CFLAGS = -g0
 
 LIB1ASMSRC = arm/lib1funcs.asm
-LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx
+LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
+	_negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
+	_truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
+	_fixsfsi _fixunssfsi
 
 # MULTILIB_OPTIONS = mhard-float/msoft-float
 # MULTILIB_DIRNAMES = hard-float soft-float
Index: config/arm/linux-elf.h
===================================================================
RCS file: /big/fsf/rsync/gcc-cvs/gcc/gcc/config/arm/linux-elf.h,v
retrieving revision 1.47
diff -u -p -r1.47 linux-elf.h
--- a/config/arm/linux-elf.h	3 Feb 2004 14:44:11 -0000	1.47
+++ b/config/arm/linux-elf.h	20 Apr 2004 21:55:07 -0000
@@ -55,8 +55,6 @@
    %{shared:-lc} \
    %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
 
-#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
-
 /* Provide a STARTFILE_SPEC appropriate for GNU/Linux.  Here we add
    the GNU/Linux magical crtbegin.o file (see crtstuff.c) which
    provides part of the support for getting C++ file-scope static


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]