[Midnightbsd-cvs] src [10562] U trunk/lib/libc/softfloat/softfloat-specialize: sync
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Thu Jun 7 21:05:02 EDT 2018
Revision: 10562
http://svnweb.midnightbsd.org/src/?rev=10562
Author: laffer1
Date: 2018-06-07 21:05:01 -0400 (Thu, 07 Jun 2018)
Log Message:
-----------
sync
Modified Paths:
--------------
trunk/lib/libc/softfloat/Makefile.inc
trunk/lib/libc/softfloat/README.NetBSD
trunk/lib/libc/softfloat/README.txt
trunk/lib/libc/softfloat/Symbol.map
trunk/lib/libc/softfloat/bits32/softfloat-macros
trunk/lib/libc/softfloat/bits32/softfloat.c
trunk/lib/libc/softfloat/bits64/softfloat-macros
trunk/lib/libc/softfloat/bits64/softfloat.c
trunk/lib/libc/softfloat/eqdf2.c
trunk/lib/libc/softfloat/eqsf2.c
trunk/lib/libc/softfloat/fpgetmask.c
trunk/lib/libc/softfloat/fpgetround.c
trunk/lib/libc/softfloat/fpgetsticky.c
trunk/lib/libc/softfloat/fpsetmask.c
trunk/lib/libc/softfloat/fpsetround.c
trunk/lib/libc/softfloat/fpsetsticky.c
trunk/lib/libc/softfloat/gedf2.c
trunk/lib/libc/softfloat/gesf2.c
trunk/lib/libc/softfloat/gtdf2.c
trunk/lib/libc/softfloat/gtsf2.c
trunk/lib/libc/softfloat/ledf2.c
trunk/lib/libc/softfloat/lesf2.c
trunk/lib/libc/softfloat/ltdf2.c
trunk/lib/libc/softfloat/ltsf2.c
trunk/lib/libc/softfloat/nedf2.c
trunk/lib/libc/softfloat/negdf2.c
trunk/lib/libc/softfloat/negsf2.c
trunk/lib/libc/softfloat/nesf2.c
trunk/lib/libc/softfloat/softfloat-for-gcc.h
trunk/lib/libc/softfloat/softfloat-history.txt
trunk/lib/libc/softfloat/softfloat-specialize
Property Changed:
----------------
trunk/lib/libc/softfloat/Makefile.inc
trunk/lib/libc/softfloat/README.NetBSD
trunk/lib/libc/softfloat/README.txt
trunk/lib/libc/softfloat/Symbol.map
trunk/lib/libc/softfloat/bits32/softfloat-macros
trunk/lib/libc/softfloat/bits64/softfloat-macros
trunk/lib/libc/softfloat/softfloat-history.txt
trunk/lib/libc/softfloat/softfloat-specialize
Modified: trunk/lib/libc/softfloat/Makefile.inc
===================================================================
--- trunk/lib/libc/softfloat/Makefile.inc 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/Makefile.inc 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,11 +1,12 @@
-# $NetBSD: Makefile.inc,v 1.3 2003/05/06 08:58:20 rearnsha Exp $
-# $FreeBSD: src/lib/libc/softfloat/Makefile.inc,v 1.3 2006/03/13 01:14:59 deischen Exp $
+# $NetBSD: Makefile.inc,v 1.10 2011/07/04 02:53:15 mrg Exp $
+# $FreeBSD: stable/10/lib/libc/softfloat/Makefile.inc 230363 2012-01-20 06:16:14Z das $
+# $MidnightBSD$
SOFTFLOAT_BITS?=64
-.PATH: ${MACHINE_ARCH}/softfloat \
+.PATH: ${LIBC_ARCH}/softfloat \
${.CURDIR}/softfloat/bits${SOFTFLOAT_BITS} ${.CURDIR}/softfloat
-CFLAGS+= -I${.CURDIR}/${MACHINE_ARCH}/softfloat -I${.CURDIR}/softfloat
+CFLAGS+= -I${.CURDIR}/${LIBC_ARCH}/softfloat -I${.CURDIR}/softfloat
CFLAGS+= -DSOFTFLOAT_FOR_GCC
SRCS+= softfloat.c
@@ -17,4 +18,14 @@
eqdf2.c nedf2.c gtdf2.c gedf2.c ltdf2.c ledf2.c negdf2.c \
unordsf2.c unorddf2.c
+.if defined(SOFTFLOAT_128)
+CFLAGS+= -DFLOAT128
+SRCS+= eqtf2.c netf2.c gttf2.c getf2.c lttf2.c letf2.c negtf2.c
+.endif
+
+.if defined(SOFTFLOAT_X80)
+CFLAGS+= -DFLOATX80
+SRCS+= nexf2.c gtxf2.c gexf2.c negxf2.c
+.endif
+
SYM_MAPS+= ${.CURDIR}/softfloat/Symbol.map
Property changes on: trunk/lib/libc/softfloat/Makefile.inc
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Modified: trunk/lib/libc/softfloat/README.NetBSD
===================================================================
--- trunk/lib/libc/softfloat/README.NetBSD 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/README.NetBSD 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,5 +1,5 @@
$NetBSD: README.NetBSD,v 1.2 2002/05/21 23:51:05 bjh21 Exp $
-$FreeBSD: src/lib/libc/softfloat/README.NetBSD,v 1.1 2004/05/14 12:13:04 cognet Exp $
+$FreeBSD: stable/10/lib/libc/softfloat/README.NetBSD 129203 2004-05-14 12:13:06Z cognet $
This is a modified version of part of John Hauser's SoftFloat 2a package.
This version has been heavily modified to support its use with GCC to
Property changes on: trunk/lib/libc/softfloat/README.NetBSD
___________________________________________________________________
Added: mnbsd:nokeywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Modified: trunk/lib/libc/softfloat/README.txt
===================================================================
--- trunk/lib/libc/softfloat/README.txt 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/README.txt 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,5 +1,5 @@
$NetBSD: README.txt,v 1.1 2000/06/06 08:15:02 bjh21 Exp $
-$FreeBSD: src/lib/libc/softfloat/README.txt,v 1.1 2004/05/14 12:13:04 cognet Exp $
+$FreeBSD: stable/10/lib/libc/softfloat/README.txt 129203 2004-05-14 12:13:06Z cognet $
Package Overview for SoftFloat Release 2a
Property changes on: trunk/lib/libc/softfloat/README.txt
___________________________________________________________________
Added: mnbsd:nokeywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Modified: trunk/lib/libc/softfloat/Symbol.map
===================================================================
--- trunk/lib/libc/softfloat/Symbol.map 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/Symbol.map 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,5 +1,5 @@
-/*
- * $FreeBSD: src/lib/libc/softfloat/Symbol.map,v 1.2 2007/04/29 14:05:18 deischen Exp $
+/* $MidnightBSD$
+ * $FreeBSD: stable/10/lib/libc/softfloat/Symbol.map 230190 2012-01-16 04:06:56Z das $
*/
FBSD_1.0 {
@@ -18,16 +18,10 @@
};
FBSDprivate_1.0 {
- _softfloat_float_exception_flags;
- _softfloat_float_exception_mask;
- _softfloat_float_rounding_mode;
- _softfloat_float_raise;
- _softfloat_float32_eq;
- _softfloat_float32_le;
- _softfloat_float32_lt;
- _softfloat_float64_eq;
- _softfloat_float64_le;
- _softfloat_float64_lt;
+ __softfloat_float_exception_flags;
+ __softfloat_float_exception_mask;
+ __softfloat_float_rounding_mode;
+ __softfloat_float_raise;
__eqdf2;
__eqsf2;
__gedf2;
Property changes on: trunk/lib/libc/softfloat/Symbol.map
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Modified: trunk/lib/libc/softfloat/bits32/softfloat-macros
===================================================================
--- trunk/lib/libc/softfloat/bits32/softfloat-macros 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/bits32/softfloat-macros 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/lib/libc/softfloat/bits32/softfloat-macros,v 1.1 2004/05/14 12:13:05 cognet Exp $ */
+/* $FreeBSD: stable/10/lib/libc/softfloat/bits32/softfloat-macros 230363 2012-01-20 06:16:14Z das $ */
/*
===============================================================================
@@ -312,7 +312,7 @@
carry0 = ( z1 < a1 );
z0 = a0 + b0;
z1 += carry1;
- z0 += ( z1 < carry1 );
+ z0 += ( z1 < (bits32)carry1 );
z0 += carry0;
*z2Ptr = z2;
*z1Ptr = z1;
@@ -369,7 +369,7 @@
z1 = a1 - b1;
borrow0 = ( a1 < b1 );
z0 = a0 - b0;
- z0 -= ( z1 < borrow1 );
+ z0 -= ( z1 < (bits32)borrow1 );
z1 -= borrow1;
z0 -= borrow0;
*z2Ptr = z2;
Property changes on: trunk/lib/libc/softfloat/bits32/softfloat-macros
___________________________________________________________________
Added: mnbsd:nokeywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Modified: trunk/lib/libc/softfloat/bits32/softfloat.c
===================================================================
--- trunk/lib/libc/softfloat/bits32/softfloat.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/bits32/softfloat.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: softfloat.c,v 1.1 2002/05/21 23:51:07 bjh21 Exp $ */
/*
@@ -52,7 +53,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/bits32/softfloat.c,v 1.2 2004/12/08 18:41:42 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/bits32/softfloat.c 230189 2012-01-16 04:05:53Z das $");
#ifdef SOFTFLOAT_FOR_GCC
#include "softfloat-for-gcc.h"
@@ -77,8 +78,8 @@
Floating-point rounding mode and exception flags.
-------------------------------------------------------------------------------
*/
-fp_rnd_t float_rounding_mode = float_round_nearest_even;
-fp_except float_exception_flags = 0;
+int float_rounding_mode = float_round_nearest_even;
+int float_exception_flags = 0;
/*
-------------------------------------------------------------------------------
Modified: trunk/lib/libc/softfloat/bits64/softfloat-macros
===================================================================
--- trunk/lib/libc/softfloat/bits64/softfloat-macros 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/bits64/softfloat-macros 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,5 +1,5 @@
-/* $NetBSD: softfloat-macros,v 1.1 2002/05/21 23:51:08 bjh21 Exp $ */
-/* $FreeBSD: src/lib/libc/softfloat/bits64/softfloat-macros,v 1.1 2004/05/14 12:13:05 cognet Exp $ */
+/* $NetBSD: softfloat-macros,v 1.2 2009/02/16 10:23:35 tron Exp $ */
+/* $FreeBSD: stable/10/lib/libc/softfloat/bits64/softfloat-macros 230363 2012-01-20 06:16:14Z das $ */
/*
===============================================================================
@@ -387,7 +387,7 @@
carry0 = ( z1 < a1 );
z0 = a0 + b0;
z1 += carry1;
- z0 += ( z1 < carry1 );
+ z0 += ( z1 < (bits64)carry1 );
z0 += carry0;
*z2Ptr = z2;
*z1Ptr = z1;
@@ -444,7 +444,7 @@
z1 = a1 - b1;
borrow0 = ( a1 < b1 );
z0 = a0 - b0;
- z0 -= ( z1 < borrow1 );
+ z0 -= ( z1 < (bits64)borrow1 );
z1 -= borrow1;
z0 -= borrow0;
*z2Ptr = z2;
Property changes on: trunk/lib/libc/softfloat/bits64/softfloat-macros
___________________________________________________________________
Added: mnbsd:nokeywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Modified: trunk/lib/libc/softfloat/bits64/softfloat.c
===================================================================
--- trunk/lib/libc/softfloat/bits64/softfloat.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/bits64/softfloat.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,4 +1,5 @@
-/* $NetBSD: softfloat.c,v 1.2 2003/07/26 19:24:52 salo Exp $ */
+/* $MidnightBSD$ */
+/* $NetBSD: softfloat.c,v 1.8 2011/07/10 04:52:23 matt Exp $ */
/*
* This version hacked for use with gcc -msoft-float by bjh21.
@@ -45,7 +46,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/bits64/softfloat.c,v 1.1 2004/05/14 12:13:05 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/bits64/softfloat.c 230380 2012-01-20 14:44:21Z das $");
#ifdef SOFTFLOAT_FOR_GCC
#include "softfloat-for-gcc.h"
@@ -71,8 +72,8 @@
and exception flags.
-------------------------------------------------------------------------------
*/
-fp_rnd_t float_rounding_mode = float_round_nearest_even;
-fp_except float_exception_flags = 0;
+int float_rounding_mode = float_round_nearest_even;
+int float_exception_flags = 0;
#ifdef FLOATX80
int8 floatx80_rounding_precision = 80;
#endif
@@ -1126,6 +1127,17 @@
}
+#ifndef SOFTFLOAT_FOR_GCC /* __floatunsisf is in libgcc */
+float32 uint32_to_float32( uint32 a )
+{
+ if ( a == 0 ) return 0;
+ if ( a & (bits32) 0x80000000 )
+ return normalizeRoundAndPackFloat32( 0, 0x9D, a >> 1 );
+ return normalizeRoundAndPackFloat32( 0, 0x9C, a );
+}
+#endif
+
+
/*
-------------------------------------------------------------------------------
Returns the result of converting the 32-bit two's complement integer `a'
@@ -1149,6 +1161,19 @@
}
+#ifndef SOFTFLOAT_FOR_GCC /* __floatunsidf is in libgcc */
+float64 uint32_to_float64( uint32 a )
+{
+ int8 shiftCount;
+ bits64 zSig = a;
+
+ if ( a == 0 ) return 0;
+ shiftCount = countLeadingZeros32( a ) + 21;
+ return packFloat64( 0, 0x432 - shiftCount, zSig<<shiftCount );
+
+}
+#endif
+
#ifdef FLOATX80
/*
@@ -1175,6 +1200,17 @@
}
+floatx80 uint32_to_floatx80( uint32 a )
+{
+ int8 shiftCount;
+ bits64 zSig = a;
+
+ if ( a == 0 ) return packFloatx80( 0, 0, 0 );
+ shiftCount = countLeadingZeros32( a ) + 32;
+ return packFloatx80( 0, 0x403E - shiftCount, zSig<<shiftCount );
+
+}
+
#endif
#ifdef FLOAT128
@@ -1202,6 +1238,17 @@
}
+float128 uint32_to_float128( uint32 a )
+{
+ int8 shiftCount;
+ bits64 zSig0 = a;
+
+ if ( a == 0 ) return packFloat128( 0, 0, 0, 0 );
+ shiftCount = countLeadingZeros32( a ) + 17;
+ return packFloat128( 0, 0x402E - shiftCount, zSig0<<shiftCount, 0 );
+
+}
+
#endif
#ifndef SOFTFLOAT_FOR_GCC /* __floatdi?f is in libgcc2.c */
@@ -4438,7 +4485,60 @@
}
+#if (defined(SOFTFLOATSPARC64_FOR_GCC) || defined(SOFTFLOAT_FOR_GCC)) \
+ && defined(SOFTFLOAT_NEED_FIXUNS)
/*
+ * just like above - but do not care for overflow of signed results
+ */
+uint64 float128_to_uint64_round_to_zero( float128 a )
+{
+ flag aSign;
+ int32 aExp, shiftCount;
+ bits64 aSig0, aSig1;
+ uint64 z;
+
+ aSig1 = extractFloat128Frac1( a );
+ aSig0 = extractFloat128Frac0( a );
+ aExp = extractFloat128Exp( a );
+ aSign = extractFloat128Sign( a );
+ if ( aExp ) aSig0 |= LIT64( 0x0001000000000000 );
+ shiftCount = aExp - 0x402F;
+ if ( 0 < shiftCount ) {
+ if ( 0x403F <= aExp ) {
+ aSig0 &= LIT64( 0x0000FFFFFFFFFFFF );
+ if ( ( a.high == LIT64( 0xC03E000000000000 ) )
+ && ( aSig1 < LIT64( 0x0002000000000000 ) ) ) {
+ if ( aSig1 ) float_exception_flags |= float_flag_inexact;
+ }
+ else {
+ float_raise( float_flag_invalid );
+ }
+ return LIT64( 0xFFFFFFFFFFFFFFFF );
+ }
+ z = ( aSig0<<shiftCount ) | ( aSig1>>( ( - shiftCount ) & 63 ) );
+ if ( (bits64) ( aSig1<<shiftCount ) ) {
+ float_exception_flags |= float_flag_inexact;
+ }
+ }
+ else {
+ if ( aExp < 0x3FFF ) {
+ if ( aExp | aSig0 | aSig1 ) {
+ float_exception_flags |= float_flag_inexact;
+ }
+ return 0;
+ }
+ z = aSig0>>( - shiftCount );
+ if (aSig1 || ( shiftCount && (bits64) ( aSig0<<( shiftCount & 63 ) ) ) ) {
+ float_exception_flags |= float_flag_inexact;
+ }
+ }
+ if ( aSign ) z = - z;
+ return z;
+
+}
+#endif /* (SOFTFLOATSPARC64_FOR_GCC || SOFTFLOAT_FOR_GCC) && SOFTFLOAT_NEED_FIXUNS */
+
+/*
-------------------------------------------------------------------------------
Returns the result of converting the quadruple-precision floating-point
value `a' to the single-precision floating-point format. The conversion
@@ -5110,7 +5210,7 @@
sub128( aSig0, aSig1, bSig0, bSig1, &aSig0, &aSig1 );
} while ( 0 <= (sbits64) aSig0 );
add128(
- aSig0, aSig1, alternateASig0, alternateASig1, &sigMean0, &sigMean1 );
+ aSig0, aSig1, alternateASig0, alternateASig1, (bits64 *)&sigMean0, &sigMean1 );
if ( ( sigMean0 < 0 )
|| ( ( ( sigMean0 | sigMean1 ) == 0 ) && ( q & 1 ) ) ) {
aSig0 = alternateASig0;
Modified: trunk/lib/libc/softfloat/eqdf2.c
===================================================================
--- trunk/lib/libc/softfloat/eqdf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/eqdf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: eqdf2.c,v 1.1 2000/06/06 08:15:02 bjh21 Exp $ */
/*
@@ -5,7 +6,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/eqdf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/eqdf2.c 129203 2004-05-14 12:13:06Z cognet $");
#include "softfloat-for-gcc.h"
#include "milieu.h"
Modified: trunk/lib/libc/softfloat/eqsf2.c
===================================================================
--- trunk/lib/libc/softfloat/eqsf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/eqsf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: eqsf2.c,v 1.1 2000/06/06 08:15:03 bjh21 Exp $ */
/*
@@ -5,7 +6,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/eqsf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/eqsf2.c 129203 2004-05-14 12:13:06Z cognet $");
#include "softfloat-for-gcc.h"
#include "milieu.h"
Modified: trunk/lib/libc/softfloat/fpgetmask.c
===================================================================
--- trunk/lib/libc/softfloat/fpgetmask.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/fpgetmask.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,4 +1,5 @@
-/* $NetBSD: fpgetmask.c,v 1.3 2002/05/12 13:12:45 bjh21 Exp $ */
+/* $MidnightBSD$ */
+/* $NetBSD: fpgetmask.c,v 1.4 2008/04/28 20:23:00 martin Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@@ -15,13 +16,6 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the NetBSD
- * Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
@@ -37,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/fpgetmask.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/fpgetmask.c 189647 2009-03-10 21:13:26Z delphij $");
#include "namespace.h"
Modified: trunk/lib/libc/softfloat/fpgetround.c
===================================================================
--- trunk/lib/libc/softfloat/fpgetround.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/fpgetround.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,4 +1,5 @@
-/* $NetBSD: fpgetround.c,v 1.2 2002/01/13 21:45:53 thorpej Exp $ */
+/* $MidnightBSD$ */
+/* $NetBSD: fpgetround.c,v 1.3 2008/04/28 20:23:00 martin Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@@ -15,13 +16,6 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the NetBSD
- * Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
@@ -37,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/fpgetround.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/fpgetround.c 189647 2009-03-10 21:13:26Z delphij $");
#include "namespace.h"
Modified: trunk/lib/libc/softfloat/fpgetsticky.c
===================================================================
--- trunk/lib/libc/softfloat/fpgetsticky.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/fpgetsticky.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,4 +1,5 @@
-/* $NetBSD: fpgetsticky.c,v 1.2 2002/01/13 21:45:53 thorpej Exp $ */
+/* $MidnightBSD$ */
+/* $NetBSD: fpgetsticky.c,v 1.3 2008/04/28 20:23:00 martin Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@@ -15,13 +16,6 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the NetBSD
- * Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
@@ -37,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/fpgetsticky.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/fpgetsticky.c 189647 2009-03-10 21:13:26Z delphij $");
#include "namespace.h"
Modified: trunk/lib/libc/softfloat/fpsetmask.c
===================================================================
--- trunk/lib/libc/softfloat/fpsetmask.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/fpsetmask.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,4 +1,5 @@
-/* $NetBSD: fpsetmask.c,v 1.3 2002/05/12 13:12:45 bjh21 Exp $ */
+/* $MidnightBSD$ */
+/* $NetBSD: fpsetmask.c,v 1.4 2008/04/28 20:23:00 martin Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@@ -15,13 +16,6 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the NetBSD
- * Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
@@ -37,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/fpsetmask.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/fpsetmask.c 189647 2009-03-10 21:13:26Z delphij $");
#include "namespace.h"
Modified: trunk/lib/libc/softfloat/fpsetround.c
===================================================================
--- trunk/lib/libc/softfloat/fpsetround.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/fpsetround.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,4 +1,5 @@
-/* $NetBSD: fpsetround.c,v 1.2 2002/01/13 21:45:53 thorpej Exp $ */
+/* $MidnightBSD$ */
+/* $NetBSD: fpsetround.c,v 1.3 2008/04/28 20:23:00 martin Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@@ -15,13 +16,6 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the NetBSD
- * Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
@@ -37,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/fpsetround.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/fpsetround.c 189647 2009-03-10 21:13:26Z delphij $");
#include "namespace.h"
Modified: trunk/lib/libc/softfloat/fpsetsticky.c
===================================================================
--- trunk/lib/libc/softfloat/fpsetsticky.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/fpsetsticky.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,4 +1,5 @@
-/* $NetBSD: fpsetsticky.c,v 1.2 2002/01/13 21:45:54 thorpej Exp $ */
+/* $MidnightBSD$ */
+/* $NetBSD: fpsetsticky.c,v 1.3 2008/04/28 20:23:00 martin Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@@ -15,13 +16,6 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the NetBSD
- * Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
@@ -37,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/fpsetsticky.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/fpsetsticky.c 189647 2009-03-10 21:13:26Z delphij $");
#include "namespace.h"
Modified: trunk/lib/libc/softfloat/gedf2.c
===================================================================
--- trunk/lib/libc/softfloat/gedf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/gedf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: gedf2.c,v 1.1 2000/06/06 08:15:05 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/gedf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/gedf2.c 129203 2004-05-14 12:13:06Z cognet $");
flag __gedf2(float64, float64);
Modified: trunk/lib/libc/softfloat/gesf2.c
===================================================================
--- trunk/lib/libc/softfloat/gesf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/gesf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: gesf2.c,v 1.1 2000/06/06 08:15:05 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/gesf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/gesf2.c 129203 2004-05-14 12:13:06Z cognet $");
flag __gesf2(float32, float32);
Modified: trunk/lib/libc/softfloat/gtdf2.c
===================================================================
--- trunk/lib/libc/softfloat/gtdf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/gtdf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: gtdf2.c,v 1.1 2000/06/06 08:15:05 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/gtdf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/gtdf2.c 129203 2004-05-14 12:13:06Z cognet $");
flag __gtdf2(float64, float64);
Modified: trunk/lib/libc/softfloat/gtsf2.c
===================================================================
--- trunk/lib/libc/softfloat/gtsf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/gtsf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: gtsf2.c,v 1.1 2000/06/06 08:15:06 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/gtsf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/gtsf2.c 129203 2004-05-14 12:13:06Z cognet $");
flag __gtsf2(float32, float32);
Modified: trunk/lib/libc/softfloat/ledf2.c
===================================================================
--- trunk/lib/libc/softfloat/ledf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/ledf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: ledf2.c,v 1.1 2000/06/06 08:15:06 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/ledf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/ledf2.c 129203 2004-05-14 12:13:06Z cognet $");
flag __ledf2(float64, float64);
Modified: trunk/lib/libc/softfloat/lesf2.c
===================================================================
--- trunk/lib/libc/softfloat/lesf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/lesf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: lesf2.c,v 1.1 2000/06/06 08:15:06 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/lesf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/lesf2.c 129203 2004-05-14 12:13:06Z cognet $");
flag __lesf2(float32, float32);
Modified: trunk/lib/libc/softfloat/ltdf2.c
===================================================================
--- trunk/lib/libc/softfloat/ltdf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/ltdf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: ltdf2.c,v 1.1 2000/06/06 08:15:06 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/ltdf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/ltdf2.c 129203 2004-05-14 12:13:06Z cognet $");
flag __ltdf2(float64, float64);
Modified: trunk/lib/libc/softfloat/ltsf2.c
===================================================================
--- trunk/lib/libc/softfloat/ltsf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/ltsf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: ltsf2.c,v 1.1 2000/06/06 08:15:06 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/ltsf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/ltsf2.c 129203 2004-05-14 12:13:06Z cognet $");
flag __ltsf2(float32, float32);
Modified: trunk/lib/libc/softfloat/nedf2.c
===================================================================
--- trunk/lib/libc/softfloat/nedf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/nedf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: nedf2.c,v 1.1 2000/06/06 08:15:07 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/nedf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/nedf2.c 129203 2004-05-14 12:13:06Z cognet $");
flag __nedf2(float64, float64);
Modified: trunk/lib/libc/softfloat/negdf2.c
===================================================================
--- trunk/lib/libc/softfloat/negdf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/negdf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: negdf2.c,v 1.1 2000/06/06 08:15:07 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/negdf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/negdf2.c 129203 2004-05-14 12:13:06Z cognet $");
float64 __negdf2(float64);
Modified: trunk/lib/libc/softfloat/negsf2.c
===================================================================
--- trunk/lib/libc/softfloat/negsf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/negsf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: negsf2.c,v 1.1 2000/06/06 08:15:07 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/negsf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/negsf2.c 129203 2004-05-14 12:13:06Z cognet $");
float32 __negsf2(float32);
Modified: trunk/lib/libc/softfloat/nesf2.c
===================================================================
--- trunk/lib/libc/softfloat/nesf2.c 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/nesf2.c 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/* $NetBSD: nesf2.c,v 1.1 2000/06/06 08:15:07 bjh21 Exp $ */
/*
@@ -9,7 +10,7 @@
#include "softfloat.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/softfloat/nesf2.c,v 1.1 2004/05/14 12:13:04 cognet Exp $");
+__FBSDID("$FreeBSD: stable/10/lib/libc/softfloat/nesf2.c 129203 2004-05-14 12:13:06Z cognet $");
flag __nesf2(float32, float32);
Modified: trunk/lib/libc/softfloat/softfloat-for-gcc.h
===================================================================
--- trunk/lib/libc/softfloat/softfloat-for-gcc.h 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/softfloat-for-gcc.h 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,21 +1,25 @@
-/* $NetBSD: softfloat-for-gcc.h,v 1.6 2003/07/26 19:24:51 salo Exp $ */
-/* $FreeBSD: src/lib/libc/softfloat/softfloat-for-gcc.h,v 1.1 2004/05/14 12:13:04 cognet Exp $ */
+/* $MidnightBSD$ */
+/* $NetBSD: softfloat-for-gcc.h,v 1.8 2009/12/14 01:07:42 matt Exp $ */
+/* $FreeBSD: stable/10/lib/libc/softfloat/softfloat-for-gcc.h 230363 2012-01-20 06:16:14Z das $ */
/*
* Move private identifiers with external linkage into implementation
* namespace. -- Klaus Klein <kleink at NetBSD.org>, May 5, 1999
*/
-#define float_exception_flags _softfloat_float_exception_flags
-#define float_exception_mask _softfloat_float_exception_mask
-#define float_rounding_mode _softfloat_float_rounding_mode
-#define float_raise _softfloat_float_raise
+#define float_exception_flags __softfloat_float_exception_flags
+#define float_exception_mask __softfloat_float_exception_mask
+#define float_rounding_mode __softfloat_float_rounding_mode
+#define float_raise __softfloat_float_raise
/* The following batch are called by GCC through wrappers */
-#define float32_eq _softfloat_float32_eq
-#define float32_le _softfloat_float32_le
-#define float32_lt _softfloat_float32_lt
-#define float64_eq _softfloat_float64_eq
-#define float64_le _softfloat_float64_le
-#define float64_lt _softfloat_float64_lt
+#define float32_eq __softfloat_float32_eq
+#define float32_le __softfloat_float32_le
+#define float32_lt __softfloat_float32_lt
+#define float64_eq __softfloat_float64_eq
+#define float64_le __softfloat_float64_le
+#define float64_lt __softfloat_float64_lt
+#define float128_eq __softfloat_float128_eq
+#define float128_le __softfloat_float128_le
+#define float128_lt __softfloat_float128_lt
/*
* Macros to define functions with the GCC expected names
@@ -23,21 +27,144 @@
#define float32_add __addsf3
#define float64_add __adddf3
+#define floatx80_add __addxf3
+#define float128_add __addtf3
+
#define float32_sub __subsf3
#define float64_sub __subdf3
+#define floatx80_sub __subxf3
+#define float128_sub __subtf3
+
#define float32_mul __mulsf3
#define float64_mul __muldf3
+#define floatx80_mul __mulxf3
+#define float128_mul __multf3
+
#define float32_div __divsf3
#define float64_div __divdf3
+#define floatx80_div __divxf3
+#define float128_div __divtf3
+
+#if 0
+#define float32_neg __negsf2
+#define float64_neg __negdf2
+#define floatx80_neg __negxf2
+#define float128_neg __negtf2
+#endif
+
#define int32_to_float32 __floatsisf
#define int32_to_float64 __floatsidf
+#define int32_to_floatx80 __floatsixf
+#define int32_to_float128 __floatsitf
+
#define int64_to_float32 __floatdisf
#define int64_to_float64 __floatdidf
+#define int64_to_floatx80 __floatdixf
+#define int64_to_float128 __floatditf
+
+#define int128_to_float32 __floattisf
+#define int128_to_float64 __floattidf
+#define int128_to_floatx80 __floattixf
+#define int128_to_float128 __floattitf
+
+#define uint32_to_float32 __floatunsisf
+#define uint32_to_float64 __floatunsidf
+#define uint32_to_floatx80 __floatunsixf
+#define uint32_to_float128 __floatunsitf
+
+#define uint64_to_float32 __floatundisf
+#define uint64_to_float64 __floatundidf
+#define uint64_to_floatx80 __floatundixf
+#define uint64_to_float128 __floatunditf
+
+#define uint128_to_float32 __floatuntisf
+#define uint128_to_float64 __floatuntidf
+#define uint128_to_floatx80 __floatuntixf
+#define uint128_to_float128 __floatuntitf
+
#define float32_to_int32_round_to_zero __fixsfsi
#define float64_to_int32_round_to_zero __fixdfsi
+#define floatx80_to_int32_round_to_zero __fixxfsi
+#define float128_to_int32_round_to_zero __fixtfsi
+
#define float32_to_int64_round_to_zero __fixsfdi
#define float64_to_int64_round_to_zero __fixdfdi
+#define floatx80_to_int64_round_to_zero __fixxfdi
+#define float128_to_int64_round_to_zero __fixtfdi
+
+#define float32_to_int128_round_to_zero __fixsfti
+#define float64_to_int128_round_to_zero __fixdfti
+#define floatx80_to_int128_round_to_zero __fixxfti
+#define float128_to_int128_round_to_zero __fixtfti
+
#define float32_to_uint32_round_to_zero __fixunssfsi
#define float64_to_uint32_round_to_zero __fixunsdfsi
+#define floatx80_to_uint32_round_to_zero __fixunsxfsi
+#define float128_to_uint32_round_to_zero __fixunstfsi
+
+#define float32_to_uint64_round_to_zero __fixunssfdi
+#define float64_to_uint64_round_to_zero __fixunsdfdi
+#define floatx80_to_uint64_round_to_zero __fixunsxfdi
+#define float128_to_uint64_round_to_zero __fixunstfdi
+
+#define float32_to_uint128_round_to_zero __fixunssfti
+#define float64_to_uint128_round_to_zero __fixunsdfti
+#define floatx80_to_uint128_round_to_zero __fixunsxfti
+#define float128_to_uint128_round_to_zero __fixunstfti
+
#define float32_to_float64 __extendsfdf2
+#define float32_to_floatx80 __extendsfxf2
+#define float32_to_float128 __extendsftf2
+#define float64_to_floatx80 __extenddfxf2
+#define float64_to_float128 __extenddftf2
+
+#define float128_to_float64 __trunctfdf2
+#define floatx80_to_float64 __truncxfdf2
+#define float128_to_float32 __trunctfsf2
+#define floatx80_to_float32 __truncxfsf2
#define float64_to_float32 __truncdfsf2
+
+#if 0
+#define float32_cmp __cmpsf2
+#define float32_unord __unordsf2
+#define float32_eq __eqsf2
+#define float32_ne __nesf2
+#define float32_ge __gesf2
+#define float32_lt __ltsf2
+#define float32_le __lesf2
+#define float32_gt __gtsf2
+#endif
+
+#if 0
+#define float64_cmp __cmpdf2
+#define float64_unord __unorddf2
+#define float64_eq __eqdf2
+#define float64_ne __nedf2
+#define float64_ge __gedf2
+#define float64_lt __ltdf2
+#define float64_le __ledf2
+#define float64_gt __gtdf2
+#endif
+
+/* XXX not in libgcc */
+#if 1
+#define floatx80_cmp __cmpxf2
+#define floatx80_unord __unordxf2
+#define floatx80_eq __eqxf2
+#define floatx80_ne __nexf2
+#define floatx80_ge __gexf2
+#define floatx80_lt __ltxf2
+#define floatx80_le __lexf2
+#define floatx80_gt __gtxf2
+#endif
+
+#if 0
+#define float128_cmp __cmptf2
+#define float128_unord __unordtf2
+#define float128_eq __eqtf2
+#define float128_ne __netf2
+#define float128_ge __getf2
+#define float128_lt __lttf2
+#define float128_le __letf2
+#define float128_gt __gttf2
+#endif
Modified: trunk/lib/libc/softfloat/softfloat-history.txt
===================================================================
--- trunk/lib/libc/softfloat/softfloat-history.txt 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/softfloat-history.txt 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,5 +1,5 @@
$NetBSD: softfloat-history.txt,v 1.1 2000/06/06 08:15:08 bjh21 Exp $
-$FreeBSD: src/lib/libc/softfloat/softfloat-history.txt,v 1.1 2004/05/14 12:13:04 cognet Exp $
+$FreeBSD: stable/10/lib/libc/softfloat/softfloat-history.txt 129203 2004-05-14 12:13:06Z cognet $
History of Major Changes to SoftFloat, up to Release 2a
Property changes on: trunk/lib/libc/softfloat/softfloat-history.txt
___________________________________________________________________
Added: mnbsd:nokeywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Modified: trunk/lib/libc/softfloat/softfloat-specialize
===================================================================
--- trunk/lib/libc/softfloat/softfloat-specialize 2018-06-08 01:02:20 UTC (rev 10561)
+++ trunk/lib/libc/softfloat/softfloat-specialize 2018-06-08 01:05:01 UTC (rev 10562)
@@ -1,5 +1,5 @@
-/* $NetBSD: softfloat-specialize,v 1.3 2002/05/12 13:12:45 bjh21 Exp $ */
-/* $FreeBSD: src/lib/libc/softfloat/softfloat-specialize,v 1.1 2004/05/14 12:13:04 cognet Exp $ */
+/* $NetBSD: softfloat-specialize,v 1.6 2011/03/06 10:27:37 martin Exp $ */
+/* $FreeBSD: stable/10/lib/libc/softfloat/softfloat-specialize 230363 2012-01-20 06:16:14Z das $ */
/* This is a derivative work. */
@@ -34,6 +34,8 @@
*/
#include <signal.h>
+#include <string.h>
+#include <unistd.h>
/*
-------------------------------------------------------------------------------
@@ -44,7 +46,11 @@
#ifdef SOFTFLOAT_FOR_GCC
static
#endif
+#ifdef __sparc64__
+int8 float_detect_tininess = float_tininess_before_rounding;
+#else
int8 float_detect_tininess = float_tininess_after_rounding;
+#endif
/*
-------------------------------------------------------------------------------
@@ -54,16 +60,39 @@
should be simply `float_exception_flags |= flags;'.
-------------------------------------------------------------------------------
*/
-fp_except float_exception_mask = 0;
-void float_raise( fp_except flags )
+#ifdef SOFTFLOAT_FOR_GCC
+#define float_exception_mask __softfloat_float_exception_mask
+#endif
+int float_exception_mask = 0;
+void float_raise( int flags )
{
float_exception_flags |= flags;
if ( flags & float_exception_mask ) {
+#if 0
+ siginfo_t info;
+ memset(&info, 0, sizeof info);
+ info.si_signo = SIGFPE;
+ info.si_pid = getpid();
+ info.si_uid = geteuid();
+ if (flags & float_flag_underflow)
+ info.si_code = FPE_FLTUND;
+ else if (flags & float_flag_overflow)
+ info.si_code = FPE_FLTOVF;
+ else if (flags & float_flag_divbyzero)
+ info.si_code = FPE_FLTDIV;
+ else if (flags & float_flag_invalid)
+ info.si_code = FPE_FLTINV;
+ else if (flags & float_flag_inexact)
+ info.si_code = FPE_FLTRES;
+ sigqueueinfo(getpid(), &info);
+#else
raise( SIGFPE );
+#endif
}
}
+#undef float_exception_mask
/*
-------------------------------------------------------------------------------
@@ -104,7 +133,8 @@
NaN; otherwise returns 0.
-------------------------------------------------------------------------------
*/
-#if defined(SOFTFLOAT_FOR_GCC) && !defined(SOFTFLOATSPARC64_FOR_GCC)
+#if defined(SOFTFLOAT_FOR_GCC) && !defined(SOFTFLOATSPARC64_FOR_GCC) && \
+ !defined(SOFTFLOAT_M68K_FOR_GCC)
static
#endif
flag float32_is_signaling_nan( float32 a )
@@ -203,7 +233,8 @@
NaN; otherwise returns 0.
-------------------------------------------------------------------------------
*/
-#if defined(SOFTFLOAT_FOR_GCC) && !defined(SOFTFLOATSPARC64_FOR_GCC)
+#if defined(SOFTFLOAT_FOR_GCC) && !defined(SOFTFLOATSPARC64_FOR_GCC) && \
+ !defined(SOFTFLOATM68K_FOR_GCC)
static
#endif
flag float64_is_signaling_nan( float64 a )
Property changes on: trunk/lib/libc/softfloat/softfloat-specialize
___________________________________________________________________
Added: mnbsd:nokeywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
More information about the Midnightbsd-cvs
mailing list