LCOV - code coverage report
Current view: top level - bsdsrc - mathimpl.h (source / functions) Coverage Total Hit
Test: app.info Lines: 100.0 % 4 4
Test Date: 2024-01-11 15:52:50 Functions: 100.0 % 1 1
Branches: - 0 0

             Branch data     Line data    Source code
       1                 :             : /*
       2                 :             :  * Copyright (c) 1988, 1993
       3                 :             :  *      The Regents of the University of California.  All rights reserved.
       4                 :             :  *
       5                 :             :  * Redistribution and use in source and binary forms, with or without
       6                 :             :  * modification, are permitted provided that the following conditions
       7                 :             :  * are met:
       8                 :             :  * 1. Redistributions of source code must retain the above copyright
       9                 :             :  *    notice, this list of conditions and the following disclaimer.
      10                 :             :  * 2. Redistributions in binary form must reproduce the above copyright
      11                 :             :  *    notice, this list of conditions and the following disclaimer in the
      12                 :             :  *    documentation and/or other materials provided with the distribution.
      13                 :             :  * 3. Neither the name of the University nor the names of its contributors
      14                 :             :  *    may be used to endorse or promote products derived from this software
      15                 :             :  *    without specific prior written permission.
      16                 :             :  *
      17                 :             :  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
      18                 :             :  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
      19                 :             :  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
      20                 :             :  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
      21                 :             :  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
      22                 :             :  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
      23                 :             :  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
      24                 :             :  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
      25                 :             :  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
      26                 :             :  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
      27                 :             :  * SUCH DAMAGE.
      28                 :             :  *
      29                 :             :  *      @(#)mathimpl.h  8.1 (Berkeley) 6/4/93
      30                 :             :  * $FreeBSD: src/lib/msun/bsdsrc/mathimpl.h,v 1.7 2005/11/18 05:03:12 bde Exp $
      31                 :             :  */
      32                 :             : 
      33                 :             : #ifndef _MATHIMPL_H_
      34                 :             : #define _MATHIMPL_H_
      35                 :             : 
      36                 :             : #include "cdefs-compat.h"
      37                 :             : #include "math_private.h"
      38                 :             : 
      39                 :             : /*
      40                 :             :  * TRUNC() is a macro that sets the trailing 27 bits in the mantissa of an
      41                 :             :  * IEEE double variable to zero.  It must be expression-like for syntactic
      42                 :             :  * reasons, and we implement this expression using an inline function
      43                 :             :  * instead of a pure macro to avoid depending on the gcc feature of
      44                 :             :  * statement-expressions.
      45                 :             :  */
      46                 :             : #define TRUNC(d)        (_b_trunc(&(d)))
      47                 :             : 
      48                 :             : static __inline void
      49                 :          76 : _b_trunc(volatile double *_dp)
      50                 :             : {
      51                 :             :         //VBS
      52                 :             :         //u_int32_t _lw;
      53                 :             :         u_int32_t _lw;
      54                 :             : 
      55                 :          76 :         GET_LOW_WORD(_lw, *_dp);
      56                 :          76 :         SET_LOW_WORD(*_dp, _lw & 0xf8000000);
      57                 :          76 : }
      58                 :             : 
      59                 :             : struct Double {
      60                 :             :         double  a;
      61                 :             :         double  b;
      62                 :             : };
      63                 :             : 
      64                 :             : /*
      65                 :             :  * Functions internal to the math package, yet not static.
      66                 :             :  */
      67                 :             : double  __exp__D(double, double);
      68                 :             : struct Double __log__D(double);
      69                 :             : 
      70                 :             : #endif /* !_MATHIMPL_H_ */
        

Generated by: LCOV version 2.0-115.g950771e