1*5a38af1fSEdward Tomasz Napierala.\" 2*5a38af1fSEdward Tomasz Napierala.\" Copyright (c) 2018 Netflix, Inc. 3*5a38af1fSEdward Tomasz Napierala.\" All rights reserved. 4*5a38af1fSEdward Tomasz Napierala.\" 5*5a38af1fSEdward Tomasz Napierala.\" Redistribution and use in source and binary forms, with or without 6*5a38af1fSEdward Tomasz Napierala.\" modification, are permitted provided that the following conditions 7*5a38af1fSEdward Tomasz Napierala.\" are met: 8*5a38af1fSEdward Tomasz Napierala.\" 1. Redistributions of source code must retain the above copyright 9*5a38af1fSEdward Tomasz Napierala.\" notice, this list of conditions, and the following disclaimer, 10*5a38af1fSEdward Tomasz Napierala.\" without modification, immediately at the beginning of the file. 11*5a38af1fSEdward Tomasz Napierala.\" 2. The name of the author may not be used to endorse or promote products 12*5a38af1fSEdward Tomasz Napierala.\" derived from this software without specific prior written permission. 13*5a38af1fSEdward Tomasz Napierala.\" 14*5a38af1fSEdward Tomasz Napierala.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15*5a38af1fSEdward Tomasz Napierala.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16*5a38af1fSEdward Tomasz Napierala.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17*5a38af1fSEdward Tomasz Napierala.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR 18*5a38af1fSEdward Tomasz Napierala.\" ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19*5a38af1fSEdward Tomasz Napierala.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20*5a38af1fSEdward Tomasz Napierala.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21*5a38af1fSEdward Tomasz Napierala.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22*5a38af1fSEdward Tomasz Napierala.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23*5a38af1fSEdward Tomasz Napierala.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24*5a38af1fSEdward Tomasz Napierala.\" SUCH DAMAGE. 25*5a38af1fSEdward Tomasz Napierala.\" 26*5a38af1fSEdward Tomasz Napierala.Dd July 8, 2018 27*5a38af1fSEdward Tomasz Napierala.Dt Q_IFRAWMASK 3 28*5a38af1fSEdward Tomasz Napierala.Os 29*5a38af1fSEdward Tomasz Napierala.Sh NAME 30*5a38af1fSEdward Tomasz Napierala.Nm Q_IFRAWMASK , 31*5a38af1fSEdward Tomasz Napierala.Nm Q_IFVALIMASK , 32*5a38af1fSEdward Tomasz Napierala.Nm Q_IFVALFMASK , 33*5a38af1fSEdward Tomasz Napierala.Nm Q_GIFRAW , 34*5a38af1fSEdward Tomasz Napierala.Nm Q_GIFABSVAL , 35*5a38af1fSEdward Tomasz Napierala.Nm Q_GIFVAL , 36*5a38af1fSEdward Tomasz Napierala.Nm Q_SIFVAL , 37*5a38af1fSEdward Tomasz Napierala.Nm Q_SIFVALS 38*5a38af1fSEdward Tomasz Napierala.Nd fixed-point math functions which manipulate the combined integer/fractional 39*5a38af1fSEdward Tomasz Napieraladata bits 40*5a38af1fSEdward Tomasz Napierala.Sh SYNOPSIS 41*5a38af1fSEdward Tomasz Napierala.In sys/qmath.h 42*5a38af1fSEdward Tomasz Napierala.Ft ITYPE 43*5a38af1fSEdward Tomasz Napierala.Fn Q_IFRAWMASK "QTYPE q" 44*5a38af1fSEdward Tomasz Napierala.Ft ITYPE 45*5a38af1fSEdward Tomasz Napierala.Fn Q_IFVALIMASK "QTYPE q" 46*5a38af1fSEdward Tomasz Napierala.Ft ITYPE 47*5a38af1fSEdward Tomasz Napierala.Fn Q_IFVALFMASK "QTYPE q" 48*5a38af1fSEdward Tomasz Napierala.Ft ITYPE 49*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFRAW "QTYPE q" 50*5a38af1fSEdward Tomasz Napierala.Ft ITYPE 51*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFABSVAL "QTYPE q" 52*5a38af1fSEdward Tomasz Napierala.Ft ITYPE 53*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFVAL "QTYPE q" 54*5a38af1fSEdward Tomasz Napierala.Ft QTYPE 55*5a38af1fSEdward Tomasz Napierala.Fn Q_SIFVAL "QTYPE q" "ITYPE ifv" 56*5a38af1fSEdward Tomasz Napierala.Ft QTYPE 57*5a38af1fSEdward Tomasz Napierala.Fn Q_SIFVALS "QTYPE q" "ITYPE iv" "ITYPE fv" 58*5a38af1fSEdward Tomasz Napierala.Sh DESCRIPTION 59*5a38af1fSEdward Tomasz Napierala.Fn Q_IFRAWMASK 60*5a38af1fSEdward Tomasz Napieralareturns a 61*5a38af1fSEdward Tomasz Napierala.Fa q Ns -specific 62*5a38af1fSEdward Tomasz Napieralabit mask for 63*5a38af1fSEdward Tomasz Napierala.Fa q Ap s 64*5a38af1fSEdward Tomasz Napieralacombined integer and fractional data bits. 65*5a38af1fSEdward Tomasz Napierala.Pp 66*5a38af1fSEdward Tomasz Napierala.Fn Q_IFVALIMASK 67*5a38af1fSEdward Tomasz Napieralaand 68*5a38af1fSEdward Tomasz Napierala.Fn Q_IFVALFMASK 69*5a38af1fSEdward Tomasz Napieralareturn 70*5a38af1fSEdward Tomasz Napierala.Fa q Ns -specific 71*5a38af1fSEdward Tomasz Napieralabit masks for the integer and fractional bits of 72*5a38af1fSEdward Tomasz Napierala.Fa q Ap s 73*5a38af1fSEdward Tomasz Napieralacombined integer and fractional data bits value, i.e., are applicable to the 74*5a38af1fSEdward Tomasz Napieralavalues returned by 75*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFABSVAL 76*5a38af1fSEdward Tomasz Napieralaand 77*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFVAL . 78*5a38af1fSEdward Tomasz Napierala.Pp 79*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFRAW 80*5a38af1fSEdward Tomasz Napieralareturns 81*5a38af1fSEdward Tomasz Napierala.Fa q Ap s 82*5a38af1fSEdward Tomasz Napieralaraw masked integer/fractional data bits. 83*5a38af1fSEdward Tomasz Napierala.Pp 84*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFABSVAL 85*5a38af1fSEdward Tomasz Napieralaand 86*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFVAL 87*5a38af1fSEdward Tomasz Napieralareturn the absolute and real values of 88*5a38af1fSEdward Tomasz Napierala.Fa q Ap s 89*5a38af1fSEdward Tomasz Napieralainteger/fractional data bits respectively. 90*5a38af1fSEdward Tomasz Napierala.Pp 91*5a38af1fSEdward Tomasz Napierala.Fn Q_SIFVAL 92*5a38af1fSEdward Tomasz Napieralasets 93*5a38af1fSEdward Tomasz Napierala.Fa q Ap s 94*5a38af1fSEdward Tomasz Napieralacombined integer/fractional data bits to the value 95*5a38af1fSEdward Tomasz Napierala.Fa ifv , 96*5a38af1fSEdward Tomasz Napieralawhereas 97*5a38af1fSEdward Tomasz Napierala.Fn Q_SIFVALS 98*5a38af1fSEdward Tomasz Napieralaindependently sets 99*5a38af1fSEdward Tomasz Napierala.Fa q Ap s 100*5a38af1fSEdward Tomasz Napieralainteger and fractional data bits to the separate values 101*5a38af1fSEdward Tomasz Napierala.Fa iv 102*5a38af1fSEdward Tomasz Napieralaand 103*5a38af1fSEdward Tomasz Napierala.Fa fv . 104*5a38af1fSEdward Tomasz Napierala.Pp 105*5a38af1fSEdward Tomasz NapieralaAll of those functions operate on 106*5a38af1fSEdward Tomasz Napieralathe following data types: 107*5a38af1fSEdward Tomasz Napierala.Vt s8q_t , 108*5a38af1fSEdward Tomasz Napierala.Vt u8q_t , 109*5a38af1fSEdward Tomasz Napierala.Vt s16q_t , 110*5a38af1fSEdward Tomasz Napierala.Vt u16q_t , 111*5a38af1fSEdward Tomasz Napierala.Vt s32q_t , 112*5a38af1fSEdward Tomasz Napierala.Vt u32q_t , 113*5a38af1fSEdward Tomasz Napierala.Vt s64q_t , 114*5a38af1fSEdward Tomasz Napieralaand 115*5a38af1fSEdward Tomasz Napierala.Vt u64q_t , 116*5a38af1fSEdward Tomasz Napieralawhich are referred to generically as 117*5a38af1fSEdward Tomasz Napierala.Fa QTYPE . 118*5a38af1fSEdward Tomasz NapieralaThe 119*5a38af1fSEdward Tomasz Napierala.Fa ITYPE 120*5a38af1fSEdward Tomasz Napieralarefers to the 121*5a38af1fSEdward Tomasz Napierala.Xr stdint 7 122*5a38af1fSEdward Tomasz Napieralainteger types. 123*5a38af1fSEdward Tomasz Napierala.Pp 124*5a38af1fSEdward Tomasz NapieralaFor more details, see 125*5a38af1fSEdward Tomasz Napierala.Xr qmath 3 . 126*5a38af1fSEdward Tomasz Napierala.Sh RETURN VALUES 127*5a38af1fSEdward Tomasz Napierala.Fn Q_IFRAWMASK , 128*5a38af1fSEdward Tomasz Napierala.Fn Q_IFVALIMASK , 129*5a38af1fSEdward Tomasz Napierala.Fn Q_IFVALFMASK , 130*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFABSVAL , 131*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFVAL , 132*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFRAW , 133*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFABSVAL 134*5a38af1fSEdward Tomasz Napieralaand 135*5a38af1fSEdward Tomasz Napierala.Fn Q_GIFVAL 136*5a38af1fSEdward Tomasz Napieralareturn their respective values as integers of the same underlying ITYPE as 137*5a38af1fSEdward Tomasz Napierala.Fa q . 138*5a38af1fSEdward Tomasz Napierala.Pp 139*5a38af1fSEdward Tomasz Napierala.Fn Q_SIFVAL 140*5a38af1fSEdward Tomasz Napieralaand 141*5a38af1fSEdward Tomasz Napierala.Fn Q_SIFVALS 142*5a38af1fSEdward Tomasz Napieralareturn the value of 143*5a38af1fSEdward Tomasz Napierala.Fa q 144*5a38af1fSEdward Tomasz Napieralapost change. 145*5a38af1fSEdward Tomasz Napierala.Sh SEE ALSO 146*5a38af1fSEdward Tomasz Napierala.Xr errno 2 , 147*5a38af1fSEdward Tomasz Napierala.Xr qmath 3 , 148*5a38af1fSEdward Tomasz Napierala.Xr stdint 7 149*5a38af1fSEdward Tomasz Napierala.Sh HISTORY 150*5a38af1fSEdward Tomasz NapieralaThe 151*5a38af1fSEdward Tomasz Napierala.Xr qmath 3 152*5a38af1fSEdward Tomasz Napieralafunctions first appeared in 153*5a38af1fSEdward Tomasz Napierala.Fx 13.0 . 154*5a38af1fSEdward Tomasz Napierala.Sh AUTHORS 155*5a38af1fSEdward Tomasz Napierala.An -nosplit 156*5a38af1fSEdward Tomasz NapieralaThe 157*5a38af1fSEdward Tomasz Napierala.Xr qmath 3 158*5a38af1fSEdward Tomasz Napieralafunctions and this manual page were written by 159*5a38af1fSEdward Tomasz Napierala.An Lawrence Stewart Aq Mt lstewart@FreeBSD.org 160*5a38af1fSEdward Tomasz Napieralaand sponsored by Netflix, Inc. 161