summaryrefslogtreecommitdiffstats
path: root/lib/libm/common_source/ieee.3
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libm/common_source/ieee.3')
-rw-r--r--lib/libm/common_source/ieee.3270
1 files changed, 0 insertions, 270 deletions
diff --git a/lib/libm/common_source/ieee.3 b/lib/libm/common_source/ieee.3
deleted file mode 100644
index a906ba1..0000000
--- a/lib/libm/common_source/ieee.3
+++ /dev/null
@@ -1,270 +0,0 @@
-.\" Copyright (c) 1985, 1991, 1993
-.\" The Regents of the University of California. 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 the University of
-.\" California, Berkeley and its contributors.
-.\" 4. Neither the name of the University 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 REGENTS 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 REGENTS 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.
-.\"
-.\" @(#)ieee.3 8.1 (Berkeley) 6/4/93
-.\" $FreeBSD$
-.\"
-.Dd June 4, 1993
-.Dt IEEE 3
-.Os
-.Sh NAME
-.Nm copysign ,
-.Nm drem ,
-.Nm finite ,
-.Nm logb ,
-.Nm scalb
-.Nd "IEEE 754 floating point support
-.Sh LIBRARY
-.Lb libm
-.Sh SYNOPSIS
-.In math.h
-.Ft double
-.Fn copysign "double x" "double y"
-.Ft double
-.Fn drem "double x" "double y"
-.Ft int
-.Fn finite "double x"
-.Ft double
-.Fn logb "double x"
-.Ft double
-.Fn scalb "double x" "int n"
-.Sh DESCRIPTION
-These functions are required for, or recommended by the
-.Tn IEEE
-standard
-754 for floating\-point arithmetic.
-.Pp
-The
-.Fn copysign
-function
-returns
-.Fa x
-with its sign changed to
-.Fa y Ns 's .
-.Pp
-The
-.Fn drem
-function
-returns the remainder
-.Fa r
-:=
-.Fa x
-\-
-.Fa n\(**y
-where
-.Fa n
-is the integer nearest the exact value of
-.Bk -words
-.Fa x Ns / Ns Fa y ;
-.Ek
-moreover if
-.Pf \\*(Ba Fa n
-\-
-.Sm off
-.Fa x No / Fa y No \\*(Ba
-.Sm on
-=
-1/2
-then
-.Fa n
-is even. Consequently
-the remainder is computed exactly and
-.Sm off
-.Pf \\*(Ba Fa r No \\*(Ba
-.Sm on
-\*(Le
-.Sm off
-.Pf \\*(Ba Fa y No \\*(Ba/2 .
-.Sm on
-But
-.Fn drem x 0
-is exceptional.
-(See below under
-.Sx DIAGNOSTICS . )
-.Pp
-The
-.Fn finite
-function returns the value 1 just when
-\-\*(If \*(Lt
-.Fa x
-\*(Lt +\*(If;
-otherwise a
-zero is returned
-(when
-.Pf \\*(Ba Ns Fa x Ns \\*(Ba
-= \*(If or
-.Fa x
-is \*(Na or
-is the
-.Tn VAX Ns 's
-reserved operand).
-.Pp
-The
-.Fn logb
-function returns
-.Fa x Ns 's exponent
-.Fa n ,
-a signed integer converted to double\-precision floating\-point and so
-chosen that
-1 (<=
-.Pf \\*(Ba Ns Fa x Ns \\*(Ba2** Ns Fa n
-< 2
-unless
-.Fa x
-= 0 or
-(only on machines that conform to
-.Tn IEEE
-754)
-.Pf \\*(Ba Fa x Ns \\*(Ba
-= \*(If
-or
-.Fa x
-lies between 0 and the Underflow Threshold.
-(See below under
-.Sx BUGS . )
-.Pp
-The
-.Fn scalb
-function returns
-.Fa x Ns \(**(2** Ns Fa n )
-computed, for integer n, without first computing
-.Pf 2\(** Fa n .
-.Sh RETURN VALUES
-The
-.Tn IEEE
-standard
-754 defines
-.Fn drem x 0
-and
-.Fn drem \\*(If y
-to be invalid operations that produce a \*(Na.
-On the
-.Tn VAX ,
-.Fn drem x 0
-generates a reserved operand fault. No \*(If
-exists on a
-.Tn VAX .
-.Pp
-.Tn IEEE
-754 defines
-.if n \
-.Fn logb \(+-\\*(If
-= \*(If and
-.Fn logb 0
-= \-\*(If, and
-requires the latter to signal Division\-by\-Zero.
-But on a
-.Tn VAX ,
-.Fn logb 0
-= 1.0 \- 2.0**31 = \-2,147,483,647.0.
-And if the correct value of
-.Fn scalb
-would overflow on a
-.Tn VAX ,
-it generates a reserved operand fault and sets the global variable
-.Va errno
-to
-.Er ERANGE .
-.Sh SEE ALSO
-.Xr floor 3 ,
-.Xr infnan 3 ,
-.Xr math 3
-.Sh HISTORY
-The
-.Nm ieee
-functions appeared in
-.Bx 4.3 .
-.Sh BUGS
-Should
-.Fn drem x 0
-and
-.Fn logb 0
-on a
-.Tn VAX
-signal invalidity
-by setting
-.Va errno No = Er EDOM ?
-Should
-.Fn logb 0
-return \-1.7e38?
-.Pp
-.Tn IEEE
-754 currently specifies that
-.Fn logb "denormalized no.\&"
-=
-.Fn logb "tiniest normalized no. > 0"
-but the consensus has changed to the specification in the new
-proposed
-.Tn IEEE
-standard p854, namely that
-.Fn logb x
-satisfy
-.Bd -ragged -offset indent
-1 \(<=
-.Fn scalb \\*(Bax\\*(Ba \-logb(x)
-<
-Radix\0 ... = 2
-for
-.Tn IEEE
-754
-.Ed
-.Pp
-for every x except 0,
-\*(If
-and \*(Na.
-Almost every program that assumes 754's specification will work
-correctly if
-.Fn logb
-follows 854's specification instead.
-.Pp
-.Tn IEEE
-754 requires
-.Fn copysign x \\*(Na)
-=
-.Pf \(+- Ns Fa x
-but says nothing
-else about the sign of a \*(Na. A \*(Na
-.Em (N Ns ot
-.Em a
-.Em N Ns umber )
-is
-similar in spirit to the
-.Tn VAX Ns 's
-reserved operand, but very
-different in important details. Since the sign bit of a
-reserved operand makes it look negative,
-.Bd -ragged -offset indent
-.Fn copysign x "reserved operand"
-=
-.Pf \- Fa x ;
-.Ed
-.Pp
-should this return the reserved operand instead?
OpenPOWER on IntegriCloud