summaryrefslogtreecommitdiffstats
path: root/lib/libc
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc')
-rw-r--r--lib/libc/alpha/gen/Makefile.inc2
-rw-r--r--lib/libc/alpha/gen/fpsetsticky.c62
-rw-r--r--lib/libc/amd64/gen/Makefile.inc2
-rw-r--r--lib/libc/amd64/gen/fpsetsticky.c8
-rw-r--r--lib/libc/powerpc/gen/Makefile.inc2
-rw-r--r--lib/libc/powerpc/gen/fpsetsticky.c57
-rw-r--r--lib/libc/softfloat/Makefile.inc2
-rw-r--r--lib/libc/sparc64/gen/Makefile.inc2
-rw-r--r--lib/libc/sparc64/gen/fpsetsticky.c30
9 files changed, 5 insertions, 162 deletions
diff --git a/lib/libc/alpha/gen/Makefile.inc b/lib/libc/alpha/gen/Makefile.inc
index 96a92ce..8f8caf8 100644
--- a/lib/libc/alpha/gen/Makefile.inc
+++ b/lib/libc/alpha/gen/Makefile.inc
@@ -2,7 +2,7 @@
SRCS+= _setjmp.S _set_tp.c fabs.S infinity.c ldexp.c modf.c setjmp.S
SRCS+= flt_rounds.c fpgetmask.c fpgetround.c fpgetsticky.c fpsetmask.c \
- fpsetround.c fpsetsticky.c
+ fpsetround.c
SRCS+= sigsetjmp.S
SRCS+= __divqu.S __divq.S __divlu.S __divl.S
diff --git a/lib/libc/alpha/gen/fpsetsticky.c b/lib/libc/alpha/gen/fpsetsticky.c
deleted file mode 100644
index 698109f..0000000
--- a/lib/libc/alpha/gen/fpsetsticky.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (c) 1995 Christopher G. Demetriou
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 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 Christopher G. Demetriou
- * for the NetBSD Project.
- * 4. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * $NetBSD: fpsetsticky.c,v 1.1 1995/04/29 05:11:04 cgd Exp $
- */
-
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
-
-#include <sys/types.h>
-#include <ieeefp.h>
-#include <machine/fpu.h>
-
-fp_except_t
-fpsetsticky(sticky)
- fp_except_t sticky;
-{
- union {
- double fpcrval;
- u_int64_t intval;
- } u;
- u_int64_t old, new;
-
- GET_FPCR(u.fpcrval);
-
- old = u.intval;
- new = old & ~ (IEEE_STATUS_MASK << IEEE_STATUS_TO_FPCR_SHIFT);
- new |= ((sticky << IEEE_STATUS_TO_EXCSUM_SHIFT) & IEEE_STATUS_MASK)
- << IEEE_STATUS_TO_FPCR_SHIFT;
- u.intval = new;
- SET_FPCR(u.fpcrval);
-
- return (((old >> IEEE_STATUS_TO_FPCR_SHIFT) & IEEE_STATUS_MASK)
- >> IEEE_STATUS_TO_EXCSUM_SHIFT);
-}
diff --git a/lib/libc/amd64/gen/Makefile.inc b/lib/libc/amd64/gen/Makefile.inc
index 3d28e66..38fe7e1 100644
--- a/lib/libc/amd64/gen/Makefile.inc
+++ b/lib/libc/amd64/gen/Makefile.inc
@@ -5,4 +5,4 @@ SRCS+= _setjmp.S _set_tp.c rfork_thread.S setjmp.S sigsetjmp.S \
fabs.S modf.S \
infinity.c ldexp.c makecontext.c signalcontext.c \
flt_rounds.c fpgetmask.c fpsetmask.c fpgetprec.c fpsetprec.c \
- fpgetround.c fpsetround.c fpgetsticky.c fpsetsticky.c
+ fpgetround.c fpsetround.c fpgetsticky.c
diff --git a/lib/libc/amd64/gen/fpsetsticky.c b/lib/libc/amd64/gen/fpsetsticky.c
deleted file mode 100644
index 95b1655..0000000
--- a/lib/libc/amd64/gen/fpsetsticky.c
+++ /dev/null
@@ -1,8 +0,0 @@
-/* $FreeBSD$ */
-#define __IEEEFP_NOINLINES__ 1
-#include <ieeefp.h>
-
-fp_except_t fpsetsticky(fp_except_t m)
-{
- return (__fpsetsticky(m));
-}
diff --git a/lib/libc/powerpc/gen/Makefile.inc b/lib/libc/powerpc/gen/Makefile.inc
index 4f8f0ea..4b381c3 100644
--- a/lib/libc/powerpc/gen/Makefile.inc
+++ b/lib/libc/powerpc/gen/Makefile.inc
@@ -1,7 +1,7 @@
# $FreeBSD$
SRCS += _ctx_start.S fabs.S flt_rounds.c fpgetmask.c fpgetround.c \
- fpgetsticky.c fpsetmask.c fpsetround.c fpsetsticky.c \
+ fpgetsticky.c fpsetmask.c fpsetround.c \
infinity.c ldexp.c makecontext.c modf.c _setjmp.S \
setjmp.S sigsetjmp.S signalcontext.c syncicache.c \
_set_tp.c
diff --git a/lib/libc/powerpc/gen/fpsetsticky.c b/lib/libc/powerpc/gen/fpsetsticky.c
deleted file mode 100644
index d464ca8..0000000
--- a/lib/libc/powerpc/gen/fpsetsticky.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/* $NetBSD: fpsetsticky.c,v 1.3 2002/01/13 21:45:48 thorpej Exp $ */
-
-/*
- * Copyright (c) 1999 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Dan Winship.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 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
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- */
-
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
-
-#include <sys/types.h>
-#include <ieeefp.h>
-
-fp_except_t
-fpsetsticky(fp_except_t mask)
-{
- u_int64_t fpscr;
- fp_rnd_t old;
-
- __asm__ __volatile("mffs %0" : "=f"(fpscr));
- old = (fp_except_t)((fpscr >> 25) & 0x1f);
- fpscr = (fpscr & 0xc1ffffff) | (mask << 25);
- __asm__ __volatile("mtfsf 0xff,%0" :: "f"(fpscr));
- return (old);
-}
diff --git a/lib/libc/softfloat/Makefile.inc b/lib/libc/softfloat/Makefile.inc
index f984ae2..5e40916 100644
--- a/lib/libc/softfloat/Makefile.inc
+++ b/lib/libc/softfloat/Makefile.inc
@@ -11,7 +11,7 @@ CFLAGS+= -DSOFTFLOAT_FOR_GCC
SRCS+= softfloat.c
SRCS+= fpgetround.c fpsetround.c fpgetmask.c fpsetmask.c \
- fpgetsticky.c fpsetsticky.c
+ fpgetsticky.c
SRCS+= eqsf2.c nesf2.c gtsf2.c gesf2.c ltsf2.c lesf2.c negsf2.c \
eqdf2.c nedf2.c gtdf2.c gedf2.c ltdf2.c ledf2.c negdf2.c \
diff --git a/lib/libc/sparc64/gen/Makefile.inc b/lib/libc/sparc64/gen/Makefile.inc
index c228fc0..979c182 100644
--- a/lib/libc/sparc64/gen/Makefile.inc
+++ b/lib/libc/sparc64/gen/Makefile.inc
@@ -1,6 +1,6 @@
# $FreeBSD$
SRCS+= _ctx_start.S _setjmp.S fabs.S fixunsdfsi.S flt_rounds.c fpgetmask.c \
- fpgetround.c fpgetsticky.c fpsetmask.c fpsetround.c fpsetsticky.c \
+ fpgetround.c fpgetsticky.c fpsetmask.c fpsetround.c \
infinity.c ldexp.c makecontext.c modf.S \
signalcontext.c setjmp.S sigsetjmp.S _set_tp.c
diff --git a/lib/libc/sparc64/gen/fpsetsticky.c b/lib/libc/sparc64/gen/fpsetsticky.c
deleted file mode 100644
index 61d3d1b..0000000
--- a/lib/libc/sparc64/gen/fpsetsticky.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* $NetBSD: fpsetsticky.c,v 1.2 2002/01/13 21:45:51 thorpej Exp $ */
-
-/*
- * Written by J.T. Conklin, Apr 10, 1995
- * Public domain.
- */
-
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
-
-#include <machine/fsr.h>
-#include <ieeefp.h>
-
-fp_except_t
-fpsetsticky(sticky)
- fp_except_t sticky;
-{
- unsigned int old;
- unsigned int new;
-
- __asm__("st %%fsr,%0" : "=m" (old));
-
- new = old;
- new &= ~FSR_AEXC_MASK;
- new |= FSR_AEXC(sticky & FSR_EXC_MASK);
-
- __asm__("ld %0,%%fsr" : : "m" (new));
-
- return (FSR_GET_AEXC(old));
-}
OpenPOWER on IntegriCloud