Mercurial > dropbear
comparison libtommath/tommath_class.h @ 1692:1051e4eea25a
Update LibTomMath to 1.2.0 (#84)
* update C files
* update other files
* update headers
* update makefiles
* remove mp_set/get_double()
* use ltm 1.2.0 API
* update ltm_desc
* use bundled tommath if system-tommath is too old
* XMALLOC etc. were changed to MP_MALLOC etc.
author | Steffen Jaeckel <s@jaeckel.eu> |
---|---|
date | Tue, 26 May 2020 17:36:47 +0200 |
parents | f52919ffd3b1 |
children | 5386011b740d |
comparison
equal
deleted
inserted
replaced
1691:2d3745d58843 | 1692:1051e4eea25a |
---|---|
1 /* LibTomMath, multiple-precision integer library -- Tom St Denis | 1 /* LibTomMath, multiple-precision integer library -- Tom St Denis */ |
2 * | 2 /* SPDX-License-Identifier: Unlicense */ |
3 * LibTomMath is a library that provides multiple-precision | |
4 * integer arithmetic as well as number theoretic functionality. | |
5 * | |
6 * The library was designed directly after the MPI library by | |
7 * Michael Fromberger but has been written from scratch with | |
8 * additional optimizations in place. | |
9 * | |
10 * SPDX-License-Identifier: Unlicense | |
11 */ | |
12 | 3 |
13 #if !(defined(LTM1) && defined(LTM2) && defined(LTM3)) | 4 #if !(defined(LTM1) && defined(LTM2) && defined(LTM3)) |
5 #define LTM_INSIDE | |
14 #if defined(LTM2) | 6 #if defined(LTM2) |
15 # define LTM3 | 7 # define LTM3 |
16 #endif | 8 #endif |
17 #if defined(LTM1) | 9 #if defined(LTM1) |
18 # define LTM2 | 10 # define LTM2 |
19 #endif | 11 #endif |
20 #define LTM1 | 12 #define LTM1 |
21 #if defined(LTM_ALL) | 13 #if defined(LTM_ALL) |
22 # define BN_ERROR_C | 14 # define BN_CUTOFFS_C |
23 # define BN_FAST_MP_INVMOD_C | 15 # define BN_DEPRECATED_C |
24 # define BN_FAST_MP_MONTGOMERY_REDUCE_C | |
25 # define BN_FAST_S_MP_MUL_DIGS_C | |
26 # define BN_FAST_S_MP_MUL_HIGH_DIGS_C | |
27 # define BN_FAST_S_MP_SQR_C | |
28 # define BN_MP_2EXPT_C | 16 # define BN_MP_2EXPT_C |
29 # define BN_MP_ABS_C | 17 # define BN_MP_ABS_C |
30 # define BN_MP_ADD_C | 18 # define BN_MP_ADD_C |
31 # define BN_MP_ADD_D_C | 19 # define BN_MP_ADD_D_C |
32 # define BN_MP_ADDMOD_C | 20 # define BN_MP_ADDMOD_C |
39 # define BN_MP_CMP_MAG_C | 27 # define BN_MP_CMP_MAG_C |
40 # define BN_MP_CNT_LSB_C | 28 # define BN_MP_CNT_LSB_C |
41 # define BN_MP_COMPLEMENT_C | 29 # define BN_MP_COMPLEMENT_C |
42 # define BN_MP_COPY_C | 30 # define BN_MP_COPY_C |
43 # define BN_MP_COUNT_BITS_C | 31 # define BN_MP_COUNT_BITS_C |
32 # define BN_MP_DECR_C | |
44 # define BN_MP_DIV_C | 33 # define BN_MP_DIV_C |
45 # define BN_MP_DIV_2_C | 34 # define BN_MP_DIV_2_C |
46 # define BN_MP_DIV_2D_C | 35 # define BN_MP_DIV_2D_C |
47 # define BN_MP_DIV_3_C | 36 # define BN_MP_DIV_3_C |
48 # define BN_MP_DIV_D_C | 37 # define BN_MP_DIV_D_C |
49 # define BN_MP_DR_IS_MODULUS_C | 38 # define BN_MP_DR_IS_MODULUS_C |
50 # define BN_MP_DR_REDUCE_C | 39 # define BN_MP_DR_REDUCE_C |
51 # define BN_MP_DR_SETUP_C | 40 # define BN_MP_DR_SETUP_C |
52 # define BN_MP_EXCH_C | 41 # define BN_MP_ERROR_TO_STRING_C |
53 # define BN_MP_EXPORT_C | 42 # define BN_MP_EXCH_C |
54 # define BN_MP_EXPT_D_C | 43 # define BN_MP_EXPT_U32_C |
55 # define BN_MP_EXPT_D_EX_C | |
56 # define BN_MP_EXPTMOD_C | 44 # define BN_MP_EXPTMOD_C |
57 # define BN_MP_EXPTMOD_FAST_C | |
58 # define BN_MP_EXTEUCLID_C | 45 # define BN_MP_EXTEUCLID_C |
59 # define BN_MP_FREAD_C | 46 # define BN_MP_FREAD_C |
47 # define BN_MP_FROM_SBIN_C | |
48 # define BN_MP_FROM_UBIN_C | |
60 # define BN_MP_FWRITE_C | 49 # define BN_MP_FWRITE_C |
61 # define BN_MP_GCD_C | 50 # define BN_MP_GCD_C |
62 # define BN_MP_GET_BIT_C | 51 # define BN_MP_GET_I32_C |
63 # define BN_MP_GET_DOUBLE_C | 52 # define BN_MP_GET_I64_C |
64 # define BN_MP_GET_INT_C | 53 # define BN_MP_GET_L_C |
65 # define BN_MP_GET_LONG_C | 54 # define BN_MP_GET_LL_C |
66 # define BN_MP_GET_LONG_LONG_C | 55 # define BN_MP_GET_MAG_U32_C |
67 # define BN_MP_GROW_C | 56 # define BN_MP_GET_MAG_U64_C |
68 # define BN_MP_IMPORT_C | 57 # define BN_MP_GET_MAG_UL_C |
58 # define BN_MP_GET_MAG_ULL_C | |
59 # define BN_MP_GROW_C | |
60 # define BN_MP_INCR_C | |
69 # define BN_MP_INIT_C | 61 # define BN_MP_INIT_C |
70 # define BN_MP_INIT_COPY_C | 62 # define BN_MP_INIT_COPY_C |
63 # define BN_MP_INIT_I32_C | |
64 # define BN_MP_INIT_I64_C | |
65 # define BN_MP_INIT_L_C | |
66 # define BN_MP_INIT_LL_C | |
71 # define BN_MP_INIT_MULTI_C | 67 # define BN_MP_INIT_MULTI_C |
72 # define BN_MP_INIT_SET_C | 68 # define BN_MP_INIT_SET_C |
73 # define BN_MP_INIT_SET_INT_C | 69 # define BN_MP_INIT_SIZE_C |
74 # define BN_MP_INIT_SIZE_C | 70 # define BN_MP_INIT_U32_C |
71 # define BN_MP_INIT_U64_C | |
72 # define BN_MP_INIT_UL_C | |
73 # define BN_MP_INIT_ULL_C | |
75 # define BN_MP_INVMOD_C | 74 # define BN_MP_INVMOD_C |
76 # define BN_MP_INVMOD_SLOW_C | |
77 # define BN_MP_IS_SQUARE_C | 75 # define BN_MP_IS_SQUARE_C |
78 # define BN_MP_JACOBI_C | 76 # define BN_MP_ISEVEN_C |
79 # define BN_MP_KARATSUBA_MUL_C | 77 # define BN_MP_ISODD_C |
80 # define BN_MP_KARATSUBA_SQR_C | |
81 # define BN_MP_KRONECKER_C | 78 # define BN_MP_KRONECKER_C |
82 # define BN_MP_LCM_C | 79 # define BN_MP_LCM_C |
80 # define BN_MP_LOG_U32_C | |
83 # define BN_MP_LSHD_C | 81 # define BN_MP_LSHD_C |
84 # define BN_MP_MOD_C | 82 # define BN_MP_MOD_C |
85 # define BN_MP_MOD_2D_C | 83 # define BN_MP_MOD_2D_C |
86 # define BN_MP_MOD_D_C | 84 # define BN_MP_MOD_D_C |
87 # define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C | 85 # define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C |
90 # define BN_MP_MUL_C | 88 # define BN_MP_MUL_C |
91 # define BN_MP_MUL_2_C | 89 # define BN_MP_MUL_2_C |
92 # define BN_MP_MUL_2D_C | 90 # define BN_MP_MUL_2D_C |
93 # define BN_MP_MUL_D_C | 91 # define BN_MP_MUL_D_C |
94 # define BN_MP_MULMOD_C | 92 # define BN_MP_MULMOD_C |
95 # define BN_MP_N_ROOT_C | |
96 # define BN_MP_N_ROOT_EX_C | |
97 # define BN_MP_NEG_C | 93 # define BN_MP_NEG_C |
98 # define BN_MP_OR_C | 94 # define BN_MP_OR_C |
95 # define BN_MP_PACK_C | |
96 # define BN_MP_PACK_COUNT_C | |
99 # define BN_MP_PRIME_FERMAT_C | 97 # define BN_MP_PRIME_FERMAT_C |
100 # define BN_MP_PRIME_FROBENIUS_UNDERWOOD_C | 98 # define BN_MP_PRIME_FROBENIUS_UNDERWOOD_C |
101 # define BN_MP_PRIME_IS_DIVISIBLE_C | |
102 # define BN_MP_PRIME_IS_PRIME_C | 99 # define BN_MP_PRIME_IS_PRIME_C |
103 # define BN_MP_PRIME_MILLER_RABIN_C | 100 # define BN_MP_PRIME_MILLER_RABIN_C |
104 # define BN_MP_PRIME_NEXT_PRIME_C | 101 # define BN_MP_PRIME_NEXT_PRIME_C |
105 # define BN_MP_PRIME_RABIN_MILLER_TRIALS_C | 102 # define BN_MP_PRIME_RABIN_MILLER_TRIALS_C |
106 # define BN_MP_PRIME_RANDOM_EX_C | 103 # define BN_MP_PRIME_RAND_C |
107 # define BN_MP_PRIME_STRONG_LUCAS_SELFRIDGE_C | 104 # define BN_MP_PRIME_STRONG_LUCAS_SELFRIDGE_C |
108 # define BN_MP_RADIX_SIZE_C | 105 # define BN_MP_RADIX_SIZE_C |
109 # define BN_MP_RADIX_SMAP_C | 106 # define BN_MP_RADIX_SMAP_C |
110 # define BN_MP_RAND_C | 107 # define BN_MP_RAND_C |
111 # define BN_MP_READ_RADIX_C | 108 # define BN_MP_READ_RADIX_C |
112 # define BN_MP_READ_SIGNED_BIN_C | |
113 # define BN_MP_READ_UNSIGNED_BIN_C | |
114 # define BN_MP_REDUCE_C | 109 # define BN_MP_REDUCE_C |
115 # define BN_MP_REDUCE_2K_C | 110 # define BN_MP_REDUCE_2K_C |
116 # define BN_MP_REDUCE_2K_L_C | 111 # define BN_MP_REDUCE_2K_L_C |
117 # define BN_MP_REDUCE_2K_SETUP_C | 112 # define BN_MP_REDUCE_2K_SETUP_C |
118 # define BN_MP_REDUCE_2K_SETUP_L_C | 113 # define BN_MP_REDUCE_2K_SETUP_L_C |
119 # define BN_MP_REDUCE_IS_2K_C | 114 # define BN_MP_REDUCE_IS_2K_C |
120 # define BN_MP_REDUCE_IS_2K_L_C | 115 # define BN_MP_REDUCE_IS_2K_L_C |
121 # define BN_MP_REDUCE_SETUP_C | 116 # define BN_MP_REDUCE_SETUP_C |
117 # define BN_MP_ROOT_U32_C | |
122 # define BN_MP_RSHD_C | 118 # define BN_MP_RSHD_C |
123 # define BN_MP_SET_C | 119 # define BN_MP_SBIN_SIZE_C |
124 # define BN_MP_SET_DOUBLE_C | 120 # define BN_MP_SET_C |
125 # define BN_MP_SET_INT_C | 121 # define BN_MP_SET_I32_C |
126 # define BN_MP_SET_LONG_C | 122 # define BN_MP_SET_I64_C |
127 # define BN_MP_SET_LONG_LONG_C | 123 # define BN_MP_SET_L_C |
124 # define BN_MP_SET_LL_C | |
125 # define BN_MP_SET_U32_C | |
126 # define BN_MP_SET_U64_C | |
127 # define BN_MP_SET_UL_C | |
128 # define BN_MP_SET_ULL_C | |
128 # define BN_MP_SHRINK_C | 129 # define BN_MP_SHRINK_C |
129 # define BN_MP_SIGNED_BIN_SIZE_C | 130 # define BN_MP_SIGNED_RSH_C |
130 # define BN_MP_SQR_C | 131 # define BN_MP_SQR_C |
131 # define BN_MP_SQRMOD_C | 132 # define BN_MP_SQRMOD_C |
132 # define BN_MP_SQRT_C | 133 # define BN_MP_SQRT_C |
133 # define BN_MP_SQRTMOD_PRIME_C | 134 # define BN_MP_SQRTMOD_PRIME_C |
134 # define BN_MP_SUB_C | 135 # define BN_MP_SUB_C |
135 # define BN_MP_SUB_D_C | 136 # define BN_MP_SUB_D_C |
136 # define BN_MP_SUBMOD_C | 137 # define BN_MP_SUBMOD_C |
138 # define BN_MP_TO_RADIX_C | |
139 # define BN_MP_TO_SBIN_C | |
140 # define BN_MP_TO_UBIN_C | |
141 # define BN_MP_UBIN_SIZE_C | |
142 # define BN_MP_UNPACK_C | |
143 # define BN_MP_XOR_C | |
144 # define BN_MP_ZERO_C | |
145 # define BN_PRIME_TAB_C | |
146 # define BN_S_MP_ADD_C | |
147 # define BN_S_MP_BALANCE_MUL_C | |
148 # define BN_S_MP_EXPTMOD_C | |
149 # define BN_S_MP_EXPTMOD_FAST_C | |
150 # define BN_S_MP_GET_BIT_C | |
151 # define BN_S_MP_INVMOD_FAST_C | |
152 # define BN_S_MP_INVMOD_SLOW_C | |
153 # define BN_S_MP_KARATSUBA_MUL_C | |
154 # define BN_S_MP_KARATSUBA_SQR_C | |
155 # define BN_S_MP_MONTGOMERY_REDUCE_FAST_C | |
156 # define BN_S_MP_MUL_DIGS_C | |
157 # define BN_S_MP_MUL_DIGS_FAST_C | |
158 # define BN_S_MP_MUL_HIGH_DIGS_C | |
159 # define BN_S_MP_MUL_HIGH_DIGS_FAST_C | |
160 # define BN_S_MP_PRIME_IS_DIVISIBLE_C | |
161 # define BN_S_MP_RAND_JENKINS_C | |
162 # define BN_S_MP_RAND_PLATFORM_C | |
163 # define BN_S_MP_REVERSE_C | |
164 # define BN_S_MP_SQR_C | |
165 # define BN_S_MP_SQR_FAST_C | |
166 # define BN_S_MP_SUB_C | |
167 # define BN_S_MP_TOOM_MUL_C | |
168 # define BN_S_MP_TOOM_SQR_C | |
169 #endif | |
170 #endif | |
171 #if defined(BN_CUTOFFS_C) | |
172 #endif | |
173 | |
174 #if defined(BN_DEPRECATED_C) | |
175 # define BN_FAST_MP_INVMOD_C | |
176 # define BN_FAST_MP_MONTGOMERY_REDUCE_C | |
177 # define BN_FAST_S_MP_MUL_DIGS_C | |
178 # define BN_FAST_S_MP_MUL_HIGH_DIGS_C | |
179 # define BN_FAST_S_MP_SQR_C | |
180 # define BN_MP_AND_C | |
181 # define BN_MP_BALANCE_MUL_C | |
182 # define BN_MP_CMP_D_C | |
183 # define BN_MP_EXPORT_C | |
184 # define BN_MP_EXPTMOD_FAST_C | |
185 # define BN_MP_EXPT_D_C | |
186 # define BN_MP_EXPT_D_EX_C | |
187 # define BN_MP_EXPT_U32_C | |
188 # define BN_MP_FROM_SBIN_C | |
189 # define BN_MP_FROM_UBIN_C | |
190 # define BN_MP_GET_BIT_C | |
191 # define BN_MP_GET_INT_C | |
192 # define BN_MP_GET_LONG_C | |
193 # define BN_MP_GET_LONG_LONG_C | |
194 # define BN_MP_GET_MAG_U32_C | |
195 # define BN_MP_GET_MAG_ULL_C | |
196 # define BN_MP_GET_MAG_UL_C | |
197 # define BN_MP_IMPORT_C | |
198 # define BN_MP_INIT_SET_INT_C | |
199 # define BN_MP_INIT_U32_C | |
200 # define BN_MP_INVMOD_SLOW_C | |
201 # define BN_MP_JACOBI_C | |
202 # define BN_MP_KARATSUBA_MUL_C | |
203 # define BN_MP_KARATSUBA_SQR_C | |
204 # define BN_MP_KRONECKER_C | |
205 # define BN_MP_N_ROOT_C | |
206 # define BN_MP_N_ROOT_EX_C | |
207 # define BN_MP_OR_C | |
208 # define BN_MP_PACK_C | |
209 # define BN_MP_PRIME_IS_DIVISIBLE_C | |
210 # define BN_MP_PRIME_RANDOM_EX_C | |
211 # define BN_MP_RAND_DIGIT_C | |
212 # define BN_MP_READ_SIGNED_BIN_C | |
213 # define BN_MP_READ_UNSIGNED_BIN_C | |
214 # define BN_MP_ROOT_U32_C | |
215 # define BN_MP_SBIN_SIZE_C | |
216 # define BN_MP_SET_INT_C | |
217 # define BN_MP_SET_LONG_C | |
218 # define BN_MP_SET_LONG_LONG_C | |
219 # define BN_MP_SET_U32_C | |
220 # define BN_MP_SET_U64_C | |
221 # define BN_MP_SIGNED_BIN_SIZE_C | |
222 # define BN_MP_SIGNED_RSH_C | |
137 # define BN_MP_TC_AND_C | 223 # define BN_MP_TC_AND_C |
138 # define BN_MP_TC_DIV_2D_C | 224 # define BN_MP_TC_DIV_2D_C |
139 # define BN_MP_TC_OR_C | 225 # define BN_MP_TC_OR_C |
140 # define BN_MP_TC_XOR_C | 226 # define BN_MP_TC_XOR_C |
141 # define BN_MP_TO_SIGNED_BIN_C | |
142 # define BN_MP_TO_SIGNED_BIN_N_C | |
143 # define BN_MP_TO_UNSIGNED_BIN_C | |
144 # define BN_MP_TO_UNSIGNED_BIN_N_C | |
145 # define BN_MP_TOOM_MUL_C | 227 # define BN_MP_TOOM_MUL_C |
146 # define BN_MP_TOOM_SQR_C | 228 # define BN_MP_TOOM_SQR_C |
147 # define BN_MP_TORADIX_C | 229 # define BN_MP_TORADIX_C |
148 # define BN_MP_TORADIX_N_C | 230 # define BN_MP_TORADIX_N_C |
231 # define BN_MP_TO_RADIX_C | |
232 # define BN_MP_TO_SBIN_C | |
233 # define BN_MP_TO_SIGNED_BIN_C | |
234 # define BN_MP_TO_SIGNED_BIN_N_C | |
235 # define BN_MP_TO_UBIN_C | |
236 # define BN_MP_TO_UNSIGNED_BIN_C | |
237 # define BN_MP_TO_UNSIGNED_BIN_N_C | |
238 # define BN_MP_UBIN_SIZE_C | |
239 # define BN_MP_UNPACK_C | |
149 # define BN_MP_UNSIGNED_BIN_SIZE_C | 240 # define BN_MP_UNSIGNED_BIN_SIZE_C |
150 # define BN_MP_XOR_C | 241 # define BN_MP_XOR_C |
242 # define BN_S_MP_BALANCE_MUL_C | |
243 # define BN_S_MP_EXPTMOD_FAST_C | |
244 # define BN_S_MP_GET_BIT_C | |
245 # define BN_S_MP_INVMOD_FAST_C | |
246 # define BN_S_MP_INVMOD_SLOW_C | |
247 # define BN_S_MP_KARATSUBA_MUL_C | |
248 # define BN_S_MP_KARATSUBA_SQR_C | |
249 # define BN_S_MP_MONTGOMERY_REDUCE_FAST_C | |
250 # define BN_S_MP_MUL_DIGS_FAST_C | |
251 # define BN_S_MP_MUL_HIGH_DIGS_FAST_C | |
252 # define BN_S_MP_PRIME_IS_DIVISIBLE_C | |
253 # define BN_S_MP_PRIME_RANDOM_EX_C | |
254 # define BN_S_MP_RAND_SOURCE_C | |
255 # define BN_S_MP_REVERSE_C | |
256 # define BN_S_MP_SQR_FAST_C | |
257 # define BN_S_MP_TOOM_MUL_C | |
258 # define BN_S_MP_TOOM_SQR_C | |
259 #endif | |
260 | |
261 #if defined(BN_MP_2EXPT_C) | |
262 # define BN_MP_GROW_C | |
151 # define BN_MP_ZERO_C | 263 # define BN_MP_ZERO_C |
152 # define BN_PRIME_TAB_C | 264 #endif |
153 # define BN_REVERSE_C | 265 |
266 #if defined(BN_MP_ABS_C) | |
267 # define BN_MP_COPY_C | |
268 #endif | |
269 | |
270 #if defined(BN_MP_ADD_C) | |
271 # define BN_MP_CMP_MAG_C | |
154 # define BN_S_MP_ADD_C | 272 # define BN_S_MP_ADD_C |
155 # define BN_S_MP_EXPTMOD_C | 273 # define BN_S_MP_SUB_C |
156 # define BN_S_MP_MUL_DIGS_C | 274 #endif |
157 # define BN_S_MP_MUL_HIGH_DIGS_C | 275 |
158 # define BN_S_MP_SQR_C | 276 #if defined(BN_MP_ADD_D_C) |
159 # define BN_S_MP_SUB_C | 277 # define BN_MP_CLAMP_C |
160 # define BNCORE_C | 278 # define BN_MP_GROW_C |
161 #endif | 279 # define BN_MP_SUB_D_C |
162 #if defined(BN_ERROR_C) | 280 #endif |
163 # define BN_MP_ERROR_TO_STRING_C | 281 |
164 #endif | 282 #if defined(BN_MP_ADDMOD_C) |
165 | 283 # define BN_MP_ADD_C |
166 #if defined(BN_FAST_MP_INVMOD_C) | 284 # define BN_MP_CLEAR_C |
167 # define BN_MP_ISEVEN_C | 285 # define BN_MP_INIT_C |
168 # define BN_MP_INIT_MULTI_C | |
169 # define BN_MP_COPY_C | |
170 # define BN_MP_MOD_C | 286 # define BN_MP_MOD_C |
171 # define BN_MP_ISZERO_C | |
172 # define BN_MP_SET_C | |
173 # define BN_MP_DIV_2_C | |
174 # define BN_MP_ISODD_C | |
175 # define BN_MP_SUB_C | |
176 # define BN_MP_CMP_C | |
177 # define BN_MP_CMP_D_C | |
178 # define BN_MP_ADD_C | |
179 # define BN_MP_CMP_MAG_C | |
180 # define BN_MP_EXCH_C | |
181 # define BN_MP_CLEAR_MULTI_C | |
182 #endif | |
183 | |
184 #if defined(BN_FAST_MP_MONTGOMERY_REDUCE_C) | |
185 # define BN_MP_GROW_C | |
186 # define BN_MP_RSHD_C | |
187 # define BN_MP_CLAMP_C | |
188 # define BN_MP_CMP_MAG_C | |
189 # define BN_S_MP_SUB_C | |
190 #endif | |
191 | |
192 #if defined(BN_FAST_S_MP_MUL_DIGS_C) | |
193 # define BN_MP_GROW_C | |
194 # define BN_MP_CLAMP_C | |
195 #endif | |
196 | |
197 #if defined(BN_FAST_S_MP_MUL_HIGH_DIGS_C) | |
198 # define BN_MP_GROW_C | |
199 # define BN_MP_CLAMP_C | |
200 #endif | |
201 | |
202 #if defined(BN_FAST_S_MP_SQR_C) | |
203 # define BN_MP_GROW_C | |
204 # define BN_MP_CLAMP_C | |
205 #endif | |
206 | |
207 #if defined(BN_MP_2EXPT_C) | |
208 # define BN_MP_ZERO_C | |
209 # define BN_MP_GROW_C | |
210 #endif | |
211 | |
212 #if defined(BN_MP_ABS_C) | |
213 # define BN_MP_COPY_C | |
214 #endif | |
215 | |
216 #if defined(BN_MP_ADD_C) | |
217 # define BN_S_MP_ADD_C | |
218 # define BN_MP_CMP_MAG_C | |
219 # define BN_S_MP_SUB_C | |
220 #endif | |
221 | |
222 #if defined(BN_MP_ADD_D_C) | |
223 # define BN_MP_GROW_C | |
224 # define BN_MP_SUB_D_C | |
225 # define BN_MP_CLAMP_C | |
226 #endif | |
227 | |
228 #if defined(BN_MP_ADDMOD_C) | |
229 # define BN_MP_INIT_C | |
230 # define BN_MP_ADD_C | |
231 # define BN_MP_CLEAR_C | |
232 # define BN_MP_MOD_C | |
233 #endif | 287 #endif |
234 | 288 |
235 #if defined(BN_MP_AND_C) | 289 #if defined(BN_MP_AND_C) |
236 # define BN_MP_INIT_COPY_C | 290 # define BN_MP_CLAMP_C |
237 # define BN_MP_CLAMP_C | 291 # define BN_MP_GROW_C |
238 # define BN_MP_EXCH_C | |
239 # define BN_MP_CLEAR_C | |
240 #endif | 292 #endif |
241 | 293 |
242 #if defined(BN_MP_CLAMP_C) | 294 #if defined(BN_MP_CLAMP_C) |
243 #endif | 295 #endif |
244 | 296 |
258 | 310 |
259 #if defined(BN_MP_CMP_MAG_C) | 311 #if defined(BN_MP_CMP_MAG_C) |
260 #endif | 312 #endif |
261 | 313 |
262 #if defined(BN_MP_CNT_LSB_C) | 314 #if defined(BN_MP_CNT_LSB_C) |
263 # define BN_MP_ISZERO_C | |
264 #endif | 315 #endif |
265 | 316 |
266 #if defined(BN_MP_COMPLEMENT_C) | 317 #if defined(BN_MP_COMPLEMENT_C) |
267 # define BN_MP_NEG_C | 318 # define BN_MP_NEG_C |
268 # define BN_MP_SUB_D_C | 319 # define BN_MP_SUB_D_C |
273 #endif | 324 #endif |
274 | 325 |
275 #if defined(BN_MP_COUNT_BITS_C) | 326 #if defined(BN_MP_COUNT_BITS_C) |
276 #endif | 327 #endif |
277 | 328 |
329 #if defined(BN_MP_DECR_C) | |
330 # define BN_MP_INCR_C | |
331 # define BN_MP_SET_C | |
332 # define BN_MP_SUB_D_C | |
333 # define BN_MP_ZERO_C | |
334 #endif | |
335 | |
278 #if defined(BN_MP_DIV_C) | 336 #if defined(BN_MP_DIV_C) |
279 # define BN_MP_ISZERO_C | 337 # define BN_MP_ADD_C |
280 # define BN_MP_CMP_MAG_C | 338 # define BN_MP_CLAMP_C |
281 # define BN_MP_COPY_C | 339 # define BN_MP_CLEAR_C |
340 # define BN_MP_CMP_C | |
341 # define BN_MP_CMP_MAG_C | |
342 # define BN_MP_COPY_C | |
343 # define BN_MP_COUNT_BITS_C | |
344 # define BN_MP_DIV_2D_C | |
345 # define BN_MP_EXCH_C | |
346 # define BN_MP_INIT_C | |
347 # define BN_MP_INIT_COPY_C | |
348 # define BN_MP_INIT_SIZE_C | |
349 # define BN_MP_LSHD_C | |
350 # define BN_MP_MUL_2D_C | |
351 # define BN_MP_MUL_D_C | |
352 # define BN_MP_RSHD_C | |
353 # define BN_MP_SUB_C | |
282 # define BN_MP_ZERO_C | 354 # define BN_MP_ZERO_C |
283 # define BN_MP_INIT_MULTI_C | |
284 # define BN_MP_SET_C | |
285 # define BN_MP_COUNT_BITS_C | |
286 # define BN_MP_ABS_C | |
287 # define BN_MP_MUL_2D_C | |
288 # define BN_MP_CMP_C | |
289 # define BN_MP_SUB_C | |
290 # define BN_MP_ADD_C | |
291 # define BN_MP_DIV_2D_C | |
292 # define BN_MP_EXCH_C | |
293 # define BN_MP_CLEAR_MULTI_C | |
294 # define BN_MP_INIT_SIZE_C | |
295 # define BN_MP_INIT_C | |
296 # define BN_MP_INIT_COPY_C | |
297 # define BN_MP_LSHD_C | |
298 # define BN_MP_RSHD_C | |
299 # define BN_MP_MUL_D_C | |
300 # define BN_MP_CLAMP_C | |
301 # define BN_MP_CLEAR_C | |
302 #endif | 355 #endif |
303 | 356 |
304 #if defined(BN_MP_DIV_2_C) | 357 #if defined(BN_MP_DIV_2_C) |
305 # define BN_MP_GROW_C | 358 # define BN_MP_CLAMP_C |
306 # define BN_MP_CLAMP_C | 359 # define BN_MP_GROW_C |
307 #endif | 360 #endif |
308 | 361 |
309 #if defined(BN_MP_DIV_2D_C) | 362 #if defined(BN_MP_DIV_2D_C) |
310 # define BN_MP_COPY_C | 363 # define BN_MP_CLAMP_C |
311 # define BN_MP_ZERO_C | 364 # define BN_MP_COPY_C |
312 # define BN_MP_MOD_2D_C | 365 # define BN_MP_MOD_2D_C |
313 # define BN_MP_RSHD_C | 366 # define BN_MP_RSHD_C |
314 # define BN_MP_CLAMP_C | 367 # define BN_MP_ZERO_C |
315 #endif | 368 #endif |
316 | 369 |
317 #if defined(BN_MP_DIV_3_C) | 370 #if defined(BN_MP_DIV_3_C) |
318 # define BN_MP_INIT_SIZE_C | 371 # define BN_MP_CLAMP_C |
319 # define BN_MP_CLAMP_C | 372 # define BN_MP_CLEAR_C |
320 # define BN_MP_EXCH_C | 373 # define BN_MP_EXCH_C |
321 # define BN_MP_CLEAR_C | 374 # define BN_MP_INIT_SIZE_C |
322 #endif | 375 #endif |
323 | 376 |
324 #if defined(BN_MP_DIV_D_C) | 377 #if defined(BN_MP_DIV_D_C) |
325 # define BN_MP_ISZERO_C | 378 # define BN_MP_CLAMP_C |
379 # define BN_MP_CLEAR_C | |
326 # define BN_MP_COPY_C | 380 # define BN_MP_COPY_C |
327 # define BN_MP_DIV_2D_C | 381 # define BN_MP_DIV_2D_C |
328 # define BN_MP_DIV_3_C | 382 # define BN_MP_DIV_3_C |
329 # define BN_MP_INIT_SIZE_C | 383 # define BN_MP_EXCH_C |
330 # define BN_MP_CLAMP_C | 384 # define BN_MP_INIT_SIZE_C |
331 # define BN_MP_EXCH_C | |
332 # define BN_MP_CLEAR_C | |
333 #endif | 385 #endif |
334 | 386 |
335 #if defined(BN_MP_DR_IS_MODULUS_C) | 387 #if defined(BN_MP_DR_IS_MODULUS_C) |
336 #endif | 388 #endif |
337 | 389 |
338 #if defined(BN_MP_DR_REDUCE_C) | 390 #if defined(BN_MP_DR_REDUCE_C) |
339 # define BN_MP_GROW_C | 391 # define BN_MP_CLAMP_C |
340 # define BN_MP_CLAMP_C | 392 # define BN_MP_CMP_MAG_C |
341 # define BN_MP_CMP_MAG_C | 393 # define BN_MP_GROW_C |
342 # define BN_S_MP_SUB_C | 394 # define BN_S_MP_SUB_C |
343 #endif | 395 #endif |
344 | 396 |
345 #if defined(BN_MP_DR_SETUP_C) | 397 #if defined(BN_MP_DR_SETUP_C) |
346 #endif | 398 #endif |
347 | 399 |
400 #if defined(BN_MP_ERROR_TO_STRING_C) | |
401 #endif | |
402 | |
348 #if defined(BN_MP_EXCH_C) | 403 #if defined(BN_MP_EXCH_C) |
349 #endif | 404 #endif |
350 | 405 |
351 #if defined(BN_MP_EXPORT_C) | 406 #if defined(BN_MP_EXPT_U32_C) |
407 # define BN_MP_CLEAR_C | |
352 # define BN_MP_INIT_COPY_C | 408 # define BN_MP_INIT_COPY_C |
353 # define BN_MP_COUNT_BITS_C | 409 # define BN_MP_MUL_C |
354 # define BN_MP_DIV_2D_C | 410 # define BN_MP_SET_C |
355 # define BN_MP_CLEAR_C | |
356 #endif | |
357 | |
358 #if defined(BN_MP_EXPT_D_C) | |
359 # define BN_MP_EXPT_D_EX_C | |
360 #endif | |
361 | |
362 #if defined(BN_MP_EXPT_D_EX_C) | |
363 # define BN_MP_INIT_COPY_C | |
364 # define BN_MP_SET_C | |
365 # define BN_MP_MUL_C | |
366 # define BN_MP_CLEAR_C | |
367 # define BN_MP_SQR_C | 411 # define BN_MP_SQR_C |
368 #endif | 412 #endif |
369 | 413 |
370 #if defined(BN_MP_EXPTMOD_C) | 414 #if defined(BN_MP_EXPTMOD_C) |
371 # define BN_MP_INIT_C | |
372 # define BN_MP_INVMOD_C | |
373 # define BN_MP_CLEAR_C | |
374 # define BN_MP_ABS_C | 415 # define BN_MP_ABS_C |
375 # define BN_MP_CLEAR_MULTI_C | 416 # define BN_MP_CLEAR_MULTI_C |
417 # define BN_MP_DR_IS_MODULUS_C | |
418 # define BN_MP_INIT_MULTI_C | |
419 # define BN_MP_INVMOD_C | |
420 # define BN_MP_REDUCE_IS_2K_C | |
376 # define BN_MP_REDUCE_IS_2K_L_C | 421 # define BN_MP_REDUCE_IS_2K_L_C |
377 # define BN_S_MP_EXPTMOD_C | 422 # define BN_S_MP_EXPTMOD_C |
378 # define BN_MP_DR_IS_MODULUS_C | 423 # define BN_S_MP_EXPTMOD_FAST_C |
379 # define BN_MP_REDUCE_IS_2K_C | |
380 # define BN_MP_ISODD_C | |
381 # define BN_MP_EXPTMOD_FAST_C | |
382 #endif | |
383 | |
384 #if defined(BN_MP_EXPTMOD_FAST_C) | |
385 # define BN_MP_COUNT_BITS_C | |
386 # define BN_MP_INIT_SIZE_C | |
387 # define BN_MP_CLEAR_C | |
388 # define BN_MP_MONTGOMERY_SETUP_C | |
389 # define BN_FAST_MP_MONTGOMERY_REDUCE_C | |
390 # define BN_MP_MONTGOMERY_REDUCE_C | |
391 # define BN_MP_DR_SETUP_C | |
392 # define BN_MP_DR_REDUCE_C | |
393 # define BN_MP_REDUCE_2K_SETUP_C | |
394 # define BN_MP_REDUCE_2K_C | |
395 # define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C | |
396 # define BN_MP_MULMOD_C | |
397 # define BN_MP_SET_C | |
398 # define BN_MP_MOD_C | |
399 # define BN_MP_COPY_C | |
400 # define BN_MP_SQR_C | |
401 # define BN_MP_MUL_C | |
402 # define BN_MP_EXCH_C | |
403 #endif | 424 #endif |
404 | 425 |
405 #if defined(BN_MP_EXTEUCLID_C) | 426 #if defined(BN_MP_EXTEUCLID_C) |
427 # define BN_MP_CLEAR_MULTI_C | |
428 # define BN_MP_COPY_C | |
429 # define BN_MP_DIV_C | |
430 # define BN_MP_EXCH_C | |
406 # define BN_MP_INIT_MULTI_C | 431 # define BN_MP_INIT_MULTI_C |
407 # define BN_MP_SET_C | 432 # define BN_MP_MUL_C |
408 # define BN_MP_COPY_C | 433 # define BN_MP_NEG_C |
409 # define BN_MP_ISZERO_C | 434 # define BN_MP_SET_C |
410 # define BN_MP_DIV_C | |
411 # define BN_MP_MUL_C | |
412 # define BN_MP_SUB_C | 435 # define BN_MP_SUB_C |
413 # define BN_MP_NEG_C | |
414 # define BN_MP_EXCH_C | |
415 # define BN_MP_CLEAR_MULTI_C | |
416 #endif | 436 #endif |
417 | 437 |
418 #if defined(BN_MP_FREAD_C) | 438 #if defined(BN_MP_FREAD_C) |
439 # define BN_MP_ADD_D_C | |
440 # define BN_MP_MUL_D_C | |
419 # define BN_MP_ZERO_C | 441 # define BN_MP_ZERO_C |
420 # define BN_MP_S_RMAP_REVERSE_SZ_C | 442 #endif |
421 # define BN_MP_S_RMAP_REVERSE_C | 443 |
422 # define BN_MP_MUL_D_C | 444 #if defined(BN_MP_FROM_SBIN_C) |
423 # define BN_MP_ADD_D_C | 445 # define BN_MP_FROM_UBIN_C |
424 # define BN_MP_CMP_D_C | 446 #endif |
447 | |
448 #if defined(BN_MP_FROM_UBIN_C) | |
449 # define BN_MP_CLAMP_C | |
450 # define BN_MP_GROW_C | |
451 # define BN_MP_MUL_2D_C | |
452 # define BN_MP_ZERO_C | |
425 #endif | 453 #endif |
426 | 454 |
427 #if defined(BN_MP_FWRITE_C) | 455 #if defined(BN_MP_FWRITE_C) |
428 # define BN_MP_RADIX_SIZE_C | 456 # define BN_MP_RADIX_SIZE_C |
429 # define BN_MP_TORADIX_C | 457 # define BN_MP_TO_RADIX_C |
430 #endif | 458 #endif |
431 | 459 |
432 #if defined(BN_MP_GCD_C) | 460 #if defined(BN_MP_GCD_C) |
433 # define BN_MP_ISZERO_C | |
434 # define BN_MP_ABS_C | 461 # define BN_MP_ABS_C |
435 # define BN_MP_INIT_COPY_C | 462 # define BN_MP_CLEAR_C |
463 # define BN_MP_CMP_MAG_C | |
436 # define BN_MP_CNT_LSB_C | 464 # define BN_MP_CNT_LSB_C |
437 # define BN_MP_DIV_2D_C | 465 # define BN_MP_DIV_2D_C |
438 # define BN_MP_CMP_MAG_C | 466 # define BN_MP_EXCH_C |
439 # define BN_MP_EXCH_C | 467 # define BN_MP_INIT_COPY_C |
440 # define BN_S_MP_SUB_C | |
441 # define BN_MP_MUL_2D_C | 468 # define BN_MP_MUL_2D_C |
442 # define BN_MP_CLEAR_C | 469 # define BN_S_MP_SUB_C |
443 #endif | 470 #endif |
444 | 471 |
445 #if defined(BN_MP_GET_BIT_C) | 472 #if defined(BN_MP_GET_I32_C) |
446 # define BN_MP_ISZERO_C | 473 # define BN_MP_GET_MAG_U32_C |
447 #endif | 474 #endif |
448 | 475 |
449 #if defined(BN_MP_GET_DOUBLE_C) | 476 #if defined(BN_MP_GET_I64_C) |
450 # define BN_MP_ISNEG_C | 477 # define BN_MP_GET_MAG_U64_C |
451 #endif | 478 #endif |
452 | 479 |
453 #if defined(BN_MP_GET_INT_C) | 480 #if defined(BN_MP_GET_L_C) |
454 #endif | 481 # define BN_MP_GET_MAG_UL_C |
455 | 482 #endif |
456 #if defined(BN_MP_GET_LONG_C) | 483 |
457 #endif | 484 #if defined(BN_MP_GET_LL_C) |
458 | 485 # define BN_MP_GET_MAG_ULL_C |
459 #if defined(BN_MP_GET_LONG_LONG_C) | 486 #endif |
487 | |
488 #if defined(BN_MP_GET_MAG_U32_C) | |
489 #endif | |
490 | |
491 #if defined(BN_MP_GET_MAG_U64_C) | |
492 #endif | |
493 | |
494 #if defined(BN_MP_GET_MAG_UL_C) | |
495 #endif | |
496 | |
497 #if defined(BN_MP_GET_MAG_ULL_C) | |
460 #endif | 498 #endif |
461 | 499 |
462 #if defined(BN_MP_GROW_C) | 500 #if defined(BN_MP_GROW_C) |
463 #endif | 501 #endif |
464 | 502 |
465 #if defined(BN_MP_IMPORT_C) | 503 #if defined(BN_MP_INCR_C) |
466 # define BN_MP_ZERO_C | 504 # define BN_MP_ADD_D_C |
467 # define BN_MP_MUL_2D_C | 505 # define BN_MP_DECR_C |
468 # define BN_MP_CLAMP_C | 506 # define BN_MP_SET_C |
469 #endif | 507 #endif |
470 | 508 |
471 #if defined(BN_MP_INIT_C) | 509 #if defined(BN_MP_INIT_C) |
472 #endif | 510 #endif |
473 | 511 |
474 #if defined(BN_MP_INIT_COPY_C) | 512 #if defined(BN_MP_INIT_COPY_C) |
475 # define BN_MP_INIT_SIZE_C | 513 # define BN_MP_CLEAR_C |
476 # define BN_MP_COPY_C | 514 # define BN_MP_COPY_C |
477 # define BN_MP_CLEAR_C | 515 # define BN_MP_INIT_SIZE_C |
516 #endif | |
517 | |
518 #if defined(BN_MP_INIT_I32_C) | |
519 # define BN_MP_INIT_C | |
520 # define BN_MP_SET_I32_C | |
521 #endif | |
522 | |
523 #if defined(BN_MP_INIT_I64_C) | |
524 # define BN_MP_INIT_C | |
525 # define BN_MP_SET_I64_C | |
526 #endif | |
527 | |
528 #if defined(BN_MP_INIT_L_C) | |
529 # define BN_MP_INIT_C | |
530 # define BN_MP_SET_L_C | |
531 #endif | |
532 | |
533 #if defined(BN_MP_INIT_LL_C) | |
534 # define BN_MP_INIT_C | |
535 # define BN_MP_SET_LL_C | |
478 #endif | 536 #endif |
479 | 537 |
480 #if defined(BN_MP_INIT_MULTI_C) | 538 #if defined(BN_MP_INIT_MULTI_C) |
481 # define BN_MP_ERR_C | 539 # define BN_MP_CLEAR_C |
482 # define BN_MP_INIT_C | 540 # define BN_MP_INIT_C |
483 # define BN_MP_CLEAR_C | |
484 #endif | 541 #endif |
485 | 542 |
486 #if defined(BN_MP_INIT_SET_C) | 543 #if defined(BN_MP_INIT_SET_C) |
487 # define BN_MP_INIT_C | 544 # define BN_MP_INIT_C |
488 # define BN_MP_SET_C | 545 # define BN_MP_SET_C |
489 #endif | 546 #endif |
490 | 547 |
491 #if defined(BN_MP_INIT_SET_INT_C) | |
492 # define BN_MP_INIT_C | |
493 # define BN_MP_SET_INT_C | |
494 #endif | |
495 | |
496 #if defined(BN_MP_INIT_SIZE_C) | 548 #if defined(BN_MP_INIT_SIZE_C) |
497 # define BN_MP_INIT_C | 549 #endif |
550 | |
551 #if defined(BN_MP_INIT_U32_C) | |
552 # define BN_MP_INIT_C | |
553 # define BN_MP_SET_U32_C | |
554 #endif | |
555 | |
556 #if defined(BN_MP_INIT_U64_C) | |
557 # define BN_MP_INIT_C | |
558 # define BN_MP_SET_U64_C | |
559 #endif | |
560 | |
561 #if defined(BN_MP_INIT_UL_C) | |
562 # define BN_MP_INIT_C | |
563 # define BN_MP_SET_UL_C | |
564 #endif | |
565 | |
566 #if defined(BN_MP_INIT_ULL_C) | |
567 # define BN_MP_INIT_C | |
568 # define BN_MP_SET_ULL_C | |
498 #endif | 569 #endif |
499 | 570 |
500 #if defined(BN_MP_INVMOD_C) | 571 #if defined(BN_MP_INVMOD_C) |
501 # define BN_MP_CMP_D_C | 572 # define BN_MP_CMP_D_C |
502 # define BN_MP_ISODD_C | 573 # define BN_S_MP_INVMOD_FAST_C |
503 # define BN_FAST_MP_INVMOD_C | 574 # define BN_S_MP_INVMOD_SLOW_C |
504 # define BN_MP_INVMOD_SLOW_C | 575 #endif |
505 #endif | 576 |
506 | 577 #if defined(BN_MP_IS_SQUARE_C) |
507 #if defined(BN_MP_INVMOD_SLOW_C) | 578 # define BN_MP_CLEAR_C |
508 # define BN_MP_ISZERO_C | 579 # define BN_MP_CMP_MAG_C |
580 # define BN_MP_GET_I32_C | |
581 # define BN_MP_INIT_U32_C | |
582 # define BN_MP_MOD_C | |
583 # define BN_MP_MOD_D_C | |
584 # define BN_MP_SQRT_C | |
585 # define BN_MP_SQR_C | |
586 #endif | |
587 | |
588 #if defined(BN_MP_ISEVEN_C) | |
589 #endif | |
590 | |
591 #if defined(BN_MP_ISODD_C) | |
592 #endif | |
593 | |
594 #if defined(BN_MP_KRONECKER_C) | |
595 # define BN_MP_CLEAR_C | |
596 # define BN_MP_CMP_D_C | |
597 # define BN_MP_CNT_LSB_C | |
598 # define BN_MP_COPY_C | |
599 # define BN_MP_DIV_2D_C | |
600 # define BN_MP_INIT_C | |
601 # define BN_MP_INIT_COPY_C | |
602 # define BN_MP_MOD_C | |
603 #endif | |
604 | |
605 #if defined(BN_MP_LCM_C) | |
606 # define BN_MP_CLEAR_MULTI_C | |
607 # define BN_MP_CMP_MAG_C | |
608 # define BN_MP_DIV_C | |
609 # define BN_MP_GCD_C | |
509 # define BN_MP_INIT_MULTI_C | 610 # define BN_MP_INIT_MULTI_C |
510 # define BN_MP_MOD_C | 611 # define BN_MP_MUL_C |
511 # define BN_MP_COPY_C | 612 #endif |
512 # define BN_MP_ISEVEN_C | 613 |
513 # define BN_MP_SET_C | 614 #if defined(BN_MP_LOG_U32_C) |
514 # define BN_MP_DIV_2_C | 615 # define BN_MP_CLEAR_MULTI_C |
515 # define BN_MP_ISODD_C | |
516 # define BN_MP_ADD_C | |
517 # define BN_MP_SUB_C | |
518 # define BN_MP_CMP_C | 616 # define BN_MP_CMP_C |
519 # define BN_MP_CMP_D_C | 617 # define BN_MP_CMP_D_C |
520 # define BN_MP_CMP_MAG_C | 618 # define BN_MP_COPY_C |
521 # define BN_MP_EXCH_C | 619 # define BN_MP_COUNT_BITS_C |
522 # define BN_MP_CLEAR_MULTI_C | 620 # define BN_MP_EXCH_C |
523 #endif | 621 # define BN_MP_EXPT_U32_C |
524 | 622 # define BN_MP_INIT_MULTI_C |
525 #if defined(BN_MP_IS_SQUARE_C) | 623 # define BN_MP_MUL_C |
526 # define BN_MP_MOD_D_C | 624 # define BN_MP_SET_C |
527 # define BN_MP_INIT_SET_INT_C | |
528 # define BN_MP_MOD_C | |
529 # define BN_MP_GET_INT_C | |
530 # define BN_MP_SQRT_C | |
531 # define BN_MP_SQR_C | 625 # define BN_MP_SQR_C |
532 # define BN_MP_CMP_MAG_C | 626 #endif |
533 # define BN_MP_CLEAR_C | 627 |
534 #endif | 628 #if defined(BN_MP_LSHD_C) |
535 | 629 # define BN_MP_GROW_C |
536 #if defined(BN_MP_JACOBI_C) | 630 #endif |
537 # define BN_MP_KRONECKER_C | 631 |
538 # define BN_MP_ISNEG_C | 632 #if defined(BN_MP_MOD_C) |
539 # define BN_MP_CMP_D_C | 633 # define BN_MP_ADD_C |
540 #endif | 634 # define BN_MP_CLEAR_C |
541 | |
542 #if defined(BN_MP_KARATSUBA_MUL_C) | |
543 # define BN_MP_MUL_C | |
544 # define BN_MP_INIT_SIZE_C | |
545 # define BN_MP_CLAMP_C | |
546 # define BN_S_MP_ADD_C | |
547 # define BN_MP_ADD_C | |
548 # define BN_S_MP_SUB_C | |
549 # define BN_MP_LSHD_C | |
550 # define BN_MP_CLEAR_C | |
551 #endif | |
552 | |
553 #if defined(BN_MP_KARATSUBA_SQR_C) | |
554 # define BN_MP_INIT_SIZE_C | |
555 # define BN_MP_CLAMP_C | |
556 # define BN_MP_SQR_C | |
557 # define BN_S_MP_ADD_C | |
558 # define BN_S_MP_SUB_C | |
559 # define BN_MP_LSHD_C | |
560 # define BN_MP_ADD_C | |
561 # define BN_MP_CLEAR_C | |
562 #endif | |
563 | |
564 #if defined(BN_MP_KRONECKER_C) | |
565 # define BN_MP_ISZERO_C | |
566 # define BN_MP_ISEVEN_C | |
567 # define BN_MP_INIT_COPY_C | |
568 # define BN_MP_CNT_LSB_C | |
569 # define BN_MP_DIV_2D_C | |
570 # define BN_MP_CMP_D_C | |
571 # define BN_MP_COPY_C | |
572 # define BN_MP_MOD_C | |
573 # define BN_MP_CLEAR_C | |
574 #endif | |
575 | |
576 #if defined(BN_MP_LCM_C) | |
577 # define BN_MP_INIT_MULTI_C | |
578 # define BN_MP_GCD_C | |
579 # define BN_MP_CMP_MAG_C | |
580 # define BN_MP_DIV_C | 635 # define BN_MP_DIV_C |
581 # define BN_MP_MUL_C | 636 # define BN_MP_EXCH_C |
582 # define BN_MP_CLEAR_MULTI_C | 637 # define BN_MP_INIT_SIZE_C |
583 #endif | |
584 | |
585 #if defined(BN_MP_LSHD_C) | |
586 # define BN_MP_ISZERO_C | |
587 # define BN_MP_GROW_C | |
588 # define BN_MP_RSHD_C | |
589 #endif | |
590 | |
591 #if defined(BN_MP_MOD_C) | |
592 # define BN_MP_INIT_SIZE_C | |
593 # define BN_MP_DIV_C | |
594 # define BN_MP_CLEAR_C | |
595 # define BN_MP_ISZERO_C | |
596 # define BN_MP_EXCH_C | |
597 # define BN_MP_ADD_C | |
598 #endif | 638 #endif |
599 | 639 |
600 #if defined(BN_MP_MOD_2D_C) | 640 #if defined(BN_MP_MOD_2D_C) |
641 # define BN_MP_CLAMP_C | |
642 # define BN_MP_COPY_C | |
601 # define BN_MP_ZERO_C | 643 # define BN_MP_ZERO_C |
602 # define BN_MP_COPY_C | |
603 # define BN_MP_CLAMP_C | |
604 #endif | 644 #endif |
605 | 645 |
606 #if defined(BN_MP_MOD_D_C) | 646 #if defined(BN_MP_MOD_D_C) |
607 # define BN_MP_DIV_D_C | 647 # define BN_MP_DIV_D_C |
608 #endif | 648 #endif |
609 | 649 |
610 #if defined(BN_MP_MONTGOMERY_CALC_NORMALIZATION_C) | 650 #if defined(BN_MP_MONTGOMERY_CALC_NORMALIZATION_C) |
611 # define BN_MP_COUNT_BITS_C | |
612 # define BN_MP_2EXPT_C | 651 # define BN_MP_2EXPT_C |
613 # define BN_MP_SET_C | 652 # define BN_MP_CMP_MAG_C |
653 # define BN_MP_COUNT_BITS_C | |
614 # define BN_MP_MUL_2_C | 654 # define BN_MP_MUL_2_C |
615 # define BN_MP_CMP_MAG_C | 655 # define BN_MP_SET_C |
616 # define BN_S_MP_SUB_C | 656 # define BN_S_MP_SUB_C |
617 #endif | 657 #endif |
618 | 658 |
619 #if defined(BN_MP_MONTGOMERY_REDUCE_C) | 659 #if defined(BN_MP_MONTGOMERY_REDUCE_C) |
620 # define BN_FAST_MP_MONTGOMERY_REDUCE_C | 660 # define BN_MP_CLAMP_C |
621 # define BN_MP_GROW_C | 661 # define BN_MP_CMP_MAG_C |
622 # define BN_MP_CLAMP_C | 662 # define BN_MP_GROW_C |
623 # define BN_MP_RSHD_C | 663 # define BN_MP_RSHD_C |
624 # define BN_MP_CMP_MAG_C | 664 # define BN_S_MP_MONTGOMERY_REDUCE_FAST_C |
625 # define BN_S_MP_SUB_C | 665 # define BN_S_MP_SUB_C |
626 #endif | 666 #endif |
627 | 667 |
628 #if defined(BN_MP_MONTGOMERY_SETUP_C) | 668 #if defined(BN_MP_MONTGOMERY_SETUP_C) |
629 #endif | 669 #endif |
630 | 670 |
631 #if defined(BN_MP_MUL_C) | 671 #if defined(BN_MP_MUL_C) |
632 # define BN_MP_TOOM_MUL_C | 672 # define BN_S_MP_BALANCE_MUL_C |
633 # define BN_MP_KARATSUBA_MUL_C | 673 # define BN_S_MP_KARATSUBA_MUL_C |
634 # define BN_FAST_S_MP_MUL_DIGS_C | |
635 # define BN_S_MP_MUL_C | |
636 # define BN_S_MP_MUL_DIGS_C | 674 # define BN_S_MP_MUL_DIGS_C |
675 # define BN_S_MP_MUL_DIGS_FAST_C | |
676 # define BN_S_MP_TOOM_MUL_C | |
637 #endif | 677 #endif |
638 | 678 |
639 #if defined(BN_MP_MUL_2_C) | 679 #if defined(BN_MP_MUL_2_C) |
640 # define BN_MP_GROW_C | 680 # define BN_MP_GROW_C |
641 #endif | 681 #endif |
642 | 682 |
643 #if defined(BN_MP_MUL_2D_C) | 683 #if defined(BN_MP_MUL_2D_C) |
684 # define BN_MP_CLAMP_C | |
644 # define BN_MP_COPY_C | 685 # define BN_MP_COPY_C |
645 # define BN_MP_GROW_C | 686 # define BN_MP_GROW_C |
646 # define BN_MP_LSHD_C | 687 # define BN_MP_LSHD_C |
647 # define BN_MP_CLAMP_C | |
648 #endif | 688 #endif |
649 | 689 |
650 #if defined(BN_MP_MUL_D_C) | 690 #if defined(BN_MP_MUL_D_C) |
651 # define BN_MP_GROW_C | 691 # define BN_MP_CLAMP_C |
652 # define BN_MP_CLAMP_C | 692 # define BN_MP_GROW_C |
653 #endif | 693 #endif |
654 | 694 |
655 #if defined(BN_MP_MULMOD_C) | 695 #if defined(BN_MP_MULMOD_C) |
656 # define BN_MP_INIT_SIZE_C | 696 # define BN_MP_CLEAR_C |
657 # define BN_MP_MUL_C | 697 # define BN_MP_INIT_SIZE_C |
658 # define BN_MP_CLEAR_C | |
659 # define BN_MP_MOD_C | 698 # define BN_MP_MOD_C |
660 #endif | 699 # define BN_MP_MUL_C |
661 | 700 #endif |
662 #if defined(BN_MP_N_ROOT_C) | 701 |
663 # define BN_MP_N_ROOT_EX_C | 702 #if defined(BN_MP_NEG_C) |
664 #endif | 703 # define BN_MP_COPY_C |
665 | 704 #endif |
666 #if defined(BN_MP_N_ROOT_EX_C) | 705 |
667 # define BN_MP_INIT_C | 706 #if defined(BN_MP_OR_C) |
668 # define BN_MP_SET_C | 707 # define BN_MP_CLAMP_C |
669 # define BN_MP_COPY_C | 708 # define BN_MP_GROW_C |
670 # define BN_MP_EXPT_D_EX_C | 709 #endif |
671 # define BN_MP_MUL_C | 710 |
711 #if defined(BN_MP_PACK_C) | |
712 # define BN_MP_CLEAR_C | |
713 # define BN_MP_DIV_2D_C | |
714 # define BN_MP_INIT_COPY_C | |
715 # define BN_MP_PACK_COUNT_C | |
716 #endif | |
717 | |
718 #if defined(BN_MP_PACK_COUNT_C) | |
719 # define BN_MP_COUNT_BITS_C | |
720 #endif | |
721 | |
722 #if defined(BN_MP_PRIME_FERMAT_C) | |
723 # define BN_MP_CLEAR_C | |
724 # define BN_MP_CMP_C | |
725 # define BN_MP_CMP_D_C | |
726 # define BN_MP_EXPTMOD_C | |
727 # define BN_MP_INIT_C | |
728 #endif | |
729 | |
730 #if defined(BN_MP_PRIME_FROBENIUS_UNDERWOOD_C) | |
731 # define BN_MP_ADD_C | |
732 # define BN_MP_ADD_D_C | |
733 # define BN_MP_CLEAR_MULTI_C | |
734 # define BN_MP_CMP_C | |
735 # define BN_MP_COUNT_BITS_C | |
736 # define BN_MP_EXCH_C | |
737 # define BN_MP_GCD_C | |
738 # define BN_MP_INIT_MULTI_C | |
739 # define BN_MP_KRONECKER_C | |
740 # define BN_MP_MOD_C | |
741 # define BN_MP_MUL_2_C | |
742 # define BN_MP_MUL_C | |
743 # define BN_MP_MUL_D_C | |
744 # define BN_MP_SET_C | |
745 # define BN_MP_SET_U32_C | |
746 # define BN_MP_SQR_C | |
672 # define BN_MP_SUB_C | 747 # define BN_MP_SUB_C |
673 # define BN_MP_MUL_D_C | 748 # define BN_MP_SUB_D_C |
674 # define BN_MP_DIV_C | 749 # define BN_S_MP_GET_BIT_C |
750 #endif | |
751 | |
752 #if defined(BN_MP_PRIME_IS_PRIME_C) | |
753 # define BN_MP_CLEAR_C | |
675 # define BN_MP_CMP_C | 754 # define BN_MP_CMP_C |
676 # define BN_MP_SUB_D_C | |
677 # define BN_MP_EXCH_C | |
678 # define BN_MP_CLEAR_C | |
679 #endif | |
680 | |
681 #if defined(BN_MP_NEG_C) | |
682 # define BN_MP_COPY_C | |
683 # define BN_MP_ISZERO_C | |
684 #endif | |
685 | |
686 #if defined(BN_MP_OR_C) | |
687 # define BN_MP_INIT_COPY_C | |
688 # define BN_MP_CLAMP_C | |
689 # define BN_MP_EXCH_C | |
690 # define BN_MP_CLEAR_C | |
691 #endif | |
692 | |
693 #if defined(BN_MP_PRIME_FERMAT_C) | |
694 # define BN_MP_CMP_D_C | 755 # define BN_MP_CMP_D_C |
695 # define BN_MP_INIT_C | 756 # define BN_MP_COUNT_BITS_C |
696 # define BN_MP_EXPTMOD_C | 757 # define BN_MP_DIV_2D_C |
758 # define BN_MP_INIT_SET_C | |
759 # define BN_MP_IS_SQUARE_C | |
760 # define BN_MP_PRIME_MILLER_RABIN_C | |
761 # define BN_MP_PRIME_STRONG_LUCAS_SELFRIDGE_C | |
762 # define BN_MP_RAND_C | |
763 # define BN_MP_READ_RADIX_C | |
764 # define BN_MP_SET_C | |
765 # define BN_S_MP_PRIME_IS_DIVISIBLE_C | |
766 #endif | |
767 | |
768 #if defined(BN_MP_PRIME_MILLER_RABIN_C) | |
769 # define BN_MP_CLEAR_C | |
697 # define BN_MP_CMP_C | 770 # define BN_MP_CMP_C |
698 # define BN_MP_CLEAR_C | |
699 #endif | |
700 | |
701 #if defined(BN_MP_PRIME_FROBENIUS_UNDERWOOD_C) | |
702 # define BN_MP_PRIME_IS_PRIME_C | |
703 # define BN_MP_INIT_MULTI_C | |
704 # define BN_MP_SET_LONG_C | |
705 # define BN_MP_SQR_C | |
706 # define BN_MP_SUB_D_C | |
707 # define BN_MP_KRONECKER_C | |
708 # define BN_MP_GCD_C | |
709 # define BN_MP_ADD_D_C | |
710 # define BN_MP_SET_C | |
711 # define BN_MP_COUNT_BITS_C | |
712 # define BN_MP_MUL_2_C | |
713 # define BN_MP_MUL_D_C | |
714 # define BN_MP_ADD_C | |
715 # define BN_MP_MUL_C | |
716 # define BN_MP_SUB_C | |
717 # define BN_MP_MOD_C | |
718 # define BN_MP_GET_BIT_C | |
719 # define BN_MP_EXCH_C | |
720 # define BN_MP_ISZERO_C | |
721 # define BN_MP_CMP_C | |
722 # define BN_MP_CLEAR_MULTI_C | |
723 #endif | |
724 | |
725 #if defined(BN_MP_PRIME_IS_DIVISIBLE_C) | |
726 # define BN_MP_MOD_D_C | |
727 #endif | |
728 | |
729 #if defined(BN_MP_PRIME_IS_PRIME_C) | |
730 # define BN_MP_ISEVEN_C | |
731 # define BN_MP_IS_SQUARE_C | |
732 # define BN_MP_CMP_D_C | 771 # define BN_MP_CMP_D_C |
733 # define BN_MP_PRIME_IS_DIVISIBLE_C | |
734 # define BN_MP_INIT_SET_C | |
735 # define BN_MP_PRIME_MILLER_RABIN_C | |
736 # define BN_MP_PRIME_FROBENIUS_UNDERWOOD_C | |
737 # define BN_MP_PRIME_STRONG_LUCAS_SELFRIDGE_C | |
738 # define BN_MP_READ_RADIX_C | |
739 # define BN_MP_CMP_C | |
740 # define BN_MP_SET_C | |
741 # define BN_MP_COUNT_BITS_C | |
742 # define BN_MP_RAND_C | |
743 # define BN_MP_DIV_2D_C | |
744 # define BN_MP_CLEAR_C | |
745 #endif | |
746 | |
747 #if defined(BN_MP_PRIME_MILLER_RABIN_C) | |
748 # define BN_MP_CMP_D_C | |
749 # define BN_MP_INIT_COPY_C | |
750 # define BN_MP_SUB_D_C | |
751 # define BN_MP_CNT_LSB_C | 772 # define BN_MP_CNT_LSB_C |
752 # define BN_MP_DIV_2D_C | 773 # define BN_MP_DIV_2D_C |
753 # define BN_MP_EXPTMOD_C | 774 # define BN_MP_EXPTMOD_C |
754 # define BN_MP_CMP_C | 775 # define BN_MP_INIT_C |
776 # define BN_MP_INIT_COPY_C | |
755 # define BN_MP_SQRMOD_C | 777 # define BN_MP_SQRMOD_C |
756 # define BN_MP_CLEAR_C | 778 # define BN_MP_SUB_D_C |
757 #endif | 779 #endif |
758 | 780 |
759 #if defined(BN_MP_PRIME_NEXT_PRIME_C) | 781 #if defined(BN_MP_PRIME_NEXT_PRIME_C) |
782 # define BN_MP_ADD_D_C | |
783 # define BN_MP_CLEAR_C | |
760 # define BN_MP_CMP_D_C | 784 # define BN_MP_CMP_D_C |
785 # define BN_MP_INIT_C | |
786 # define BN_MP_MOD_D_C | |
787 # define BN_MP_PRIME_IS_PRIME_C | |
761 # define BN_MP_SET_C | 788 # define BN_MP_SET_C |
762 # define BN_MP_SUB_D_C | 789 # define BN_MP_SUB_D_C |
763 # define BN_MP_ISEVEN_C | 790 #endif |
764 # define BN_MP_MOD_D_C | 791 |
765 # define BN_MP_INIT_C | 792 #if defined(BN_MP_PRIME_RABIN_MILLER_TRIALS_C) |
793 #endif | |
794 | |
795 #if defined(BN_MP_PRIME_RAND_C) | |
766 # define BN_MP_ADD_D_C | 796 # define BN_MP_ADD_D_C |
767 # define BN_MP_PRIME_IS_PRIME_C | 797 # define BN_MP_DIV_2_C |
768 # define BN_MP_CLEAR_C | 798 # define BN_MP_FROM_UBIN_C |
769 #endif | 799 # define BN_MP_MUL_2_C |
770 | |
771 #if defined(BN_MP_PRIME_RABIN_MILLER_TRIALS_C) | |
772 #endif | |
773 | |
774 #if defined(BN_MP_PRIME_RANDOM_EX_C) | |
775 # define BN_MP_READ_UNSIGNED_BIN_C | |
776 # define BN_MP_PRIME_IS_PRIME_C | 800 # define BN_MP_PRIME_IS_PRIME_C |
777 # define BN_MP_SUB_D_C | 801 # define BN_MP_SUB_D_C |
802 # define BN_S_MP_PRIME_RANDOM_EX_C | |
803 # define BN_S_MP_RAND_CB_C | |
804 # define BN_S_MP_RAND_SOURCE_C | |
805 #endif | |
806 | |
807 #if defined(BN_MP_PRIME_STRONG_LUCAS_SELFRIDGE_C) | |
808 # define BN_MP_ADD_C | |
809 # define BN_MP_ADD_D_C | |
810 # define BN_MP_CLEAR_C | |
811 # define BN_MP_CLEAR_MULTI_C | |
812 # define BN_MP_CMP_C | |
813 # define BN_MP_CMP_D_C | |
814 # define BN_MP_CNT_LSB_C | |
815 # define BN_MP_COUNT_BITS_C | |
816 # define BN_MP_DIV_2D_C | |
778 # define BN_MP_DIV_2_C | 817 # define BN_MP_DIV_2_C |
818 # define BN_MP_GCD_C | |
819 # define BN_MP_INIT_C | |
820 # define BN_MP_INIT_MULTI_C | |
821 # define BN_MP_KRONECKER_C | |
822 # define BN_MP_MOD_C | |
779 # define BN_MP_MUL_2_C | 823 # define BN_MP_MUL_2_C |
780 # define BN_MP_ADD_D_C | 824 # define BN_MP_MUL_C |
781 #endif | 825 # define BN_MP_SET_C |
782 | 826 # define BN_MP_SET_I32_C |
783 #if defined(BN_MP_PRIME_STRONG_LUCAS_SELFRIDGE_C) | 827 # define BN_MP_SET_U32_C |
784 # define BN_MP_PRIME_IS_PRIME_C | |
785 # define BN_MP_MUL_D_C | |
786 # define BN_S_MP_MUL_SI_C | |
787 # define BN_MP_INIT_C | |
788 # define BN_MP_SET_LONG_C | |
789 # define BN_MP_MUL_C | |
790 # define BN_MP_CLEAR_C | |
791 # define BN_MP_INIT_MULTI_C | |
792 # define BN_MP_GCD_C | |
793 # define BN_MP_CMP_D_C | |
794 # define BN_MP_CMP_C | |
795 # define BN_MP_KRONECKER_C | |
796 # define BN_MP_ADD_D_C | |
797 # define BN_MP_CNT_LSB_C | |
798 # define BN_MP_DIV_2D_C | |
799 # define BN_MP_SET_C | |
800 # define BN_MP_MUL_2_C | |
801 # define BN_MP_COUNT_BITS_C | |
802 # define BN_MP_MOD_C | |
803 # define BN_MP_SQR_C | 828 # define BN_MP_SQR_C |
804 # define BN_MP_SUB_C | 829 # define BN_MP_SUB_C |
805 # define BN_MP_GET_BIT_C | |
806 # define BN_MP_ADD_C | |
807 # define BN_MP_ISODD_C | |
808 # define BN_MP_DIV_2_C | |
809 # define BN_MP_SUB_D_C | 830 # define BN_MP_SUB_D_C |
810 # define BN_MP_ISZERO_C | 831 # define BN_S_MP_GET_BIT_C |
811 # define BN_MP_CLEAR_MULTI_C | 832 # define BN_S_MP_MUL_SI_C |
812 #endif | 833 #endif |
813 | 834 |
814 #if defined(BN_MP_RADIX_SIZE_C) | 835 #if defined(BN_MP_RADIX_SIZE_C) |
815 # define BN_MP_ISZERO_C | 836 # define BN_MP_CLEAR_C |
816 # define BN_MP_COUNT_BITS_C | 837 # define BN_MP_COUNT_BITS_C |
838 # define BN_MP_DIV_D_C | |
817 # define BN_MP_INIT_COPY_C | 839 # define BN_MP_INIT_COPY_C |
818 # define BN_MP_DIV_D_C | |
819 # define BN_MP_CLEAR_C | |
820 #endif | 840 #endif |
821 | 841 |
822 #if defined(BN_MP_RADIX_SMAP_C) | 842 #if defined(BN_MP_RADIX_SMAP_C) |
823 # define BN_MP_S_RMAP_C | |
824 # define BN_MP_S_RMAP_REVERSE_C | |
825 # define BN_MP_S_RMAP_REVERSE_SZ_C | |
826 #endif | 843 #endif |
827 | 844 |
828 #if defined(BN_MP_RAND_C) | 845 #if defined(BN_MP_RAND_C) |
829 # define BN_MP_RAND_DIGIT_C | 846 # define BN_MP_GROW_C |
847 # define BN_MP_RAND_SOURCE_C | |
830 # define BN_MP_ZERO_C | 848 # define BN_MP_ZERO_C |
849 # define BN_S_MP_RAND_PLATFORM_C | |
850 # define BN_S_MP_RAND_SOURCE_C | |
851 #endif | |
852 | |
853 #if defined(BN_MP_READ_RADIX_C) | |
831 # define BN_MP_ADD_D_C | 854 # define BN_MP_ADD_D_C |
855 # define BN_MP_MUL_D_C | |
856 # define BN_MP_ZERO_C | |
857 #endif | |
858 | |
859 #if defined(BN_MP_REDUCE_C) | |
860 # define BN_MP_ADD_C | |
861 # define BN_MP_CLEAR_C | |
862 # define BN_MP_CMP_C | |
863 # define BN_MP_CMP_D_C | |
864 # define BN_MP_INIT_COPY_C | |
832 # define BN_MP_LSHD_C | 865 # define BN_MP_LSHD_C |
833 #endif | 866 # define BN_MP_MOD_2D_C |
834 | 867 # define BN_MP_MUL_C |
835 #if defined(BN_MP_READ_RADIX_C) | |
836 # define BN_MP_ZERO_C | |
837 # define BN_MP_S_RMAP_REVERSE_SZ_C | |
838 # define BN_MP_S_RMAP_REVERSE_C | |
839 # define BN_MP_MUL_D_C | |
840 # define BN_MP_ADD_D_C | |
841 # define BN_MP_ISZERO_C | |
842 #endif | |
843 | |
844 #if defined(BN_MP_READ_SIGNED_BIN_C) | |
845 # define BN_MP_READ_UNSIGNED_BIN_C | |
846 #endif | |
847 | |
848 #if defined(BN_MP_READ_UNSIGNED_BIN_C) | |
849 # define BN_MP_GROW_C | |
850 # define BN_MP_ZERO_C | |
851 # define BN_MP_MUL_2D_C | |
852 # define BN_MP_CLAMP_C | |
853 #endif | |
854 | |
855 #if defined(BN_MP_REDUCE_C) | |
856 # define BN_MP_REDUCE_SETUP_C | |
857 # define BN_MP_INIT_COPY_C | |
858 # define BN_MP_RSHD_C | 868 # define BN_MP_RSHD_C |
859 # define BN_MP_MUL_C | 869 # define BN_MP_SET_C |
870 # define BN_MP_SUB_C | |
871 # define BN_S_MP_MUL_DIGS_C | |
860 # define BN_S_MP_MUL_HIGH_DIGS_C | 872 # define BN_S_MP_MUL_HIGH_DIGS_C |
861 # define BN_FAST_S_MP_MUL_HIGH_DIGS_C | 873 # define BN_S_MP_MUL_HIGH_DIGS_FAST_C |
862 # define BN_MP_MOD_2D_C | 874 # define BN_S_MP_SUB_C |
863 # define BN_S_MP_MUL_DIGS_C | |
864 # define BN_MP_SUB_C | |
865 # define BN_MP_CMP_D_C | |
866 # define BN_MP_SET_C | |
867 # define BN_MP_LSHD_C | |
868 # define BN_MP_ADD_C | |
869 # define BN_MP_CMP_C | |
870 # define BN_S_MP_SUB_C | |
871 # define BN_MP_CLEAR_C | |
872 #endif | 875 #endif |
873 | 876 |
874 #if defined(BN_MP_REDUCE_2K_C) | 877 #if defined(BN_MP_REDUCE_2K_C) |
875 # define BN_MP_INIT_C | 878 # define BN_MP_CLEAR_C |
879 # define BN_MP_CMP_MAG_C | |
876 # define BN_MP_COUNT_BITS_C | 880 # define BN_MP_COUNT_BITS_C |
877 # define BN_MP_DIV_2D_C | 881 # define BN_MP_DIV_2D_C |
882 # define BN_MP_INIT_C | |
878 # define BN_MP_MUL_D_C | 883 # define BN_MP_MUL_D_C |
879 # define BN_S_MP_ADD_C | 884 # define BN_S_MP_ADD_C |
880 # define BN_MP_CMP_MAG_C | 885 # define BN_S_MP_SUB_C |
881 # define BN_S_MP_SUB_C | |
882 # define BN_MP_CLEAR_C | |
883 #endif | 886 #endif |
884 | 887 |
885 #if defined(BN_MP_REDUCE_2K_L_C) | 888 #if defined(BN_MP_REDUCE_2K_L_C) |
886 # define BN_MP_INIT_C | 889 # define BN_MP_CLEAR_C |
890 # define BN_MP_CMP_MAG_C | |
887 # define BN_MP_COUNT_BITS_C | 891 # define BN_MP_COUNT_BITS_C |
888 # define BN_MP_DIV_2D_C | 892 # define BN_MP_DIV_2D_C |
893 # define BN_MP_INIT_C | |
889 # define BN_MP_MUL_C | 894 # define BN_MP_MUL_C |
890 # define BN_S_MP_ADD_C | 895 # define BN_S_MP_ADD_C |
891 # define BN_MP_CMP_MAG_C | 896 # define BN_S_MP_SUB_C |
892 # define BN_S_MP_SUB_C | |
893 # define BN_MP_CLEAR_C | |
894 #endif | 897 #endif |
895 | 898 |
896 #if defined(BN_MP_REDUCE_2K_SETUP_C) | 899 #if defined(BN_MP_REDUCE_2K_SETUP_C) |
897 # define BN_MP_INIT_C | |
898 # define BN_MP_COUNT_BITS_C | |
899 # define BN_MP_2EXPT_C | 900 # define BN_MP_2EXPT_C |
900 # define BN_MP_CLEAR_C | 901 # define BN_MP_CLEAR_C |
902 # define BN_MP_COUNT_BITS_C | |
903 # define BN_MP_INIT_C | |
901 # define BN_S_MP_SUB_C | 904 # define BN_S_MP_SUB_C |
902 #endif | 905 #endif |
903 | 906 |
904 #if defined(BN_MP_REDUCE_2K_SETUP_L_C) | 907 #if defined(BN_MP_REDUCE_2K_SETUP_L_C) |
905 # define BN_MP_INIT_C | |
906 # define BN_MP_2EXPT_C | 908 # define BN_MP_2EXPT_C |
907 # define BN_MP_COUNT_BITS_C | 909 # define BN_MP_CLEAR_C |
908 # define BN_S_MP_SUB_C | 910 # define BN_MP_COUNT_BITS_C |
909 # define BN_MP_CLEAR_C | 911 # define BN_MP_INIT_C |
912 # define BN_S_MP_SUB_C | |
910 #endif | 913 #endif |
911 | 914 |
912 #if defined(BN_MP_REDUCE_IS_2K_C) | 915 #if defined(BN_MP_REDUCE_IS_2K_C) |
913 # define BN_MP_REDUCE_2K_C | |
914 # define BN_MP_COUNT_BITS_C | 916 # define BN_MP_COUNT_BITS_C |
915 #endif | 917 #endif |
916 | 918 |
917 #if defined(BN_MP_REDUCE_IS_2K_L_C) | 919 #if defined(BN_MP_REDUCE_IS_2K_L_C) |
918 #endif | 920 #endif |
920 #if defined(BN_MP_REDUCE_SETUP_C) | 922 #if defined(BN_MP_REDUCE_SETUP_C) |
921 # define BN_MP_2EXPT_C | 923 # define BN_MP_2EXPT_C |
922 # define BN_MP_DIV_C | 924 # define BN_MP_DIV_C |
923 #endif | 925 #endif |
924 | 926 |
927 #if defined(BN_MP_ROOT_U32_C) | |
928 # define BN_MP_2EXPT_C | |
929 # define BN_MP_ADD_D_C | |
930 # define BN_MP_CLEAR_MULTI_C | |
931 # define BN_MP_CMP_C | |
932 # define BN_MP_COPY_C | |
933 # define BN_MP_COUNT_BITS_C | |
934 # define BN_MP_DIV_C | |
935 # define BN_MP_EXCH_C | |
936 # define BN_MP_EXPT_U32_C | |
937 # define BN_MP_INIT_MULTI_C | |
938 # define BN_MP_MUL_C | |
939 # define BN_MP_MUL_D_C | |
940 # define BN_MP_SET_C | |
941 # define BN_MP_SUB_C | |
942 # define BN_MP_SUB_D_C | |
943 #endif | |
944 | |
925 #if defined(BN_MP_RSHD_C) | 945 #if defined(BN_MP_RSHD_C) |
926 # define BN_MP_ZERO_C | 946 # define BN_MP_ZERO_C |
927 #endif | 947 #endif |
928 | 948 |
949 #if defined(BN_MP_SBIN_SIZE_C) | |
950 # define BN_MP_UBIN_SIZE_C | |
951 #endif | |
952 | |
929 #if defined(BN_MP_SET_C) | 953 #if defined(BN_MP_SET_C) |
930 # define BN_MP_ZERO_C | 954 #endif |
931 #endif | 955 |
932 | 956 #if defined(BN_MP_SET_I32_C) |
933 #if defined(BN_MP_SET_DOUBLE_C) | 957 # define BN_MP_SET_U32_C |
934 # define BN_MP_SET_LONG_LONG_C | 958 #endif |
959 | |
960 #if defined(BN_MP_SET_I64_C) | |
961 # define BN_MP_SET_U64_C | |
962 #endif | |
963 | |
964 #if defined(BN_MP_SET_L_C) | |
965 # define BN_MP_SET_UL_C | |
966 #endif | |
967 | |
968 #if defined(BN_MP_SET_LL_C) | |
969 # define BN_MP_SET_ULL_C | |
970 #endif | |
971 | |
972 #if defined(BN_MP_SET_U32_C) | |
973 #endif | |
974 | |
975 #if defined(BN_MP_SET_U64_C) | |
976 #endif | |
977 | |
978 #if defined(BN_MP_SET_UL_C) | |
979 #endif | |
980 | |
981 #if defined(BN_MP_SET_ULL_C) | |
982 #endif | |
983 | |
984 #if defined(BN_MP_SHRINK_C) | |
985 #endif | |
986 | |
987 #if defined(BN_MP_SIGNED_RSH_C) | |
988 # define BN_MP_ADD_D_C | |
935 # define BN_MP_DIV_2D_C | 989 # define BN_MP_DIV_2D_C |
936 # define BN_MP_MUL_2D_C | 990 # define BN_MP_SUB_D_C |
937 # define BN_MP_ISZERO_C | |
938 #endif | |
939 | |
940 #if defined(BN_MP_SET_INT_C) | |
941 # define BN_MP_ZERO_C | |
942 # define BN_MP_MUL_2D_C | |
943 # define BN_MP_CLAMP_C | |
944 #endif | |
945 | |
946 #if defined(BN_MP_SET_LONG_C) | |
947 #endif | |
948 | |
949 #if defined(BN_MP_SET_LONG_LONG_C) | |
950 #endif | |
951 | |
952 #if defined(BN_MP_SHRINK_C) | |
953 #endif | |
954 | |
955 #if defined(BN_MP_SIGNED_BIN_SIZE_C) | |
956 # define BN_MP_UNSIGNED_BIN_SIZE_C | |
957 #endif | 991 #endif |
958 | 992 |
959 #if defined(BN_MP_SQR_C) | 993 #if defined(BN_MP_SQR_C) |
960 # define BN_MP_TOOM_SQR_C | 994 # define BN_S_MP_KARATSUBA_SQR_C |
961 # define BN_MP_KARATSUBA_SQR_C | |
962 # define BN_FAST_S_MP_SQR_C | |
963 # define BN_S_MP_SQR_C | 995 # define BN_S_MP_SQR_C |
996 # define BN_S_MP_SQR_FAST_C | |
997 # define BN_S_MP_TOOM_SQR_C | |
964 #endif | 998 #endif |
965 | 999 |
966 #if defined(BN_MP_SQRMOD_C) | 1000 #if defined(BN_MP_SQRMOD_C) |
967 # define BN_MP_INIT_C | 1001 # define BN_MP_CLEAR_C |
1002 # define BN_MP_INIT_C | |
1003 # define BN_MP_MOD_C | |
968 # define BN_MP_SQR_C | 1004 # define BN_MP_SQR_C |
969 # define BN_MP_CLEAR_C | |
970 # define BN_MP_MOD_C | |
971 #endif | 1005 #endif |
972 | 1006 |
973 #if defined(BN_MP_SQRT_C) | 1007 #if defined(BN_MP_SQRT_C) |
974 # define BN_MP_N_ROOT_C | 1008 # define BN_MP_ADD_C |
975 # define BN_MP_ISZERO_C | 1009 # define BN_MP_CLEAR_C |
976 # define BN_MP_ZERO_C | 1010 # define BN_MP_CMP_MAG_C |
1011 # define BN_MP_DIV_2_C | |
1012 # define BN_MP_DIV_C | |
1013 # define BN_MP_EXCH_C | |
1014 # define BN_MP_INIT_C | |
977 # define BN_MP_INIT_COPY_C | 1015 # define BN_MP_INIT_COPY_C |
978 # define BN_MP_RSHD_C | 1016 # define BN_MP_RSHD_C |
979 # define BN_MP_DIV_C | 1017 # define BN_MP_ZERO_C |
980 # define BN_MP_ADD_C | |
981 # define BN_MP_DIV_2_C | |
982 # define BN_MP_CMP_MAG_C | |
983 # define BN_MP_EXCH_C | |
984 # define BN_MP_CLEAR_C | |
985 #endif | 1018 #endif |
986 | 1019 |
987 #if defined(BN_MP_SQRTMOD_PRIME_C) | 1020 #if defined(BN_MP_SQRTMOD_PRIME_C) |
1021 # define BN_MP_ADD_D_C | |
1022 # define BN_MP_CLEAR_MULTI_C | |
988 # define BN_MP_CMP_D_C | 1023 # define BN_MP_CMP_D_C |
989 # define BN_MP_ZERO_C | 1024 # define BN_MP_COPY_C |
990 # define BN_MP_JACOBI_C | |
991 # define BN_MP_INIT_MULTI_C | |
992 # define BN_MP_MOD_D_C | |
993 # define BN_MP_ADD_D_C | |
994 # define BN_MP_DIV_2_C | 1025 # define BN_MP_DIV_2_C |
995 # define BN_MP_EXPTMOD_C | 1026 # define BN_MP_EXPTMOD_C |
996 # define BN_MP_COPY_C | 1027 # define BN_MP_INIT_MULTI_C |
1028 # define BN_MP_KRONECKER_C | |
1029 # define BN_MP_MOD_D_C | |
1030 # define BN_MP_MULMOD_C | |
1031 # define BN_MP_SET_C | |
1032 # define BN_MP_SET_U32_C | |
1033 # define BN_MP_SQRMOD_C | |
997 # define BN_MP_SUB_D_C | 1034 # define BN_MP_SUB_D_C |
998 # define BN_MP_ISEVEN_C | 1035 # define BN_MP_ZERO_C |
999 # define BN_MP_SET_INT_C | 1036 #endif |
1000 # define BN_MP_SQRMOD_C | 1037 |
1038 #if defined(BN_MP_SUB_C) | |
1039 # define BN_MP_CMP_MAG_C | |
1040 # define BN_S_MP_ADD_C | |
1041 # define BN_S_MP_SUB_C | |
1042 #endif | |
1043 | |
1044 #if defined(BN_MP_SUB_D_C) | |
1045 # define BN_MP_ADD_D_C | |
1046 # define BN_MP_CLAMP_C | |
1047 # define BN_MP_GROW_C | |
1048 #endif | |
1049 | |
1050 #if defined(BN_MP_SUBMOD_C) | |
1051 # define BN_MP_CLEAR_C | |
1052 # define BN_MP_INIT_C | |
1053 # define BN_MP_MOD_C | |
1054 # define BN_MP_SUB_C | |
1055 #endif | |
1056 | |
1057 #if defined(BN_MP_TO_RADIX_C) | |
1058 # define BN_MP_CLEAR_C | |
1059 # define BN_MP_DIV_D_C | |
1060 # define BN_MP_INIT_COPY_C | |
1061 # define BN_S_MP_REVERSE_C | |
1062 #endif | |
1063 | |
1064 #if defined(BN_MP_TO_SBIN_C) | |
1065 # define BN_MP_TO_UBIN_C | |
1066 #endif | |
1067 | |
1068 #if defined(BN_MP_TO_UBIN_C) | |
1069 # define BN_MP_CLEAR_C | |
1070 # define BN_MP_DIV_2D_C | |
1071 # define BN_MP_INIT_COPY_C | |
1072 # define BN_MP_UBIN_SIZE_C | |
1073 #endif | |
1074 | |
1075 #if defined(BN_MP_UBIN_SIZE_C) | |
1076 # define BN_MP_COUNT_BITS_C | |
1077 #endif | |
1078 | |
1079 #if defined(BN_MP_UNPACK_C) | |
1080 # define BN_MP_CLAMP_C | |
1081 # define BN_MP_MUL_2D_C | |
1082 # define BN_MP_ZERO_C | |
1083 #endif | |
1084 | |
1085 #if defined(BN_MP_XOR_C) | |
1086 # define BN_MP_CLAMP_C | |
1087 # define BN_MP_GROW_C | |
1088 #endif | |
1089 | |
1090 #if defined(BN_MP_ZERO_C) | |
1091 #endif | |
1092 | |
1093 #if defined(BN_PRIME_TAB_C) | |
1094 #endif | |
1095 | |
1096 #if defined(BN_S_MP_ADD_C) | |
1097 # define BN_MP_CLAMP_C | |
1098 # define BN_MP_GROW_C | |
1099 #endif | |
1100 | |
1101 #if defined(BN_S_MP_BALANCE_MUL_C) | |
1102 # define BN_MP_ADD_C | |
1103 # define BN_MP_CLAMP_C | |
1104 # define BN_MP_CLEAR_C | |
1105 # define BN_MP_CLEAR_MULTI_C | |
1106 # define BN_MP_EXCH_C | |
1107 # define BN_MP_INIT_MULTI_C | |
1108 # define BN_MP_INIT_SIZE_C | |
1109 # define BN_MP_LSHD_C | |
1110 # define BN_MP_MUL_C | |
1111 #endif | |
1112 | |
1113 #if defined(BN_S_MP_EXPTMOD_C) | |
1114 # define BN_MP_CLEAR_C | |
1115 # define BN_MP_COPY_C | |
1116 # define BN_MP_COUNT_BITS_C | |
1117 # define BN_MP_EXCH_C | |
1118 # define BN_MP_INIT_C | |
1119 # define BN_MP_MOD_C | |
1120 # define BN_MP_MUL_C | |
1121 # define BN_MP_REDUCE_2K_L_C | |
1122 # define BN_MP_REDUCE_2K_SETUP_L_C | |
1123 # define BN_MP_REDUCE_C | |
1124 # define BN_MP_REDUCE_SETUP_C | |
1125 # define BN_MP_SET_C | |
1126 # define BN_MP_SQR_C | |
1127 #endif | |
1128 | |
1129 #if defined(BN_S_MP_EXPTMOD_FAST_C) | |
1130 # define BN_MP_CLEAR_C | |
1131 # define BN_MP_COPY_C | |
1132 # define BN_MP_COUNT_BITS_C | |
1133 # define BN_MP_DR_REDUCE_C | |
1134 # define BN_MP_DR_SETUP_C | |
1135 # define BN_MP_EXCH_C | |
1136 # define BN_MP_INIT_SIZE_C | |
1137 # define BN_MP_MOD_C | |
1138 # define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C | |
1139 # define BN_MP_MONTGOMERY_REDUCE_C | |
1140 # define BN_MP_MONTGOMERY_SETUP_C | |
1001 # define BN_MP_MULMOD_C | 1141 # define BN_MP_MULMOD_C |
1002 # define BN_MP_SET_C | 1142 # define BN_MP_MUL_C |
1143 # define BN_MP_REDUCE_2K_C | |
1144 # define BN_MP_REDUCE_2K_SETUP_C | |
1145 # define BN_MP_SET_C | |
1146 # define BN_MP_SQR_C | |
1147 # define BN_S_MP_MONTGOMERY_REDUCE_FAST_C | |
1148 #endif | |
1149 | |
1150 #if defined(BN_S_MP_GET_BIT_C) | |
1151 #endif | |
1152 | |
1153 #if defined(BN_S_MP_INVMOD_FAST_C) | |
1154 # define BN_MP_ADD_C | |
1003 # define BN_MP_CLEAR_MULTI_C | 1155 # define BN_MP_CLEAR_MULTI_C |
1004 #endif | 1156 # define BN_MP_CMP_C |
1005 | 1157 # define BN_MP_CMP_D_C |
1006 #if defined(BN_MP_SUB_C) | 1158 # define BN_MP_CMP_MAG_C |
1159 # define BN_MP_COPY_C | |
1160 # define BN_MP_DIV_2_C | |
1161 # define BN_MP_EXCH_C | |
1162 # define BN_MP_INIT_MULTI_C | |
1163 # define BN_MP_MOD_C | |
1164 # define BN_MP_SET_C | |
1165 # define BN_MP_SUB_C | |
1166 #endif | |
1167 | |
1168 #if defined(BN_S_MP_INVMOD_SLOW_C) | |
1169 # define BN_MP_ADD_C | |
1170 # define BN_MP_CLEAR_MULTI_C | |
1171 # define BN_MP_CMP_C | |
1172 # define BN_MP_CMP_D_C | |
1173 # define BN_MP_CMP_MAG_C | |
1174 # define BN_MP_COPY_C | |
1175 # define BN_MP_DIV_2_C | |
1176 # define BN_MP_EXCH_C | |
1177 # define BN_MP_INIT_MULTI_C | |
1178 # define BN_MP_MOD_C | |
1179 # define BN_MP_SET_C | |
1180 # define BN_MP_SUB_C | |
1181 #endif | |
1182 | |
1183 #if defined(BN_S_MP_KARATSUBA_MUL_C) | |
1184 # define BN_MP_ADD_C | |
1185 # define BN_MP_CLAMP_C | |
1186 # define BN_MP_CLEAR_C | |
1187 # define BN_MP_INIT_SIZE_C | |
1188 # define BN_MP_LSHD_C | |
1189 # define BN_MP_MUL_C | |
1007 # define BN_S_MP_ADD_C | 1190 # define BN_S_MP_ADD_C |
1008 # define BN_MP_CMP_MAG_C | 1191 # define BN_S_MP_SUB_C |
1009 # define BN_S_MP_SUB_C | 1192 #endif |
1010 #endif | 1193 |
1011 | 1194 #if defined(BN_S_MP_KARATSUBA_SQR_C) |
1012 #if defined(BN_MP_SUB_D_C) | 1195 # define BN_MP_ADD_C |
1013 # define BN_MP_GROW_C | 1196 # define BN_MP_CLAMP_C |
1014 # define BN_MP_ADD_D_C | 1197 # define BN_MP_CLEAR_C |
1015 # define BN_MP_CLAMP_C | 1198 # define BN_MP_INIT_SIZE_C |
1016 #endif | 1199 # define BN_MP_LSHD_C |
1017 | 1200 # define BN_MP_SQR_C |
1018 #if defined(BN_MP_SUBMOD_C) | 1201 # define BN_S_MP_ADD_C |
1019 # define BN_MP_INIT_C | 1202 # define BN_S_MP_SUB_C |
1203 #endif | |
1204 | |
1205 #if defined(BN_S_MP_MONTGOMERY_REDUCE_FAST_C) | |
1206 # define BN_MP_CLAMP_C | |
1207 # define BN_MP_CMP_MAG_C | |
1208 # define BN_MP_GROW_C | |
1209 # define BN_S_MP_SUB_C | |
1210 #endif | |
1211 | |
1212 #if defined(BN_S_MP_MUL_DIGS_C) | |
1213 # define BN_MP_CLAMP_C | |
1214 # define BN_MP_CLEAR_C | |
1215 # define BN_MP_EXCH_C | |
1216 # define BN_MP_INIT_SIZE_C | |
1217 # define BN_S_MP_MUL_DIGS_FAST_C | |
1218 #endif | |
1219 | |
1220 #if defined(BN_S_MP_MUL_DIGS_FAST_C) | |
1221 # define BN_MP_CLAMP_C | |
1222 # define BN_MP_GROW_C | |
1223 #endif | |
1224 | |
1225 #if defined(BN_S_MP_MUL_HIGH_DIGS_C) | |
1226 # define BN_MP_CLAMP_C | |
1227 # define BN_MP_CLEAR_C | |
1228 # define BN_MP_EXCH_C | |
1229 # define BN_MP_INIT_SIZE_C | |
1230 # define BN_S_MP_MUL_HIGH_DIGS_FAST_C | |
1231 #endif | |
1232 | |
1233 #if defined(BN_S_MP_MUL_HIGH_DIGS_FAST_C) | |
1234 # define BN_MP_CLAMP_C | |
1235 # define BN_MP_GROW_C | |
1236 #endif | |
1237 | |
1238 #if defined(BN_S_MP_PRIME_IS_DIVISIBLE_C) | |
1239 # define BN_MP_MOD_D_C | |
1240 #endif | |
1241 | |
1242 #if defined(BN_S_MP_RAND_JENKINS_C) | |
1243 # define BN_S_MP_RAND_JENKINS_INIT_C | |
1244 #endif | |
1245 | |
1246 #if defined(BN_S_MP_RAND_PLATFORM_C) | |
1247 #endif | |
1248 | |
1249 #if defined(BN_S_MP_REVERSE_C) | |
1250 #endif | |
1251 | |
1252 #if defined(BN_S_MP_SQR_C) | |
1253 # define BN_MP_CLAMP_C | |
1254 # define BN_MP_CLEAR_C | |
1255 # define BN_MP_EXCH_C | |
1256 # define BN_MP_INIT_SIZE_C | |
1257 #endif | |
1258 | |
1259 #if defined(BN_S_MP_SQR_FAST_C) | |
1260 # define BN_MP_CLAMP_C | |
1261 # define BN_MP_GROW_C | |
1262 #endif | |
1263 | |
1264 #if defined(BN_S_MP_SUB_C) | |
1265 # define BN_MP_CLAMP_C | |
1266 # define BN_MP_GROW_C | |
1267 #endif | |
1268 | |
1269 #if defined(BN_S_MP_TOOM_MUL_C) | |
1270 # define BN_MP_ADD_C | |
1271 # define BN_MP_CLAMP_C | |
1272 # define BN_MP_CLEAR_C | |
1273 # define BN_MP_CLEAR_MULTI_C | |
1274 # define BN_MP_DIV_2_C | |
1275 # define BN_MP_DIV_3_C | |
1276 # define BN_MP_INIT_MULTI_C | |
1277 # define BN_MP_INIT_SIZE_C | |
1278 # define BN_MP_LSHD_C | |
1279 # define BN_MP_MUL_2_C | |
1280 # define BN_MP_MUL_C | |
1020 # define BN_MP_SUB_C | 1281 # define BN_MP_SUB_C |
1021 # define BN_MP_CLEAR_C | 1282 #endif |
1022 # define BN_MP_MOD_C | 1283 |
1023 #endif | 1284 #if defined(BN_S_MP_TOOM_SQR_C) |
1024 | 1285 # define BN_MP_ADD_C |
1025 #if defined(BN_MP_TC_AND_C) | 1286 # define BN_MP_CLAMP_C |
1026 # define BN_MP_ISNEG_C | 1287 # define BN_MP_CLEAR_C |
1027 # define BN_MP_COUNT_BITS_C | 1288 # define BN_MP_DIV_2_C |
1028 # define BN_MP_INIT_SET_INT_C | 1289 # define BN_MP_INIT_C |
1029 # define BN_MP_MUL_2D_C | 1290 # define BN_MP_INIT_SIZE_C |
1030 # define BN_MP_INIT_C | 1291 # define BN_MP_LSHD_C |
1031 # define BN_MP_ADD_C | 1292 # define BN_MP_MUL_2_C |
1032 # define BN_MP_CLEAR_C | 1293 # define BN_MP_MUL_C |
1033 # define BN_MP_AND_C | 1294 # define BN_MP_SQR_C |
1034 # define BN_MP_SUB_C | 1295 # define BN_MP_SUB_C |
1035 #endif | 1296 #endif |
1036 | 1297 |
1037 #if defined(BN_MP_TC_DIV_2D_C) | 1298 #ifdef LTM_INSIDE |
1038 # define BN_MP_ISNEG_C | 1299 #undef LTM_INSIDE |
1039 # define BN_MP_DIV_2D_C | |
1040 # define BN_MP_ADD_D_C | |
1041 # define BN_MP_SUB_D_C | |
1042 #endif | |
1043 | |
1044 #if defined(BN_MP_TC_OR_C) | |
1045 # define BN_MP_ISNEG_C | |
1046 # define BN_MP_COUNT_BITS_C | |
1047 # define BN_MP_INIT_SET_INT_C | |
1048 # define BN_MP_MUL_2D_C | |
1049 # define BN_MP_INIT_C | |
1050 # define BN_MP_ADD_C | |
1051 # define BN_MP_CLEAR_C | |
1052 # define BN_MP_OR_C | |
1053 # define BN_MP_SUB_C | |
1054 #endif | |
1055 | |
1056 #if defined(BN_MP_TC_XOR_C) | |
1057 # define BN_MP_ISNEG_C | |
1058 # define BN_MP_COUNT_BITS_C | |
1059 # define BN_MP_INIT_SET_INT_C | |
1060 # define BN_MP_MUL_2D_C | |
1061 # define BN_MP_INIT_C | |
1062 # define BN_MP_ADD_C | |
1063 # define BN_MP_CLEAR_C | |
1064 # define BN_MP_XOR_C | |
1065 # define BN_MP_SUB_C | |
1066 #endif | |
1067 | |
1068 #if defined(BN_MP_TO_SIGNED_BIN_C) | |
1069 # define BN_MP_TO_UNSIGNED_BIN_C | |
1070 #endif | |
1071 | |
1072 #if defined(BN_MP_TO_SIGNED_BIN_N_C) | |
1073 # define BN_MP_SIGNED_BIN_SIZE_C | |
1074 # define BN_MP_TO_SIGNED_BIN_C | |
1075 #endif | |
1076 | |
1077 #if defined(BN_MP_TO_UNSIGNED_BIN_C) | |
1078 # define BN_MP_INIT_COPY_C | |
1079 # define BN_MP_ISZERO_C | |
1080 # define BN_MP_DIV_2D_C | |
1081 # define BN_MP_CLEAR_C | |
1082 #endif | |
1083 | |
1084 #if defined(BN_MP_TO_UNSIGNED_BIN_N_C) | |
1085 # define BN_MP_UNSIGNED_BIN_SIZE_C | |
1086 # define BN_MP_TO_UNSIGNED_BIN_C | |
1087 #endif | |
1088 | |
1089 #if defined(BN_MP_TOOM_MUL_C) | |
1090 # define BN_MP_INIT_MULTI_C | |
1091 # define BN_MP_MOD_2D_C | |
1092 # define BN_MP_COPY_C | |
1093 # define BN_MP_RSHD_C | |
1094 # define BN_MP_MUL_C | |
1095 # define BN_MP_MUL_2_C | |
1096 # define BN_MP_ADD_C | |
1097 # define BN_MP_SUB_C | |
1098 # define BN_MP_DIV_2_C | |
1099 # define BN_MP_MUL_2D_C | |
1100 # define BN_MP_MUL_D_C | |
1101 # define BN_MP_DIV_3_C | |
1102 # define BN_MP_LSHD_C | |
1103 # define BN_MP_CLEAR_MULTI_C | |
1104 #endif | |
1105 | |
1106 #if defined(BN_MP_TOOM_SQR_C) | |
1107 # define BN_MP_INIT_MULTI_C | |
1108 # define BN_MP_MOD_2D_C | |
1109 # define BN_MP_COPY_C | |
1110 # define BN_MP_RSHD_C | |
1111 # define BN_MP_SQR_C | |
1112 # define BN_MP_MUL_2_C | |
1113 # define BN_MP_ADD_C | |
1114 # define BN_MP_SUB_C | |
1115 # define BN_MP_DIV_2_C | |
1116 # define BN_MP_MUL_2D_C | |
1117 # define BN_MP_MUL_D_C | |
1118 # define BN_MP_DIV_3_C | |
1119 # define BN_MP_LSHD_C | |
1120 # define BN_MP_CLEAR_MULTI_C | |
1121 #endif | |
1122 | |
1123 #if defined(BN_MP_TORADIX_C) | |
1124 # define BN_MP_ISZERO_C | |
1125 # define BN_MP_INIT_COPY_C | |
1126 # define BN_MP_DIV_D_C | |
1127 # define BN_MP_CLEAR_C | |
1128 # define BN_MP_S_RMAP_C | |
1129 #endif | |
1130 | |
1131 #if defined(BN_MP_TORADIX_N_C) | |
1132 # define BN_MP_ISZERO_C | |
1133 # define BN_MP_INIT_COPY_C | |
1134 # define BN_MP_DIV_D_C | |
1135 # define BN_MP_CLEAR_C | |
1136 # define BN_MP_S_RMAP_C | |
1137 #endif | |
1138 | |
1139 #if defined(BN_MP_UNSIGNED_BIN_SIZE_C) | |
1140 # define BN_MP_COUNT_BITS_C | |
1141 #endif | |
1142 | |
1143 #if defined(BN_MP_XOR_C) | |
1144 # define BN_MP_INIT_COPY_C | |
1145 # define BN_MP_CLAMP_C | |
1146 # define BN_MP_EXCH_C | |
1147 # define BN_MP_CLEAR_C | |
1148 #endif | |
1149 | |
1150 #if defined(BN_MP_ZERO_C) | |
1151 #endif | |
1152 | |
1153 #if defined(BN_PRIME_TAB_C) | |
1154 #endif | |
1155 | |
1156 #if defined(BN_REVERSE_C) | |
1157 #endif | |
1158 | |
1159 #if defined(BN_S_MP_ADD_C) | |
1160 # define BN_MP_GROW_C | |
1161 # define BN_MP_CLAMP_C | |
1162 #endif | |
1163 | |
1164 #if defined(BN_S_MP_EXPTMOD_C) | |
1165 # define BN_MP_COUNT_BITS_C | |
1166 # define BN_MP_INIT_C | |
1167 # define BN_MP_CLEAR_C | |
1168 # define BN_MP_REDUCE_SETUP_C | |
1169 # define BN_MP_REDUCE_C | |
1170 # define BN_MP_REDUCE_2K_SETUP_L_C | |
1171 # define BN_MP_REDUCE_2K_L_C | |
1172 # define BN_MP_MOD_C | |
1173 # define BN_MP_COPY_C | |
1174 # define BN_MP_SQR_C | |
1175 # define BN_MP_MUL_C | |
1176 # define BN_MP_SET_C | |
1177 # define BN_MP_EXCH_C | |
1178 #endif | |
1179 | |
1180 #if defined(BN_S_MP_MUL_DIGS_C) | |
1181 # define BN_FAST_S_MP_MUL_DIGS_C | |
1182 # define BN_MP_INIT_SIZE_C | |
1183 # define BN_MP_CLAMP_C | |
1184 # define BN_MP_EXCH_C | |
1185 # define BN_MP_CLEAR_C | |
1186 #endif | |
1187 | |
1188 #if defined(BN_S_MP_MUL_HIGH_DIGS_C) | |
1189 # define BN_FAST_S_MP_MUL_HIGH_DIGS_C | |
1190 # define BN_MP_INIT_SIZE_C | |
1191 # define BN_MP_CLAMP_C | |
1192 # define BN_MP_EXCH_C | |
1193 # define BN_MP_CLEAR_C | |
1194 #endif | |
1195 | |
1196 #if defined(BN_S_MP_SQR_C) | |
1197 # define BN_MP_INIT_SIZE_C | |
1198 # define BN_MP_CLAMP_C | |
1199 # define BN_MP_EXCH_C | |
1200 # define BN_MP_CLEAR_C | |
1201 #endif | |
1202 | |
1203 #if defined(BN_S_MP_SUB_C) | |
1204 # define BN_MP_GROW_C | |
1205 # define BN_MP_CLAMP_C | |
1206 #endif | |
1207 | |
1208 #if defined(BNCORE_C) | |
1209 #endif | |
1210 | |
1211 #ifdef LTM3 | 1300 #ifdef LTM3 |
1212 # define LTM_LAST | 1301 # define LTM_LAST |
1213 #endif | 1302 #endif |
1214 | 1303 |
1215 #include "tommath_superclass.h" | 1304 #include "tommath_superclass.h" |
1223 #undef BN_MP_KARATSUBA_SQR_C | 1312 #undef BN_MP_KARATSUBA_SQR_C |
1224 #undef BN_MP_TOOM_MUL_C | 1313 #undef BN_MP_TOOM_MUL_C |
1225 #undef BN_MP_TOOM_SQR_C | 1314 #undef BN_MP_TOOM_SQR_C |
1226 | 1315 |
1227 #include "dbmalloc.h" | 1316 #include "dbmalloc.h" |
1228 #define XMALLOC m_malloc | 1317 #define MP_MALLOC m_malloc |
1229 #define XFREE m_free_direct | 1318 #define MP_FREE m_free_ltm |
1230 #define XREALLOC m_realloc | 1319 #define MP_REALLOC m_realloc_ltm |
1231 #define XCALLOC m_calloc | 1320 #define MP_CALLOC m_calloc |
1232 | |
1233 /* ref: HEAD -> master, tag: v1.1.0 */ | |
1234 /* git commit: 08549ad6bc8b0cede0b357a9c341c5c6473a9c55 */ | |
1235 /* commit time: 2019-01-28 20:32:32 +0100 */ |