xref: /freebsd/lib/msun/man/ilogb.3 (revision fbbd9655e5107c68e4e0146ff22b73d7350475bc)
129bf6af8SDavid Schultz.\" Copyright (c) 1985, 1991 Regents of the University of California.
229bf6af8SDavid Schultz.\" All rights reserved.
329bf6af8SDavid Schultz.\"
429bf6af8SDavid Schultz.\" Redistribution and use in source and binary forms, with or without
529bf6af8SDavid Schultz.\" modification, are permitted provided that the following conditions
629bf6af8SDavid Schultz.\" are met:
729bf6af8SDavid Schultz.\" 1. Redistributions of source code must retain the above copyright
829bf6af8SDavid Schultz.\"    notice, this list of conditions and the following disclaimer.
929bf6af8SDavid Schultz.\" 2. Redistributions in binary form must reproduce the above copyright
1029bf6af8SDavid Schultz.\"    notice, this list of conditions and the following disclaimer in the
1129bf6af8SDavid Schultz.\"    documentation and/or other materials provided with the distribution.
12*fbbd9655SWarner Losh.\" 3. Neither the name of the University nor the names of its contributors
1329bf6af8SDavid Schultz.\"    may be used to endorse or promote products derived from this software
1429bf6af8SDavid Schultz.\"    without specific prior written permission.
1529bf6af8SDavid Schultz.\"
1629bf6af8SDavid Schultz.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
1729bf6af8SDavid Schultz.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
1829bf6af8SDavid Schultz.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
1929bf6af8SDavid Schultz.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
2029bf6af8SDavid Schultz.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
2129bf6af8SDavid Schultz.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2229bf6af8SDavid Schultz.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2329bf6af8SDavid Schultz.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2429bf6af8SDavid Schultz.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2529bf6af8SDavid Schultz.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
2629bf6af8SDavid Schultz.\" SUCH DAMAGE.
2729bf6af8SDavid Schultz.\"
2829bf6af8SDavid Schultz.\"     from: @(#)ieee.3	6.4 (Berkeley) 5/6/91
2929bf6af8SDavid Schultz.\" $FreeBSD$
3029bf6af8SDavid Schultz.\"
316821aba9SDavid Schultz.Dd December 16, 2007
3229bf6af8SDavid Schultz.Dt ILOGB 3
3329bf6af8SDavid Schultz.Os
3429bf6af8SDavid Schultz.Sh NAME
3529bf6af8SDavid Schultz.Nm ilogb ,
3629bf6af8SDavid Schultz.Nm ilogbf ,
3732948b81SBruce Evans.Nm ilogbl ,
3832948b81SBruce Evans.Nm logb ,
396821aba9SDavid Schultz.Nm logbf ,
406821aba9SDavid Schultz.Nm logbl
4129bf6af8SDavid Schultz.Nd extract exponent
4229bf6af8SDavid Schultz.Sh LIBRARY
4329bf6af8SDavid Schultz.Lb libm
4429bf6af8SDavid Schultz.Sh SYNOPSIS
4529bf6af8SDavid Schultz.In math.h
4629bf6af8SDavid Schultz.Ft int
4729bf6af8SDavid Schultz.Fn ilogb "double x"
4829bf6af8SDavid Schultz.Ft int
4929bf6af8SDavid Schultz.Fn ilogbf "float x"
5029bf6af8SDavid Schultz.Ft int
5129bf6af8SDavid Schultz.Fn ilogbl "long double x"
5232948b81SBruce Evans.Ft double
5332948b81SBruce Evans.Fn logb "double x"
5432948b81SBruce Evans.Ft float
5532948b81SBruce Evans.Fn logbf "float x"
566821aba9SDavid Schultz.Ft long double
576821aba9SDavid Schultz.Fn logbl "long double x"
5829bf6af8SDavid Schultz.Sh DESCRIPTION
5929bf6af8SDavid Schultz.Fn ilogb ,
6029bf6af8SDavid Schultz.Fn ilogbf
6129bf6af8SDavid Schultzand
6229bf6af8SDavid Schultz.Fn ilogbl
6329bf6af8SDavid Schultzreturn
6432948b81SBruce Evans.Fa x Ns 's exponent
6529bf6af8SDavid Schultzin integer format.
6629bf6af8SDavid Schultz.Fn ilogb \*(Pm\*(If
6729bf6af8SDavid Schultzreturns
6829bf6af8SDavid Schultz.Dv INT_MAX ,
6929bf6af8SDavid Schultz.Fn ilogb \*(Pm\*(Na
7029bf6af8SDavid Schultzreturns
7132948b81SBruce Evans.Dv FP_ILOGBNAN ,
7229bf6af8SDavid Schultzand
7329bf6af8SDavid Schultz.Fn ilogb 0
7429bf6af8SDavid Schultzreturns
7529bf6af8SDavid Schultz.Dv FP_ILOGB0 .
7632948b81SBruce Evans.Pp
776821aba9SDavid Schultz.Fn logb x ,
786821aba9SDavid Schultz.Fn logbf x ,
7932948b81SBruce Evansand
806821aba9SDavid Schultz.Fn logbl x
8132948b81SBruce Evansreturn
8232948b81SBruce Evans.Fa x Ns 's exponent
8332948b81SBruce Evansin floating\-point format with the same precision as
8432948b81SBruce Evans.Fa x .
8532948b81SBruce Evans.Fn logb \*(Pm\*(If
8632948b81SBruce Evansreturns +\*(If, and
8732948b81SBruce Evans.Fn logb 0
8832948b81SBruce Evansreturns -\*(If with a division by zero exception.
8929bf6af8SDavid Schultz.Sh SEE ALSO
9029bf6af8SDavid Schultz.Xr frexp 3 ,
9129bf6af8SDavid Schultz.Xr ieee 3 ,
9229bf6af8SDavid Schultz.Xr math 3 ,
9329bf6af8SDavid Schultz.Xr scalbn 3
9429bf6af8SDavid Schultz.Sh STANDARDS
9529bf6af8SDavid SchultzThe
9629bf6af8SDavid Schultz.Fn ilogb ,
9729bf6af8SDavid Schultz.Fn ilogbf ,
9832948b81SBruce Evans.Fn ilogbl ,
996821aba9SDavid Schultz.Fn logb ,
1006821aba9SDavid Schultz.Fn logbf ,
10129bf6af8SDavid Schultzand
1026821aba9SDavid Schultz.Fn logbl
10329bf6af8SDavid Schultzroutines conform to
10429bf6af8SDavid Schultz.St -isoC-99 .
1056821aba9SDavid SchultzThe latter three
10632948b81SBruce Evansimplement the logb function recommended by
10729bf6af8SDavid Schultz.St -ieee754 .
10829bf6af8SDavid Schultz.Sh HISTORY
1096821aba9SDavid Schultz.Bl -tag -width "Function " -compact
1106821aba9SDavid Schultz.It Em Function
1116821aba9SDavid Schultz.Em "First Appeared In"
1126821aba9SDavid Schultz.It Fn logb
1136821aba9SDavid Schultz.Bx 4.3
1146821aba9SDavid Schultz.It Fn ilogb
1156821aba9SDavid Schultz.Fx 1.1.5
1166821aba9SDavid Schultz.It Fn ilogbf
1176821aba9SDavid Schultz.Fx 2.0
1186821aba9SDavid Schultz.It Fn logbf
1196821aba9SDavid Schultz.Fx 2.0
1206821aba9SDavid Schultz.It Fn ilogbl
1216821aba9SDavid Schultz.Fx 5.4
1226821aba9SDavid Schultz.It Fn logbl
1236821aba9SDavid Schultz.Fx 8.0
1246821aba9SDavid Schultz.El
125