Lines Matching +full:- +full:- +full:-

29    02110-1301, USA.  */
31 /* ------------------------------------------------------------------ */
33 /* ------------------------------------------------------------------ */
36 /* ------------------------------------------------------------------ */
44 /* compile-time endian tester [assumes sizeof(Int)>1] */
46 static const Flag *mfctop=(Flag *)&mfcone; /* -> top byte */
47 #define LITEND *mfctop /* named flag; 1=little-endian */
50 /* ------------------------------------------------------------------ */
51 /* round-for-reround digits */
52 /* ------------------------------------------------------------------ */
55 /* ------------------------------------------------------------------ */
57 /* ------------------------------------------------------------------ */
64 /* ------------------------------------------------------------------ */
65 /* decContextClearStatus -- clear bits in current status */
73 /* ------------------------------------------------------------------ */
75 context->status&=~mask; in decContextClearStatus()
79 /* ------------------------------------------------------------------ */
80 /* decContextDefault -- initialize a context structure */
84 /* DEC_INIT_BASE -- select ANSI X3-274 defaults */
85 /* DEC_INIT_DECIMAL32 -- select IEEE 754r defaults, 32-bit */
86 /* DEC_INIT_DECIMAL64 -- select IEEE 754r defaults, 64-bit */
87 /* DEC_INIT_DECIMAL128 -- select IEEE 754r defaults, 128-bit */
91 /* ------------------------------------------------------------------ */
94 context->digits=9; /* 9 digits */ in decContextDefault()
95 context->emax=DEC_MAX_EMAX; /* 9-digit exponents */ in decContextDefault()
96 context->emin=DEC_MIN_EMIN; /* .. balanced */ in decContextDefault()
97 context->round=DEC_ROUND_HALF_UP; /* 0.5 rises */ in decContextDefault()
98 context->traps=DEC_Errors; /* all but informational */ in decContextDefault()
99 context->status=0; /* cleared */ in decContextDefault()
100 context->clamp=0; /* no clamping */ in decContextDefault()
102 context->extended=0; /* cleared */ in decContextDefault()
109 context->digits=7; /* digits */ in decContextDefault()
110 context->emax=96; /* Emax */ in decContextDefault()
111 context->emin=-95; /* Emin */ in decContextDefault()
112 context->round=DEC_ROUND_HALF_EVEN; /* 0.5 to nearest even */ in decContextDefault()
113 context->traps=0; /* no traps set */ in decContextDefault()
114 context->clamp=1; /* clamp exponents */ in decContextDefault()
116 context->extended=1; /* set */ in decContextDefault()
120 context->digits=16; /* digits */ in decContextDefault()
121 context->emax=384; /* Emax */ in decContextDefault()
122 context->emin=-383; /* Emin */ in decContextDefault()
123 context->round=DEC_ROUND_HALF_EVEN; /* 0.5 to nearest even */ in decContextDefault()
124 context->traps=0; /* no traps set */ in decContextDefault()
125 context->clamp=1; /* clamp exponents */ in decContextDefault()
127 context->extended=1; /* set */ in decContextDefault()
131 context->digits=34; /* digits */ in decContextDefault()
132 context->emax=6144; /* Emax */ in decContextDefault()
133 context->emin=-6143; /* Emin */ in decContextDefault()
134 context->round=DEC_ROUND_HALF_EVEN; /* 0.5 to nearest even */ in decContextDefault()
135 context->traps=0; /* no traps set */ in decContextDefault()
136 context->clamp=1; /* clamp exponents */ in decContextDefault()
138 context->extended=1; /* set */ in decContextDefault()
152 printf("Warning: DECLITEND is set to %d, but this computer appears to be %s-endian\n", in decContextDefault()
158 /* ------------------------------------------------------------------ */
159 /* decContextGetRounding -- return current rounding mode */
165 /* ------------------------------------------------------------------ */
167 return context->round; in decContextGetRounding()
170 /* ------------------------------------------------------------------ */
171 /* decContextGetStatus -- return current status */
177 /* ------------------------------------------------------------------ */
179 return context->status; in decContextGetStatus()
182 /* ------------------------------------------------------------------ */
183 /* decContextRestoreStatus -- restore bits in current status */
193 /* ------------------------------------------------------------------ */
196 context->status&=~mask; /* clear the selected bits */ in decContextRestoreStatus()
197 context->status|=(mask&newstatus); /* or in the new bits */ in decContextRestoreStatus()
201 /* ------------------------------------------------------------------ */
202 /* decContextSaveStatus -- save bits in current status */
210 /* ------------------------------------------------------------------ */
212 return context->status&mask; in decContextSaveStatus()
215 /* ------------------------------------------------------------------ */
216 /* decContextSetRounding -- set current rounding mode */
223 /* ------------------------------------------------------------------ */
226 context->round=newround; in decContextSetRounding()
230 /* ------------------------------------------------------------------ */
231 /* decContextSetStatus -- set status and raise trap if appropriate */
239 /* ------------------------------------------------------------------ */
241 context->status|=status; in decContextSetStatus()
242 if (status & context->traps) raise(SIGFPE); in decContextSetStatus()
245 /* ------------------------------------------------------------------ */
246 /* decContextSetStatusFromString -- set status from a string + trap */
258 /* ------------------------------------------------------------------ */
296 /* ------------------------------------------------------------------ */
297 /* decContextSetStatusFromStringQuiet -- set status from a string */
309 /* ------------------------------------------------------------------ */
347 /* ------------------------------------------------------------------ */
348 /* decContextSetStatusQuiet -- set status without trap */
355 /* ------------------------------------------------------------------ */
357 context->status|=status; in decContextSetStatusQuiet()
360 /* ------------------------------------------------------------------ */
361 /* decContextStatusToString -- convert status flags to a string */
367 /* ------------------------------------------------------------------ */
369 Int status=context->status; in decContextStatusToString()
394 /* ------------------------------------------------------------------ */
395 /* decContextTestSavedStatus -- test bits in saved status */
403 /* ------------------------------------------------------------------ */
408 /* ------------------------------------------------------------------ */
409 /* decContextTestStatus -- test bits in current status */
417 /* ------------------------------------------------------------------ */
419 return (context->status&mask)!=0; in decContextTestStatus()
422 /* ------------------------------------------------------------------ */
423 /* decContextZeroStatus -- clear all status bits */
429 /* ------------------------------------------------------------------ */
431 context->status=0; in decContextZeroStatus()