ReactOS
0.4.16-dev-470-g91b8923
fpmath.h
Go to the documentation of this file.
1
/*-
2
* Copyright (c) 2003 Mike Barcroft <mike@FreeBSD.org>
3
* Copyright (c) 2002 David Schultz <dschultz@uclink.Berkeley.EDU>
4
* All rights reserved.
5
*
6
* Redistribution and use in source and binary forms, with or without
7
* modification, are permitted provided that the following conditions
8
* are met:
9
* 1. Redistributions of source code must retain the above copyright
10
* notice, this list of conditions and the following disclaimer.
11
* 2. Redistributions in binary form must reproduce the above copyright
12
* notice, this list of conditions and the following disclaimer in the
13
* documentation and/or other materials provided with the distribution.
14
*
15
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25
* SUCH DAMAGE.
26
*
27
* $FreeBSD: src/lib/libc/include/fpmath.h,v 1.1 2003/02/08 20:37:53 mike Exp $
28
*/
29
30
#include <sys/endian.h>
31
#include "_fpmath.h"
32
33
union
IEEEf2bits
{
34
float
f
;
35
struct
{
36
#if _BYTE_ORDER == _LITTLE_ENDIAN
37
unsigned
int
man
:23;
38
unsigned
int
exp
:8;
39
unsigned
int
sign
:1;
40
#else
/* _BIG_ENDIAN */
41
unsigned
int
sign
:1;
42
unsigned
int
exp
:8;
43
unsigned
int
man
:23;
44
#endif
45
}
bits
;
46
};
47
48
union
IEEEd2bits
{
49
double
d
;
50
struct
{
51
#if _BYTE_ORDER == _LITTLE_ENDIAN
52
unsigned
int
manl
:32;
53
unsigned
int
manh
:20;
54
unsigned
int
exp
:11;
55
unsigned
int
sign
:1;
56
#else
/* _BIG_ENDIAN */
57
unsigned
int
sign
:1;
58
unsigned
int
exp
:11;
59
unsigned
int
manh
:20;
60
unsigned
int
manl
:32;
61
#endif
62
}
bits
;
63
};
IEEEd2bits
Definition:
fpmath.h:48
IEEEd2bits::manh
unsigned int manh
Definition:
fpmath.h:53
IEEEd2bits::d
double d
Definition:
fpmath.h:49
IEEEd2bits::bits
struct IEEEd2bits::@187 bits
IEEEd2bits::manl
unsigned int manl
Definition:
fpmath.h:52
IEEEd2bits::exp
unsigned int exp
Definition:
fpmath.h:54
IEEEd2bits::sign
unsigned int sign
Definition:
fpmath.h:55
IEEEf2bits
Definition:
fpmath.h:33
IEEEf2bits::bits
struct IEEEf2bits::@186 bits
IEEEf2bits::sign
unsigned int sign
Definition:
fpmath.h:39
IEEEf2bits::exp
unsigned int exp
Definition:
fpmath.h:38
IEEEf2bits::man
unsigned int man
Definition:
fpmath.h:37
IEEEf2bits::f
float f
Definition:
fpmath.h:34
dll
3rdparty
libtirpc
tirpc
fpmath.h
Generated on Wed Jan 15 2025 06:02:47 for ReactOS by
1.9.6