svn commit: r204439 - in user/jmallett/octeon: gnu/lib/libgcc lib/libc lib/libc/mips

Juli Mallett jmallett at FreeBSD.org
Sun Feb 28 03:53:28 UTC 2010


Author: jmallett
Date: Sun Feb 28 03:53:27 2010
New Revision: 204439
URL: http://svn.freebsd.org/changeset/base/204439

Log:
  Go back to using libgcc softfloat rather than libc softfloat since we need
  tfloat functions and libc doesn't provide them.  I'm probably just setting
  something wrong.  Maybe we just need SOFTFLOAT_BITS=64?  This would seem to
  be enough for further experimentation.

Modified:
  user/jmallett/octeon/gnu/lib/libgcc/Makefile
  user/jmallett/octeon/lib/libc/Makefile
  user/jmallett/octeon/lib/libc/mips/Makefile.inc

Modified: user/jmallett/octeon/gnu/lib/libgcc/Makefile
==============================================================================
--- user/jmallett/octeon/gnu/lib/libgcc/Makefile	Sun Feb 28 01:25:12 2010	(r204438)
+++ user/jmallett/octeon/gnu/lib/libgcc/Makefile	Sun Feb 28 03:53:27 2010	(r204439)
@@ -90,6 +90,11 @@ TPBIT_FUNCS = _pack_tf _unpack_tf _addsu
     _lt_tf _le_tf _unord_tf _si_to_tf _tf_to_si _negate_tf _make_tf \
     _tf_to_df _tf_to_sf _thenan_tf _tf_to_usi _usi_to_tf
 
+.if ${TARGET_ARCH} == "mips"
+FPBIT_FUNCS += _sf_to_tf
+DPBIT_FUNCS += _df_to_tf
+.endif
+
 # These might cause a divide overflow trap and so are compiled with
 # unwinder info.
 LIB2_DIVMOD_FUNCS = _divdi3 _moddi3 _udivdi3 _umoddi3 _udiv_w_sdiv _udivmoddi4
@@ -116,7 +121,8 @@ LIB2FUNCS_EXTRA = floatunsidf.c floatuns
 .endif
 
 .if ${TARGET_ARCH} == "mips"
-LIB2FUNCS_EXTRA = floatunsidf.c floatunsisf.c
+CFLAGS+=	-D__LDBL_MANT_DIG__=113
+#LIB2FUNCS_EXTRA = floatunsidf.c floatunsisf.c
 .endif
 
 .if ${TARGET_ARCH} == "ia64"
@@ -183,7 +189,7 @@ OBJ_GRPS =	STD DIV
 #
 # Floating point emulation functions
 #
-.if ${TARGET_ARCH} == "armNOT_YET" || \
+.if ${TARGET_ARCH} == "armNOT_YET" || ${TARGET_ARCH} == "mips" || \
     ${TARGET_ARCH} == "powerpc" || ${TARGET_ARCH} == "sparc64"
 
 FPBIT_CFLAGS =	-DFINE_GRAINED_LIBRARIES -DFLOAT
@@ -195,6 +201,14 @@ DPBIT_CFILE =	config/fp-bit.c
 OBJ_GRPS +=	FPBIT DPBIT
 .endif
 
+.if ${TARGET_ARCH} == "mips"
+TPBIT_CFLAGS =	-DFINE_GRAINED_LIBRARIES -DTFLOAT
+
+TPBIT_CFILE =	config/fp-bit.c
+
+OBJ_GRPS +=	TPBIT
+.endif
+
 #-----------------------------------------------------------------------
 #
 # Generic build rules for object groups defined above

Modified: user/jmallett/octeon/lib/libc/Makefile
==============================================================================
--- user/jmallett/octeon/lib/libc/Makefile	Sun Feb 28 01:25:12 2010	(r204438)
+++ user/jmallett/octeon/lib/libc/Makefile	Sun Feb 28 03:53:27 2010	(r204439)
@@ -64,7 +64,7 @@ NOASM=
 .include "${.CURDIR}/rpc/Makefile.inc"
 .include "${.CURDIR}/uuid/Makefile.inc"
 .include "${.CURDIR}/xdr/Makefile.inc"
-.if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "mips"
+.if ${MACHINE_ARCH} == "arm"
 .include "${.CURDIR}/softfloat/Makefile.inc"
 .endif
 .if ${MK_NIS} != "no"

Modified: user/jmallett/octeon/lib/libc/mips/Makefile.inc
==============================================================================
--- user/jmallett/octeon/lib/libc/mips/Makefile.inc	Sun Feb 28 01:25:12 2010	(r204438)
+++ user/jmallett/octeon/lib/libc/mips/Makefile.inc	Sun Feb 28 03:53:27 2010	(r204439)
@@ -1,9 +1,5 @@
 #	$NetBSD: Makefile.inc,v 1.7 2005/09/17 11:49:39 tsutsui Exp $
 # $FreeBSD$
 
-SOFTFLOAT_BITS=32
-
-CFLAGS+=-DSOFTFLOAT
-
 MDSRCS+= machdep_ldisd.c
 SYM_MAPS+= ${.CURDIR}/mips/Symbol.map


More information about the svn-src-user mailing list