xref: /freebsd/lib/msun/man/ilogb.3 (revision dc36d6f9bb1753f3808552f3afd30eda9a7b206a)
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.\"
286821aba9SDavid Schultz.Dd December 16, 2007
2929bf6af8SDavid Schultz.Dt ILOGB 3
3029bf6af8SDavid Schultz.Os
3129bf6af8SDavid Schultz.Sh NAME
3229bf6af8SDavid Schultz.Nm ilogb ,
3329bf6af8SDavid Schultz.Nm ilogbf ,
3432948b81SBruce Evans.Nm ilogbl ,
3532948b81SBruce Evans.Nm logb ,
366821aba9SDavid Schultz.Nm logbf ,
376821aba9SDavid Schultz.Nm logbl
3829bf6af8SDavid Schultz.Nd extract exponent
3929bf6af8SDavid Schultz.Sh LIBRARY
4029bf6af8SDavid Schultz.Lb libm
4129bf6af8SDavid Schultz.Sh SYNOPSIS
4229bf6af8SDavid Schultz.In math.h
4329bf6af8SDavid Schultz.Ft int
4429bf6af8SDavid Schultz.Fn ilogb "double x"
4529bf6af8SDavid Schultz.Ft int
4629bf6af8SDavid Schultz.Fn ilogbf "float x"
4729bf6af8SDavid Schultz.Ft int
4829bf6af8SDavid Schultz.Fn ilogbl "long double x"
4932948b81SBruce Evans.Ft double
5032948b81SBruce Evans.Fn logb "double x"
5132948b81SBruce Evans.Ft float
5232948b81SBruce Evans.Fn logbf "float x"
536821aba9SDavid Schultz.Ft long double
546821aba9SDavid Schultz.Fn logbl "long double x"
5529bf6af8SDavid Schultz.Sh DESCRIPTION
5629bf6af8SDavid Schultz.Fn ilogb ,
5729bf6af8SDavid Schultz.Fn ilogbf
5829bf6af8SDavid Schultzand
5929bf6af8SDavid Schultz.Fn ilogbl
6029bf6af8SDavid Schultzreturn
6132948b81SBruce Evans.Fa x Ns 's exponent
6229bf6af8SDavid Schultzin integer format.
6329bf6af8SDavid Schultz.Fn ilogb \*(Pm\*(If
6429bf6af8SDavid Schultzreturns
6529bf6af8SDavid Schultz.Dv INT_MAX ,
6629bf6af8SDavid Schultz.Fn ilogb \*(Pm\*(Na
6729bf6af8SDavid Schultzreturns
6832948b81SBruce Evans.Dv FP_ILOGBNAN ,
6929bf6af8SDavid Schultzand
7029bf6af8SDavid Schultz.Fn ilogb 0
7129bf6af8SDavid Schultzreturns
7229bf6af8SDavid Schultz.Dv FP_ILOGB0 .
7332948b81SBruce Evans.Pp
746821aba9SDavid Schultz.Fn logb x ,
756821aba9SDavid Schultz.Fn logbf x ,
7632948b81SBruce Evansand
776821aba9SDavid Schultz.Fn logbl x
7832948b81SBruce Evansreturn
7932948b81SBruce Evans.Fa x Ns 's exponent
8032948b81SBruce Evansin floating\-point format with the same precision as
8132948b81SBruce Evans.Fa x .
8232948b81SBruce Evans.Fn logb \*(Pm\*(If
8332948b81SBruce Evansreturns +\*(If, and
8432948b81SBruce Evans.Fn logb 0
8532948b81SBruce Evansreturns -\*(If with a division by zero exception.
8629bf6af8SDavid Schultz.Sh SEE ALSO
8729bf6af8SDavid Schultz.Xr frexp 3 ,
8829bf6af8SDavid Schultz.Xr ieee 3 ,
8929bf6af8SDavid Schultz.Xr math 3 ,
9029bf6af8SDavid Schultz.Xr scalbn 3
9129bf6af8SDavid Schultz.Sh STANDARDS
9229bf6af8SDavid SchultzThe
9329bf6af8SDavid Schultz.Fn ilogb ,
9429bf6af8SDavid Schultz.Fn ilogbf ,
9532948b81SBruce Evans.Fn ilogbl ,
966821aba9SDavid Schultz.Fn logb ,
976821aba9SDavid Schultz.Fn logbf ,
9829bf6af8SDavid Schultzand
996821aba9SDavid Schultz.Fn logbl
10029bf6af8SDavid Schultzroutines conform to
10129bf6af8SDavid Schultz.St -isoC-99 .
1026821aba9SDavid SchultzThe latter three
10332948b81SBruce Evansimplement the logb function recommended by
10429bf6af8SDavid Schultz.St -ieee754 .
10529bf6af8SDavid Schultz.Sh HISTORY
1066821aba9SDavid Schultz.Bl -tag -width "Function " -compact
1076821aba9SDavid Schultz.It Em Function
1086821aba9SDavid Schultz.Em "First Appeared In"
1096821aba9SDavid Schultz.It Fn logb
1106821aba9SDavid Schultz.Bx 4.3
1116821aba9SDavid Schultz.It Fn ilogb
1126821aba9SDavid Schultz.Fx 1.1.5
1136821aba9SDavid Schultz.It Fn ilogbf
1146821aba9SDavid Schultz.Fx 2.0
1156821aba9SDavid Schultz.It Fn logbf
1166821aba9SDavid Schultz.Fx 2.0
1176821aba9SDavid Schultz.It Fn ilogbl
1186821aba9SDavid Schultz.Fx 5.4
1196821aba9SDavid Schultz.It Fn logbl
1206821aba9SDavid Schultz.Fx 8.0
1216821aba9SDavid Schultz.El
122