summaryrefslogtreecommitdiffstats
path: root/lib/msun
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2006-08-22 08:03:01 +0000
committerru <ru@FreeBSD.org>2006-08-22 08:03:01 +0000
commit4d582ffe096e47ba124286efb831032cbd3cdf2a (patch)
tree08203fa78d69de58704db3947da0c5c461233445 /lib/msun
parent78738a2fe964ce85b0d11862f02a91175c14fd9a (diff)
downloadFreeBSD-src-4d582ffe096e47ba124286efb831032cbd3cdf2a.zip
FreeBSD-src-4d582ffe096e47ba124286efb831032cbd3cdf2a.tar.gz
Remove alpha left-overs.
Diffstat (limited to 'lib/msun')
-rw-r--r--lib/msun/alpha/Makefile.inc11
-rw-r--r--lib/msun/alpha/Symbol.map13
-rw-r--r--lib/msun/alpha/fenv.c144
-rw-r--r--lib/msun/alpha/fenv.h185
-rw-r--r--lib/msun/alpha/s_copysign.S45
-rw-r--r--lib/msun/alpha/s_copysignf.S45
6 files changed, 0 insertions, 443 deletions
diff --git a/lib/msun/alpha/Makefile.inc b/lib/msun/alpha/Makefile.inc
deleted file mode 100644
index f2fc86a..0000000
--- a/lib/msun/alpha/Makefile.inc
+++ /dev/null
@@ -1,11 +0,0 @@
-# $FreeBSD$
-
-ARCH_SRCS = s_copysign.S s_copysignf.S
-LDBL_PREC = 53
-SYM_MAPS += ${.CURDIR}/alpha/Symbol.map
-
-# XXX Comment from NetBSD/Alpha:
-# XXX LINT SIGFPEs in e_exp.c's strtod(). FP underflow/denorm software
-# handling is broken (doesn't exist!) on the Alpha port.
-# Stock gcc 2.7.2.1 doesn't understand these options.
-#CFLAGS += -mtrap-precision=i -mfp-trap-mode=su
diff --git a/lib/msun/alpha/Symbol.map b/lib/msun/alpha/Symbol.map
deleted file mode 100644
index 1eaba2e..0000000
--- a/lib/msun/alpha/Symbol.map
+++ /dev/null
@@ -1,13 +0,0 @@
-# $FreeBSD$
-FBSD_1.0 {
- fegetenv;
- feholdexcept;
- fesetenv;
- feupdateenv;
- __feenableexcept;
- __fedisableexcept;
- __fegetexcept;
- feenableexcept;
- fedisableexcept;
- fegetexcept;
-};
diff --git a/lib/msun/alpha/fenv.c b/lib/msun/alpha/fenv.c
deleted file mode 100644
index 5f0182c..0000000
--- a/lib/msun/alpha/fenv.c
+++ /dev/null
@@ -1,144 +0,0 @@
-/*-
- * Copyright (c) 2004-2005 David Schultz <das@FreeBSD.ORG>
- * 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.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
- *
- * $FreeBSD$
- */
-
-#include <sys/cdefs.h>
-#include <machine/sysarch.h>
-#include <fenv.h>
-
-const fenv_t __fe_dfl_env = 0x680e000000000000ULL;
-
-struct mask_args {
- fenv_t mask;
-};
-
-/*
- * The lower 49 bits of the FPCR are unused by the hardware, so we use
- * the lower order bits to store the kernel's idea of the FP mask as
- * described in the Alpha Architecture Manual.
- */
-int
-fegetenv(fenv_t *envp)
-{
- struct mask_args p;
- union __fpcr r;
-
- /*
- * The syscall acts as an implicit exception barrier, so we
- * only need to issue an excb after the mf_fpcr to ensure that
- * the read is executed before any subsequent FP ops.
- */
- sysarch(ALPHA_GET_FPMASK, (char *)&p);
- __mf_fpcr(&r.__d);
- *envp = r.__bits | p.mask;
- __excb();
- return (0);
-}
-
-int
-feholdexcept(fenv_t *envp)
-{
- struct mask_args p;
- union __fpcr r;
-
- sysarch(ALPHA_GET_FPMASK, (char *)&p);
- __mf_fpcr(&r.__d);
- *envp = r.__bits | p.mask;
- r.__bits &= ~((fenv_t)FE_ALL_EXCEPT << _FPUSW_SHIFT);
- __mt_fpcr(r.__d);
- if (p.mask & FE_ALL_EXCEPT) {
- p.mask = 0;
- sysarch(ALPHA_SET_FPMASK, &p);
- }
- __excb();
- return (0);
-}
-
-int
-fesetenv(const fenv_t *envp)
-{
- struct mask_args p;
- union __fpcr r;
-
- p.mask = *envp & FE_ALL_EXCEPT;
- sysarch(ALPHA_SET_FPMASK, &p);
- r.__bits = *envp & ~FE_ALL_EXCEPT;
- __mt_fpcr(r.__d);
- __excb();
- return (0);
-}
-
-int
-feupdateenv(const fenv_t *envp)
-{
- struct mask_args p;
- union __fpcr oldr, newr;
-
- p.mask = *envp & FE_ALL_EXCEPT;
- sysarch(ALPHA_SET_FPMASK, &p);
- __mf_fpcr(&oldr.__d);
- newr.__bits = *envp & ~FE_ALL_EXCEPT;
- __excb();
- __mt_fpcr(newr.__d);
- feraiseexcept((oldr.__bits >> _FPUSW_SHIFT) & FE_ALL_EXCEPT);
- return (0);
-}
-
-int
-__feenableexcept(int mask)
-{
- struct mask_args p;
-
- sysarch(ALPHA_GET_FPMASK, &p);
- p.mask |= (mask & FE_ALL_EXCEPT);
- sysarch(ALPHA_SET_FPMASK, &p);
- return (p.mask);
-}
-
-int
-__fedisableexcept(int mask)
-{
- struct mask_args p;
-
- sysarch(ALPHA_GET_FPMASK, &p);
- p.mask &= ~(mask & FE_ALL_EXCEPT);
- sysarch(ALPHA_SET_FPMASK, &p);
- return (p.mask);
-}
-
-int
-__fegetexcept(void)
-{
- struct mask_args p;
-
- sysarch(ALPHA_GET_FPMASK, &p);
- return (p.mask);
-}
-
-__weak_reference(__feenableexcept, feenableexcept);
-__weak_reference(__fedisableexcept, fedisableexcept);
-__weak_reference(__fegetexcept, fegetexcept);
diff --git a/lib/msun/alpha/fenv.h b/lib/msun/alpha/fenv.h
deleted file mode 100644
index b940a60..0000000
--- a/lib/msun/alpha/fenv.h
+++ /dev/null
@@ -1,185 +0,0 @@
-/*-
- * Copyright (c) 2004-2005 David Schultz <das@FreeBSD.ORG>
- * 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.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
- *
- * $FreeBSD$
- */
-
-#ifndef _FENV_H_
-#define _FENV_H_
-
-#include <sys/_types.h>
-
-typedef __uint64_t fenv_t;
-typedef __uint16_t fexcept_t;
-
-/* Exception flags */
-#define FE_INVALID 0x02
-#define FE_DIVBYZERO 0x04
-#define FE_OVERFLOW 0x08
-#define FE_UNDERFLOW 0x10
-#define FE_INEXACT 0x20
-#define FE_INTOVF 0x40 /* not maskable */
-#define FE_ALL_EXCEPT (FE_DIVBYZERO | FE_INEXACT | FE_INTOVF | \
- FE_INVALID | FE_OVERFLOW | FE_UNDERFLOW)
-
-/* Rounding modes */
-#define FE_TOWARDZERO 0x00
-#define FE_DOWNWARD 0x01
-#define FE_TONEAREST 0x02
-#define FE_UPWARD 0x03
-#define _ROUND_MASK (FE_TONEAREST | FE_DOWNWARD | \
- FE_UPWARD | FE_TOWARDZERO)
-#define _ROUND_SHIFT 58
-
-#define _FPUSW_SHIFT 51
-
-#define __excb() __asm __volatile("excb")
-#define __mf_fpcr(__cw) __asm __volatile("mf_fpcr %0" : "=f" (*(__cw)))
-#define __mt_fpcr(__cw) __asm __volatile("mt_fpcr %0" : : "f" (__cw))
-
-union __fpcr {
- double __d;
- fenv_t __bits;
-};
-
-__BEGIN_DECLS
-
-/* Default floating-point environment */
-extern const fenv_t __fe_dfl_env;
-#define FE_DFL_ENV (&__fe_dfl_env)
-
-static __inline int
-feclearexcept(int __excepts)
-{
- union __fpcr __r;
-
- __excb();
- __mf_fpcr(&__r.__d);
- __r.__bits &= ~((fenv_t)__excepts << _FPUSW_SHIFT);
- __mt_fpcr(__r.__d);
- __excb();
- return (0);
-}
-
-static __inline int
-fegetexceptflag(fexcept_t *__flagp, int __excepts)
-{
- union __fpcr __r;
-
- __excb();
- __mf_fpcr(&__r.__d);
- __excb();
- *__flagp = (__r.__bits >> _FPUSW_SHIFT) & __excepts;
- return (0);
-}
-
-static __inline int
-fesetexceptflag(const fexcept_t *__flagp, int __excepts)
-{
- union __fpcr __r;
- fenv_t __xflag, __xexcepts;
-
- __xflag = (fenv_t)*__flagp << _FPUSW_SHIFT;
- __xexcepts = (fenv_t)__excepts << _FPUSW_SHIFT;
- __excb();
- __mf_fpcr(&__r.__d);
- __r.__bits &= ~__xexcepts;
- __r.__bits |= __xflag & __xexcepts;
- __mt_fpcr(__r.__d);
- __excb();
- return (0);
-}
-
-static __inline int
-feraiseexcept(int __excepts)
-{
-
- /*
- * XXX Generating exceptions this way does not actually invoke
- * a userland trap handler when enabled, but neither do
- * arithmetic operations as far as I can tell. Perhaps there
- * are more bugs in the kernel trap handler.
- */
- fexcept_t __ex = __excepts;
- fesetexceptflag(&__ex, __excepts);
- return (0);
-}
-
-static __inline int
-fetestexcept(int __excepts)
-{
- union __fpcr __r;
-
- __excb();
- __mf_fpcr(&__r.__d);
- __excb();
- return ((__r.__bits >> _FPUSW_SHIFT) & __excepts);
-}
-
-static __inline int
-fegetround(void)
-{
- union __fpcr __r;
-
- /*
- * No exception barriers should be required here if we assume
- * that only fesetround() can change the rounding mode.
- */
- __mf_fpcr(&__r.__d);
- return ((int)(__r.__bits >> _ROUND_SHIFT) & _ROUND_MASK);
-}
-
-static __inline int
-fesetround(int __round)
-{
- union __fpcr __r;
-
- if (__round & ~_ROUND_MASK)
- return (-1);
- __excb();
- __mf_fpcr(&__r.__d);
- __r.__bits &= ~((fenv_t)_ROUND_MASK << _ROUND_SHIFT);
- __r.__bits |= (fenv_t)__round << _ROUND_SHIFT;
- __mt_fpcr(__r.__d);
- __excb();
- return (0);
-}
-
-int fegetenv(fenv_t *__envp);
-int feholdexcept(fenv_t *__envp);
-int fesetenv(const fenv_t *__envp);
-int feupdateenv(const fenv_t *__envp);
-
-#if __BSD_VISIBLE
-
-int feenableexcept(int __mask);
-int fedisableexcept(int __mask);
-int fegetexcept(void);
-
-#endif /* __BSD_VISIBLE */
-
-__END_DECLS
-
-#endif /* !_FENV_H_ */
diff --git a/lib/msun/alpha/s_copysign.S b/lib/msun/alpha/s_copysign.S
deleted file mode 100644
index 2a724e2..0000000
--- a/lib/msun/alpha/s_copysign.S
+++ /dev/null
@@ -1,45 +0,0 @@
-/* $FreeBSD$ */
-/* From: NetBSD: s_copysign.S,v 1.3 1997/07/30 23:58:38 jtc Exp */
-
-/*-
- * Copyright (c) 1996 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by J.T. Conklin.
- *
- * 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 <machine/asm.h>
-
-LEAF(copysign, 2)
- cpys fa1, fa0, fv0
- RET
-END(copysign)
diff --git a/lib/msun/alpha/s_copysignf.S b/lib/msun/alpha/s_copysignf.S
deleted file mode 100644
index d8a42a4..0000000
--- a/lib/msun/alpha/s_copysignf.S
+++ /dev/null
@@ -1,45 +0,0 @@
-/* $FreeBSD$ */
-/* From: NetBSD: s_copysignf.S,v 1.3 1997/07/30 23:58:41 jtc Exp */
-
-/*-
- * Copyright (c) 1996 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by J.T. Conklin.
- *
- * 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 <machine/asm.h>
-
-LEAF(copysignf, 2)
- cpys fa1, fa0, fv0
- RET
-END(copysignf)
OpenPOWER on IntegriCloud