1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 #define DECUSE64 1
20 #define DECSUBSET 1
21 #define DECBUFFER 32
22 #define DECNUMDIGITS 126
23
24 #include "decNumber.h"
25 #include "decNumberLocal.h"
26
27 #define PRINTDEC(msg, dn) \
28 { \
29 if_sim_debug (DBG_TRACEEXT, & cpu_dev) \
30 { \
31 char temp[256]; \
32 decNumberToString(dn, temp); \
33 sim_printf("%s:'%s'\n", msg, temp); \
34 } \
35 }
36
37 #define PRINTALL(msg, dn, set) \
38 { \
39 if_sim_debug (DBG_TRACEEXT, & cpu_dev) \
40 sim_printf("%s:'%s E%d'\n", msg, getBCDn(dn, set->digits), dn->exponent); \
41 }
42
43 decContext * decContextDefaultDPS8(decContext *context);
44 decContext * decContextDefaultDPS8Mul(decContext *context);
45 decNumber * decBCD9ToNumber(const word9 *bcd, Int length, const Int scale, decNumber *dn);
46 char *formatDecimal(uint8_t * out, decContext *set, decNumber *r, int nout, int s,
47 int sf, bool R, bool *OVR, bool *TRUNC);
48
49
50
51
52 int decCompareMAG(decNumber *lhs, decNumber *rhs, decContext *set);