diff options
Diffstat (limited to 'static/freebsd/man3/Q_SIGNED.3 3.html')
| -rw-r--r-- | static/freebsd/man3/Q_SIGNED.3 3.html | 158 |
1 files changed, 158 insertions, 0 deletions
diff --git a/static/freebsd/man3/Q_SIGNED.3 3.html b/static/freebsd/man3/Q_SIGNED.3 3.html new file mode 100644 index 00000000..7a85a17f --- /dev/null +++ b/static/freebsd/man3/Q_SIGNED.3 3.html @@ -0,0 +1,158 @@ +<table class="head"> + <tr> + <td class="head-ltitle">Q_SIGNED(3)</td> + <td class="head-vol">Library Functions Manual</td> + <td class="head-rtitle">Q_SIGNED(3)</td> + </tr> +</table> +<div class="manual-text"> +<section class="Sh"> +<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1> +<p class="Pp"><code class="Nm">Q_SIGNED</code>, <code class="Nm">Q_LTZ</code>, + <code class="Nm">Q_PRECEQ</code>, <code class="Nm">Q_QLTQ</code>, + <code class="Nm">Q_QLEQ</code>, <code class="Nm">Q_QGTQ</code>, + <code class="Nm">Q_QGEQ</code>, <code class="Nm">Q_QEQ</code>, + <code class="Nm">Q_QNEQ</code>, <code class="Nm">Q_OFLOW</code>, + <code class="Nm">Q_RELPREC</code> — <span class="Nd">fixed-point math + comparison and logic functions</span></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1> +<p class="Pp"><code class="In">#include + <<a class="In">sys/qmath.h</a>></code></p> +<p class="Pp"><var class="Ft">bool</var> + <br/> + <code class="Fn">Q_SIGNED</code>(<var class="Fa" style="white-space: nowrap;">NTYPE + n</var>);</p> +<p class="Pp"><var class="Ft">bool</var> + <br/> + <code class="Fn">Q_LTZ</code>(<var class="Fa" style="white-space: nowrap;">NTYPE + n</var>);</p> +<p class="Pp"><var class="Ft">bool</var> + <br/> + <code class="Fn">Q_PRECEQ</code>(<var class="Fa" style="white-space: nowrap;">QTYPE + a</var>, <var class="Fa" style="white-space: nowrap;">QTYPE b</var>);</p> +<p class="Pp"><var class="Ft">bool</var> + <br/> + <code class="Fn">Q_QLTQ</code>(<var class="Fa" style="white-space: nowrap;">QTYPE + a</var>, <var class="Fa" style="white-space: nowrap;">QTYPE b</var>);</p> +<p class="Pp"><var class="Ft">bool</var> + <br/> + <code class="Fn">Q_QLEQ</code>(<var class="Fa" style="white-space: nowrap;">QTYPE + a</var>, <var class="Fa" style="white-space: nowrap;">QTYPE b</var>);</p> +<p class="Pp"><var class="Ft">bool</var> + <br/> + <code class="Fn">Q_QGTQ</code>(<var class="Fa" style="white-space: nowrap;">QTYPE + a</var>, <var class="Fa" style="white-space: nowrap;">QTYPE b</var>);</p> +<p class="Pp"><var class="Ft">bool</var> + <br/> + <code class="Fn">Q_QGEQ</code>(<var class="Fa" style="white-space: nowrap;">QTYPE + a</var>, <var class="Fa" style="white-space: nowrap;">QTYPE b</var>);</p> +<p class="Pp"><var class="Ft">bool</var> + <br/> + <code class="Fn">Q_QEQ</code>(<var class="Fa" style="white-space: nowrap;">QTYPE + a</var>, <var class="Fa" style="white-space: nowrap;">QTYPE b</var>);</p> +<p class="Pp"><var class="Ft">bool</var> + <br/> + <code class="Fn">Q_QNEQ</code>(<var class="Fa" style="white-space: nowrap;">QTYPE + a</var>, <var class="Fa" style="white-space: nowrap;">QTYPE b</var>);</p> +<p class="Pp"><var class="Ft">bool</var> + <br/> + <code class="Fn">Q_OFLOW</code>(<var class="Fa" style="white-space: nowrap;">QTYPE + q</var>, <var class="Fa" style="white-space: nowrap;">ITYPE iv</var>);</p> +<p class="Pp"><var class="Ft">int</var> + <br/> + <code class="Fn">Q_RELPREC</code>(<var class="Fa" style="white-space: nowrap;">QTYPE + a</var>, <var class="Fa" style="white-space: nowrap;">QTYPE b</var>);</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1> +<p class="Pp"><a class="permalink" href="#Q_SIGNED"><code class="Fn" id="Q_SIGNED">Q_SIGNED</code></a>() + returns <var class="Ft">true</var> if the numeric data type passed in as + <var class="Fa">n</var> is signed, or <var class="Ft">false</var> + otherwise.</p> +<p class="Pp" id="Q_LTZ"><a class="permalink" href="#Q_LTZ"><code class="Fn">Q_LTZ</code></a>() + returns <var class="Ft">true</var> if the numeric value passed in as + <var class="Fa">n</var> is negative (requires types which use the MSB as the + sign bit), or <var class="Ft">false</var> otherwise.</p> +<p class="Pp" id="Q_PRECEQ"><a class="permalink" href="#Q_PRECEQ"><code class="Fn">Q_PRECEQ</code></a>() + returns <var class="Ft">true</var> if the number of <var class="Fa">a</var> + and <var class="Fa">b</var> fractional bits is the same, + <var class="Ft">false</var> otherwise.</p> +<p class="Pp" id="Q_QLTQ">The + <a class="permalink" href="#Q_QLTQ"><code class="Fn">Q_QLTQ</code></a>(), + <a class="permalink" href="#Q_QLEQ"><code class="Fn" id="Q_QLEQ">Q_QLEQ</code></a>(), + <a class="permalink" href="#Q_QGTQ"><code class="Fn" id="Q_QGTQ">Q_QGTQ</code></a>(), + <a class="permalink" href="#Q_QGEQ"><code class="Fn" id="Q_QGEQ">Q_QGEQ</code></a>(), + <a class="permalink" href="#Q_QEQ"><code class="Fn" id="Q_QEQ">Q_QEQ</code></a>() + and + <a class="permalink" href="#Q_QNEQ"><code class="Fn" id="Q_QNEQ">Q_QNEQ</code></a>() + functions compare two Q numbers, returning <var class="Ft">true</var> if + <var class="Fa">a</var> is less than, less than or equal to, greater than, + greater than or equal to, equal to, or not equal to <var class="Fa">b</var> + respectively, or <var class="Ft">false</var> otherwise. The integral and + fractional values are used to perform the comparison, without explicit + concern for the underlying number of integer versus fractional bits.</p> +<p class="Pp" id="Q_OFLOW"><a class="permalink" href="#Q_OFLOW"><code class="Fn">Q_OFLOW</code></a>() + returns <var class="Ft">true</var> if integer value <var class="Fa">iv</var> + cannot be stored in <var class="Fa">q</var> without truncation, or false + otherwise.</p> +<p class="Pp" id="Q_RELPREC"><a class="permalink" href="#Q_RELPREC"><code class="Fn">Q_RELPREC</code></a>() + returns the relative precision of <var class="Fa">a</var> versus + <var class="Fa">b</var>. In terms of + <a class="permalink" href="#Qm.n"><i class="Em" id="Qm.n">Qm.n</i></a> + notation, this function returns the difference between the + <a class="permalink" href="#n"><i class="Em" id="n">n</i></a> values of + <var class="Fa">a</var> and <var class="Fa">b</var>. For example, a return + value of +4 means that <var class="Fa">a</var> has an additional 4 bits of + fractional precision compared to <var class="Fa">b</var>.</p> +<p class="Pp">All of those functions operate on the following data types: + <var class="Vt">s8q_t</var>, <var class="Vt">u8q_t</var>, + <var class="Vt">s16q_t</var>, <var class="Vt">u16q_t</var>, + <var class="Vt">s32q_t</var>, <var class="Vt">u32q_t</var>, + <var class="Vt">s64q_t</var>, and <var class="Vt">u64q_t</var>, which are + referred to generically as <var class="Fa">QTYPE</var>. The + <var class="Fa">ITYPE</var> refers to the <a class="Xr">stdint(7)</a> + integer types. <var class="Fa">NTYPE</var> is used to refer to any numeric + type and is therefore a superset of <var class="Fa">QTYPE</var> and + <var class="Fa">ITYPE</var>.</p> +<p class="Pp">For more details, see <a class="Xr">qmath(3)</a>.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="RETURN_VALUES"><a class="permalink" href="#RETURN_VALUES">RETURN + VALUES</a></h1> +<p class="Pp">The <code class="Fn">Q_SIGNED</code>(), + <code class="Fn">Q_LTZ</code>(), <code class="Fn">Q_PRECEQ</code>(), + <code class="Fn">Q_QLTQ</code>(), <code class="Fn">Q_QLEQ</code>(), + <code class="Fn">Q_QGTQ</code>(), <code class="Fn">Q_QGEQ</code>(), + <code class="Fn">Q_QEQ</code>(), <code class="Fn">Q_QNEQ</code>() and + <code class="Fn">Q_OFLOW</code>() functions return expressions that evaluate + to boolean <var class="Vt">true</var> or <var class="Vt">false</var>.</p> +<p class="Pp"><code class="Fn">Q_RELPREC</code>() returns the relative precision + difference as a signed integer.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE + ALSO</a></h1> +<p class="Pp"><a class="Xr">errno(2)</a>, <a class="Xr">qmath(3)</a>, + <a class="Xr">stdint(7)</a></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1> +<p class="Pp">The <a class="Xr">qmath(3)</a> functions first appeared in + <span class="Ux">FreeBSD 13.0</span>.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1> +<p class="Pp">The <a class="Xr">qmath(3)</a> functions and this manual page were + written by <span class="An">Lawrence Stewart</span> + <<a class="Mt" href="mailto:lstewart@FreeBSD.org">lstewart@FreeBSD.org</a>> + and sponsored by Netflix, Inc.</p> +</section> +</div> +<table class="foot"> + <tr> + <td class="foot-date">July 8, 2018</td> + <td class="foot-os">FreeBSD 15.0</td> + </tr> +</table> |
