comparison libdecnumber/decQuad.c @ 55:77e2b8dfacca gcc-4.4.5

update it from 4.4.3 to 4.5.0
author ryoma <e075725@ie.u-ryukyu.ac.jp>
date Fri, 12 Feb 2010 23:39:51 +0900
parents a06113de4d67
children 04ced10e8804
comparison
equal deleted inserted replaced
52:c156f1bd5cd9 55:77e2b8dfacca
27 /* decQuad.c -- decQuad operations module */ 27 /* decQuad.c -- decQuad operations module */
28 /* ------------------------------------------------------------------ */ 28 /* ------------------------------------------------------------------ */
29 /* This module comprises decQuad operations (including conversions) */ 29 /* This module comprises decQuad operations (including conversions) */
30 /* ------------------------------------------------------------------ */ 30 /* ------------------------------------------------------------------ */
31 31
32 #include "decContext.h" /* public includes */ 32 #include "decContext.h" /* public includes */
33 #include "decQuad.h" /* .. */ 33 #include "decQuad.h" /* .. */
34 34
35 /* Constant mappings for shared code */ 35 /* Constant mappings for shared code */
36 #define DECPMAX DECQUAD_Pmax 36 #define DECPMAX DECQUAD_Pmax
37 #define DECEMIN DECQUAD_Emin 37 #define DECEMIN DECQUAD_Emin
38 #define DECEMAX DECQUAD_Emax 38 #define DECEMAX DECQUAD_Emax
39 #define DECEMAXD DECQUAD_EmaxD 39 #define DECEMAXD DECQUAD_EmaxD
40 #define DECBYTES DECQUAD_Bytes 40 #define DECBYTES DECQUAD_Bytes
41 #define DECSTRING DECQUAD_String 41 #define DECSTRING DECQUAD_String
42 #define DECECONL DECQUAD_EconL 42 #define DECECONL DECQUAD_EconL
43 #define DECBIAS DECQUAD_Bias 43 #define DECBIAS DECQUAD_Bias
44 #define DECLETS DECQUAD_Declets 44 #define DECLETS DECQUAD_Declets
45 #define DECQTINY (-DECQUAD_Bias) 45 #define DECQTINY (-DECQUAD_Bias)
46 46
47 /* Type and function mappings for shared code */ 47 /* Type and function mappings for shared code */
48 #define decFloat decQuad /* Type name */ 48 #define decFloat decQuad /* Type name */
49 49
50 /* Utilities and conversions (binary results, extractors, etc.) */ 50 /* Utilities and conversions (binary results, extractors, etc.) */
51 #define decFloatFromBCD decQuadFromBCD 51 #define decFloatFromBCD decQuadFromBCD
52 #define decFloatFromInt32 decQuadFromInt32 52 #define decFloatFromInt32 decQuadFromInt32
53 #define decFloatFromPacked decQuadFromPacked 53 #define decFloatFromPacked decQuadFromPacked
54 #define decFloatFromString decQuadFromString 54 #define decFloatFromPackedChecked decQuadFromPackedChecked
55 #define decFloatFromUInt32 decQuadFromUInt32 55 #define decFloatFromString decQuadFromString
56 #define decFloatFromWider decQuadFromWider 56 #define decFloatFromUInt32 decQuadFromUInt32
57 #define decFloatGetCoefficient decQuadGetCoefficient 57 #define decFloatFromWider decQuadFromWider
58 #define decFloatGetExponent decQuadGetExponent 58 #define decFloatGetCoefficient decQuadGetCoefficient
59 #define decFloatSetCoefficient decQuadSetCoefficient 59 #define decFloatGetExponent decQuadGetExponent
60 #define decFloatSetExponent decQuadSetExponent 60 #define decFloatSetCoefficient decQuadSetCoefficient
61 #define decFloatShow decQuadShow 61 #define decFloatSetExponent decQuadSetExponent
62 #define decFloatToBCD decQuadToBCD 62 #define decFloatShow decQuadShow
63 #define decFloatToEngString decQuadToEngString 63 #define decFloatToBCD decQuadToBCD
64 #define decFloatToInt32 decQuadToInt32 64 #define decFloatToEngString decQuadToEngString
65 #define decFloatToInt32Exact decQuadToInt32Exact 65 #define decFloatToInt32 decQuadToInt32
66 #define decFloatToPacked decQuadToPacked 66 #define decFloatToInt32Exact decQuadToInt32Exact
67 #define decFloatToString decQuadToString 67 #define decFloatToPacked decQuadToPacked
68 #define decFloatToUInt32 decQuadToUInt32 68 #define decFloatToString decQuadToString
69 #define decFloatToUInt32Exact decQuadToUInt32Exact 69 #define decFloatToUInt32 decQuadToUInt32
70 #define decFloatToWider decQuadToWider 70 #define decFloatToUInt32Exact decQuadToUInt32Exact
71 #define decFloatZero decQuadZero 71 #define decFloatToWider decQuadToWider
72 #define decFloatZero decQuadZero
72 73
73 /* Computational (result is a decFloat) */ 74 /* Computational (result is a decFloat) */
74 #define decFloatAbs decQuadAbs 75 #define decFloatAbs decQuadAbs
75 #define decFloatAdd decQuadAdd 76 #define decFloatAdd decQuadAdd
76 #define decFloatAnd decQuadAnd 77 #define decFloatAnd decQuadAnd
77 #define decFloatDivide decQuadDivide 78 #define decFloatDivide decQuadDivide
78 #define decFloatDivideInteger decQuadDivideInteger 79 #define decFloatDivideInteger decQuadDivideInteger
79 #define decFloatFMA decQuadFMA 80 #define decFloatFMA decQuadFMA
80 #define decFloatInvert decQuadInvert 81 #define decFloatInvert decQuadInvert
81 #define decFloatLogB decQuadLogB 82 #define decFloatLogB decQuadLogB
82 #define decFloatMax decQuadMax 83 #define decFloatMax decQuadMax
83 #define decFloatMaxMag decQuadMaxMag 84 #define decFloatMaxMag decQuadMaxMag
84 #define decFloatMin decQuadMin 85 #define decFloatMin decQuadMin
85 #define decFloatMinMag decQuadMinMag 86 #define decFloatMinMag decQuadMinMag
86 #define decFloatMinus decQuadMinus 87 #define decFloatMinus decQuadMinus
87 #define decFloatMultiply decQuadMultiply 88 #define decFloatMultiply decQuadMultiply
88 #define decFloatNextMinus decQuadNextMinus 89 #define decFloatNextMinus decQuadNextMinus
89 #define decFloatNextPlus decQuadNextPlus 90 #define decFloatNextPlus decQuadNextPlus
90 #define decFloatNextToward decQuadNextToward 91 #define decFloatNextToward decQuadNextToward
91 #define decFloatOr decQuadOr 92 #define decFloatOr decQuadOr
92 #define decFloatPlus decQuadPlus 93 #define decFloatPlus decQuadPlus
93 #define decFloatQuantize decQuadQuantize 94 #define decFloatQuantize decQuadQuantize
94 #define decFloatReduce decQuadReduce 95 #define decFloatReduce decQuadReduce
95 #define decFloatRemainder decQuadRemainder 96 #define decFloatRemainder decQuadRemainder
96 #define decFloatRemainderNear decQuadRemainderNear 97 #define decFloatRemainderNear decQuadRemainderNear
97 #define decFloatRotate decQuadRotate 98 #define decFloatRotate decQuadRotate
98 #define decFloatScaleB decQuadScaleB 99 #define decFloatScaleB decQuadScaleB
99 #define decFloatShift decQuadShift 100 #define decFloatShift decQuadShift
100 #define decFloatSubtract decQuadSubtract 101 #define decFloatSubtract decQuadSubtract
101 #define decFloatToIntegralValue decQuadToIntegralValue 102 #define decFloatToIntegralValue decQuadToIntegralValue
102 #define decFloatToIntegralExact decQuadToIntegralExact 103 #define decFloatToIntegralExact decQuadToIntegralExact
103 #define decFloatXor decQuadXor 104 #define decFloatXor decQuadXor
104 105
105 /* Comparisons */ 106 /* Comparisons */
106 #define decFloatCompare decQuadCompare 107 #define decFloatCompare decQuadCompare
107 #define decFloatCompareSignal decQuadCompareSignal 108 #define decFloatCompareSignal decQuadCompareSignal
108 #define decFloatCompareTotal decQuadCompareTotal 109 #define decFloatCompareTotal decQuadCompareTotal
109 #define decFloatCompareTotalMag decQuadCompareTotalMag 110 #define decFloatCompareTotalMag decQuadCompareTotalMag
110 111
111 /* Copies */ 112 /* Copies */
112 #define decFloatCanonical decQuadCanonical 113 #define decFloatCanonical decQuadCanonical
113 #define decFloatCopy decQuadCopy 114 #define decFloatCopy decQuadCopy
114 #define decFloatCopyAbs decQuadCopyAbs 115 #define decFloatCopyAbs decQuadCopyAbs
115 #define decFloatCopyNegate decQuadCopyNegate 116 #define decFloatCopyNegate decQuadCopyNegate
116 #define decFloatCopySign decQuadCopySign 117 #define decFloatCopySign decQuadCopySign
117 118
118 /* Non-computational */ 119 /* Non-computational */
119 #define decFloatClass decQuadClass 120 #define decFloatClass decQuadClass
120 #define decFloatClassString decQuadClassString 121 #define decFloatClassString decQuadClassString
121 #define decFloatDigits decQuadDigits 122 #define decFloatDigits decQuadDigits
122 #define decFloatIsCanonical decQuadIsCanonical 123 #define decFloatIsCanonical decQuadIsCanonical
123 #define decFloatIsFinite decQuadIsFinite 124 #define decFloatIsFinite decQuadIsFinite
124 #define decFloatIsInfinite decQuadIsInfinite 125 #define decFloatIsInfinite decQuadIsInfinite
125 #define decFloatIsInteger decQuadIsInteger 126 #define decFloatIsInteger decQuadIsInteger
126 #define decFloatIsNaN decQuadIsNaN 127 #define decFloatIsNaN decQuadIsNaN
127 #define decFloatIsNormal decQuadIsNormal 128 #define decFloatIsNormal decQuadIsNormal
128 #define decFloatIsSignaling decQuadIsSignaling 129 #define decFloatIsSignaling decQuadIsSignaling
129 #define decFloatIsSignalling decQuadIsSignalling 130 #define decFloatIsSignalling decQuadIsSignalling
130 #define decFloatIsSigned decQuadIsSigned 131 #define decFloatIsSigned decQuadIsSigned
131 #define decFloatIsSubnormal decQuadIsSubnormal 132 #define decFloatIsSubnormal decQuadIsSubnormal
132 #define decFloatIsZero decQuadIsZero 133 #define decFloatIsZero decQuadIsZero
133 #define decFloatRadix decQuadRadix 134 #define decFloatRadix decQuadRadix
134 #define decFloatSameQuantum decQuadSameQuantum 135 #define decFloatSameQuantum decQuadSameQuantum
135 #define decFloatVersion decQuadVersion 136 #define decFloatVersion decQuadVersion
136
137 137
138 #include "decNumberLocal.h" /* local includes (need DECPMAX) */ 138 #include "decNumberLocal.h" /* local includes (need DECPMAX) */
139 #include "decCommon.c" /* non-arithmetic decFloat routines */ 139 #include "decCommon.c" /* non-arithmetic decFloat routines */
140 #include "decBasic.c" /* basic formats routines */ 140 #include "decBasic.c" /* basic formats routines */
141 141