2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
11 #pragma pack(push,_CRT_PACKING)
18 _FpCompareEqual
,_FpCompareGreater
,_FpCompareLess
,_FpCompareUnordered
19 } _FPIEEE_COMPARE_RESULT
;
22 _FpFormatFp32
,_FpFormatFp64
,_FpFormatFp80
,_FpFormatFp128
,_FpFormatI16
,_FpFormatI32
,_FpFormatI64
,_FpFormatU16
,_FpFormatU32
,_FpFormatU64
,_FpFormatBcd80
,_FpFormatCompare
,_FpFormatString
,
29 _FpCodeUnspecified
,_FpCodeAdd
,_FpCodeSubtract
,_FpCodeMultiply
,_FpCodeDivide
,_FpCodeSquareRoot
,_FpCodeRemainder
,_FpCodeCompare
,_FpCodeConvert
,_FpCodeRound
,_FpCodeTruncate
,_FpCodeFloor
,_FpCodeCeil
,_FpCodeAcos
,_FpCodeAsin
,_FpCodeAtan
,_FpCodeAtan2
,_FpCodeCabs
,_FpCodeCos
,_FpCodeCosh
,_FpCodeExp
,_FpCodeFabs
,_FpCodeFmod
,_FpCodeFrexp
,_FpCodeHypot
,_FpCodeLdexp
,_FpCodeLog
,_FpCodeLog10
,_FpCodeModf
,_FpCodePow
,_FpCodeSin
,_FpCodeSinh
,_FpCodeTan
,_FpCodeTanh
,_FpCodeY0
,_FpCodeY1
,_FpCodeYn
,_FpCodeLogb
,_FpCodeNextafter
,_FpCodeNegate
,_FpCodeFmin
,_FpCodeFmax
,_FpCodeConvertTrunc
,_XMMIAddps
,_XMMIAddss
,_XMMISubps
,_XMMISubss
,_XMMIMulps
,_XMMIMulss
,_XMMIDivps
,_XMMIDivss
,_XMMISqrtps
,_XMMISqrtss
,_XMMIMaxps
,_XMMIMaxss
,_XMMIMinps
,_XMMIMinss
,_XMMICmpps
,_XMMICmpss
,_XMMIComiss
,_XMMIUComiss
,_XMMICvtpi2ps
,_XMMICvtsi2ss
,_XMMICvtps2pi
,_XMMICvtss2si
,_XMMICvttps2pi
,_XMMICvttss2si
,_XMMIAddsubps
,_XMMIHaddps
,_XMMIHsubps
,_XMMI2Addpd
,_XMMI2Addsd
,_XMMI2Subpd
,_XMMI2Subsd
,_XMMI2Mulpd
,_XMMI2Mulsd
,_XMMI2Divpd
,_XMMI2Divsd
,_XMMI2Sqrtpd
,_XMMI2Sqrtsd
,_XMMI2Maxpd
,_XMMI2Maxsd
,_XMMI2Minpd
,_XMMI2Minsd
,_XMMI2Cmppd
,_XMMI2Cmpsd
,_XMMI2Comisd
,_XMMI2UComisd
,_XMMI2Cvtpd2pi
,_XMMI2Cvtsd2si
,_XMMI2Cvttpd2pi
,_XMMI2Cvttsd2si
,_XMMI2Cvtps2pd
,_XMMI2Cvtss2sd
,_XMMI2Cvtpd2ps
,_XMMI2Cvtsd2ss
,_XMMI2Cvtdq2ps
,_XMMI2Cvttps2dq
,_XMMI2Cvtps2dq
,_XMMI2Cvttpd2dq
,_XMMI2Cvtpd2dq
,_XMMI2Addsubpd
,_XMMI2Haddpd
,_XMMI2Hsubpd
,
31 _FpCodeFma
,_FpCodeFmaSingle
,_FpCodeFmaDouble
,_FpCodeFms
,_FpCodeFmsSingle
,_FpCodeFmsDouble
,_FpCodeFnma
,_FpCodeFnmaSingle
,_FpCodeFnmaDouble
,_FpCodeFamin
,_FpCodeFamax
36 _FpRoundNearest
,_FpRoundMinusInfinity
,_FpRoundPlusInfinity
,_FpRoundChopped
37 } _FPIEEE_ROUNDING_MODE
;
40 _FpPrecisionFull
,_FpPrecision53
,_FpPrecision24
,
42 _FpPrecision64
,_FpPrecision113
50 typedef unsigned short _U16
;
51 typedef unsigned int _U32
;
52 __MINGW_EXTENSION
typedef __int64 _Q64
;
62 typedef struct _CRT_ALIGN(16) {
66 typedef struct _CRT_ALIGN(8) {
70 typedef struct _CRT_ALIGN(8) {
82 typedef struct _CRT_ALIGN(16) {
104 unsigned int OperandValid
: 1;
105 unsigned int Format
: 4;
109 unsigned int Inexact
: 1;
110 unsigned int Underflow
: 1;
111 unsigned int Overflow
: 1;
112 unsigned int ZeroDivide
: 1;
113 unsigned int InvalidOperation
: 1;
114 } _FPIEEE_EXCEPTION_FLAGS
;
117 unsigned int RoundingMode
: 2;
118 unsigned int Precision
: 3;
119 unsigned int Operation
:12;
120 _FPIEEE_EXCEPTION_FLAGS Cause
;
121 _FPIEEE_EXCEPTION_FLAGS Enable
;
122 _FPIEEE_EXCEPTION_FLAGS Status
;
123 _FPIEEE_VALUE Operand1
;
124 _FPIEEE_VALUE Operand2
;
125 _FPIEEE_VALUE Result
;
126 #if defined(__ia64__)
127 _FPIEEE_VALUE Operand3
;
129 } _FPIEEE_RECORD
,*_PFPIEEE_RECORD
;
131 struct _EXCEPTION_POINTERS
;
133 _CRTIMP
int __cdecl
_fpieee_flt(unsigned long _ExceptionCode
,struct _EXCEPTION_POINTERS
*_PtExceptionPtr
,int (__cdecl
*_Handler
)(_FPIEEE_RECORD
*));