aboutsummaryrefslogtreecommitdiff
path: root/source/subj-C/subjfloat_config.h
blob: 3c2ed79d0e9cf388a2efda2be052e55c1f452d88 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133

/*----------------------------------------------------------------------------
| The following macros are defined to indicate all the subject functions that
| exist.
*----------------------------------------------------------------------------*/

#define SUBJ_UI32_TO_F32
#define SUBJ_UI64_TO_F32
#define SUBJ_I32_TO_F32
#define SUBJ_I64_TO_F32

#define SUBJ_F32_TO_UI32_RX_MINMAG
#define SUBJ_F32_TO_UI64_RX_MINMAG
#define SUBJ_F32_TO_I32_RX_MINMAG
#define SUBJ_F32_TO_I64_RX_MINMAG
#define SUBJ_F32_ADD
#define SUBJ_F32_SUB
#define SUBJ_F32_MUL
#ifdef __STDC_VERSION__
#if 199901L <= __STDC_VERSION__
#define SUBJ_F32_MULADD
#endif
#endif
#define SUBJ_F32_DIV
#ifdef __STDC_VERSION__
#if 199901L <= __STDC_VERSION__
#define SUBJ_F32_SQRT
#endif
#endif
#define SUBJ_F32_EQ
#define SUBJ_F32_LE
#define SUBJ_F32_LT

#ifdef FLOAT64

#define SUBJ_UI32_TO_F64
#define SUBJ_UI64_TO_F64
#define SUBJ_I32_TO_F64
#define SUBJ_I64_TO_F64

#define SUBJ_F32_TO_F64

#define SUBJ_F64_TO_UI32_RX_MINMAG
#define SUBJ_F64_TO_UI64_RX_MINMAG
#define SUBJ_F64_TO_I32_RX_MINMAG
#define SUBJ_F64_TO_I64_RX_MINMAG
#define SUBJ_F64_TO_F32
#define SUBJ_F64_ADD
#define SUBJ_F64_SUB
#define SUBJ_F64_MUL
#ifdef __STDC_VERSION__
#if 199901L <= __STDC_VERSION__
#define SUBJ_F64_MULADD
#endif
#endif
#define SUBJ_F64_DIV
#define SUBJ_F64_SQRT
#define SUBJ_F64_EQ
#define SUBJ_F64_LE
#define SUBJ_F64_LT

#endif

#if defined EXTFLOAT80 && defined LONG_DOUBLE_IS_EXTFLOAT80

#define SUBJ_UI32_TO_EXTF80
#define SUBJ_UI64_TO_EXTF80
#define SUBJ_I32_TO_EXTF80
#define SUBJ_I64_TO_EXTF80

#define SUBJ_F32_TO_EXTF80
#ifdef FLOAT64
#define SUBJ_F64_TO_EXTF80
#endif

#define SUBJ_EXTF80_TO_UI32_RX_MINMAG
#define SUBJ_EXTF80_TO_UI64_RX_MINMAG
#define SUBJ_EXTF80_TO_I32_RX_MINMAG
#define SUBJ_EXTF80_TO_I64_RX_MINMAG
#define SUBJ_EXTF80_TO_F32
#ifdef FLOAT64
#define SUBJ_EXTF80_TO_F64
#endif
#define SUBJ_EXTF80_ADD
#define SUBJ_EXTF80_SUB
#define SUBJ_EXTF80_MUL
#define SUBJ_EXTF80_DIV
#define SUBJ_EXTF80_EQ
#define SUBJ_EXTF80_LE
#define SUBJ_EXTF80_LT

#endif

#if defined FLOAT128 && defined LONG_DOUBLE_IS_FLOAT128

#define SUBJ_UI32_TO_F128
#define SUBJ_UI64_TO_F128
#define SUBJ_I32_TO_F128
#define SUBJ_I64_TO_F128

#define SUBJ_F32_TO_F128
#ifdef FLOAT64
#define SUBJ_F64_TO_F128
#endif

#define SUBJ_F128_TO_UI32_RX_MINMAG
#define SUBJ_F128_TO_UI64_RX_MINMAG
#define SUBJ_F128_TO_I32_RX_MINMAG
#define SUBJ_F128_TO_I64_RX_MINMAG
#define SUBJ_F128_TO_F32
#ifdef FLOAT64
#define SUBJ_F128_TO_F64
#endif
#define SUBJ_F128_ADD
#define SUBJ_F128_SUB
#define SUBJ_F128_MUL
#ifdef __STDC_VERSION__
#if 199901L <= __STDC_VERSION__
#define SUBJ_F128_MULADD
#endif
#endif
#define SUBJ_F128_DIV
#ifdef __STDC_VERSION__
#if 199901L <= __STDC_VERSION__
#define SUBJ_F128_SQRT
#endif
#endif
#define SUBJ_F128_EQ
#define SUBJ_F128_LE
#define SUBJ_F128_LT

#endif