Mercurial > dropbear
comparison tommath_class.h @ 142:d29b64170cf0 libtommath-orig
import of libtommath 0.32
author | Matt Johnston <matt@ucc.asn.au> |
---|---|
date | Sun, 19 Dec 2004 11:33:56 +0000 |
parents | |
children | 81bc23421b45 d8254fc979e9 |
comparison
equal
deleted
inserted
replaced
19:e1037a1e12e7 | 142:d29b64170cf0 |
---|---|
1 #if !(defined(LTM1) && defined(LTM2) && defined(LTM3)) | |
2 #if defined(LTM2) | |
3 #define LTM3 | |
4 #endif | |
5 #if defined(LTM1) | |
6 #define LTM2 | |
7 #endif | |
8 #define LTM1 | |
9 | |
10 #if defined(LTM_ALL) | |
11 #define BN_ERROR_C | |
12 #define BN_FAST_MP_INVMOD_C | |
13 #define BN_FAST_MP_MONTGOMERY_REDUCE_C | |
14 #define BN_FAST_S_MP_MUL_DIGS_C | |
15 #define BN_FAST_S_MP_MUL_HIGH_DIGS_C | |
16 #define BN_FAST_S_MP_SQR_C | |
17 #define BN_MP_2EXPT_C | |
18 #define BN_MP_ABS_C | |
19 #define BN_MP_ADD_C | |
20 #define BN_MP_ADD_D_C | |
21 #define BN_MP_ADDMOD_C | |
22 #define BN_MP_AND_C | |
23 #define BN_MP_CLAMP_C | |
24 #define BN_MP_CLEAR_C | |
25 #define BN_MP_CLEAR_MULTI_C | |
26 #define BN_MP_CMP_C | |
27 #define BN_MP_CMP_D_C | |
28 #define BN_MP_CMP_MAG_C | |
29 #define BN_MP_CNT_LSB_C | |
30 #define BN_MP_COPY_C | |
31 #define BN_MP_COUNT_BITS_C | |
32 #define BN_MP_DIV_C | |
33 #define BN_MP_DIV_2_C | |
34 #define BN_MP_DIV_2D_C | |
35 #define BN_MP_DIV_3_C | |
36 #define BN_MP_DIV_D_C | |
37 #define BN_MP_DR_IS_MODULUS_C | |
38 #define BN_MP_DR_REDUCE_C | |
39 #define BN_MP_DR_SETUP_C | |
40 #define BN_MP_EXCH_C | |
41 #define BN_MP_EXPT_D_C | |
42 #define BN_MP_EXPTMOD_C | |
43 #define BN_MP_EXPTMOD_FAST_C | |
44 #define BN_MP_EXTEUCLID_C | |
45 #define BN_MP_FREAD_C | |
46 #define BN_MP_FWRITE_C | |
47 #define BN_MP_GCD_C | |
48 #define BN_MP_GET_INT_C | |
49 #define BN_MP_GROW_C | |
50 #define BN_MP_INIT_C | |
51 #define BN_MP_INIT_COPY_C | |
52 #define BN_MP_INIT_MULTI_C | |
53 #define BN_MP_INIT_SET_C | |
54 #define BN_MP_INIT_SET_INT_C | |
55 #define BN_MP_INIT_SIZE_C | |
56 #define BN_MP_INVMOD_C | |
57 #define BN_MP_INVMOD_SLOW_C | |
58 #define BN_MP_IS_SQUARE_C | |
59 #define BN_MP_JACOBI_C | |
60 #define BN_MP_KARATSUBA_MUL_C | |
61 #define BN_MP_KARATSUBA_SQR_C | |
62 #define BN_MP_LCM_C | |
63 #define BN_MP_LSHD_C | |
64 #define BN_MP_MOD_C | |
65 #define BN_MP_MOD_2D_C | |
66 #define BN_MP_MOD_D_C | |
67 #define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C | |
68 #define BN_MP_MONTGOMERY_REDUCE_C | |
69 #define BN_MP_MONTGOMERY_SETUP_C | |
70 #define BN_MP_MUL_C | |
71 #define BN_MP_MUL_2_C | |
72 #define BN_MP_MUL_2D_C | |
73 #define BN_MP_MUL_D_C | |
74 #define BN_MP_MULMOD_C | |
75 #define BN_MP_N_ROOT_C | |
76 #define BN_MP_NEG_C | |
77 #define BN_MP_OR_C | |
78 #define BN_MP_PRIME_FERMAT_C | |
79 #define BN_MP_PRIME_IS_DIVISIBLE_C | |
80 #define BN_MP_PRIME_IS_PRIME_C | |
81 #define BN_MP_PRIME_MILLER_RABIN_C | |
82 #define BN_MP_PRIME_NEXT_PRIME_C | |
83 #define BN_MP_PRIME_RABIN_MILLER_TRIALS_C | |
84 #define BN_MP_PRIME_RANDOM_EX_C | |
85 #define BN_MP_RADIX_SIZE_C | |
86 #define BN_MP_RADIX_SMAP_C | |
87 #define BN_MP_RAND_C | |
88 #define BN_MP_READ_RADIX_C | |
89 #define BN_MP_READ_SIGNED_BIN_C | |
90 #define BN_MP_READ_UNSIGNED_BIN_C | |
91 #define BN_MP_REDUCE_C | |
92 #define BN_MP_REDUCE_2K_C | |
93 #define BN_MP_REDUCE_2K_SETUP_C | |
94 #define BN_MP_REDUCE_IS_2K_C | |
95 #define BN_MP_REDUCE_SETUP_C | |
96 #define BN_MP_RSHD_C | |
97 #define BN_MP_SET_C | |
98 #define BN_MP_SET_INT_C | |
99 #define BN_MP_SHRINK_C | |
100 #define BN_MP_SIGNED_BIN_SIZE_C | |
101 #define BN_MP_SQR_C | |
102 #define BN_MP_SQRMOD_C | |
103 #define BN_MP_SQRT_C | |
104 #define BN_MP_SUB_C | |
105 #define BN_MP_SUB_D_C | |
106 #define BN_MP_SUBMOD_C | |
107 #define BN_MP_TO_SIGNED_BIN_C | |
108 #define BN_MP_TO_UNSIGNED_BIN_C | |
109 #define BN_MP_TOOM_MUL_C | |
110 #define BN_MP_TOOM_SQR_C | |
111 #define BN_MP_TORADIX_C | |
112 #define BN_MP_TORADIX_N_C | |
113 #define BN_MP_UNSIGNED_BIN_SIZE_C | |
114 #define BN_MP_XOR_C | |
115 #define BN_MP_ZERO_C | |
116 #define BN_PRIME_TAB_C | |
117 #define BN_REVERSE_C | |
118 #define BN_S_MP_ADD_C | |
119 #define BN_S_MP_EXPTMOD_C | |
120 #define BN_S_MP_MUL_DIGS_C | |
121 #define BN_S_MP_MUL_HIGH_DIGS_C | |
122 #define BN_S_MP_SQR_C | |
123 #define BN_S_MP_SUB_C | |
124 #define BNCORE_C | |
125 #endif | |
126 | |
127 #if defined(BN_ERROR_C) | |
128 #define BN_MP_ERROR_TO_STRING_C | |
129 #endif | |
130 | |
131 #if defined(BN_FAST_MP_INVMOD_C) | |
132 #define BN_MP_ISEVEN_C | |
133 #define BN_MP_INIT_MULTI_C | |
134 #define BN_MP_COPY_C | |
135 #define BN_MP_ABS_C | |
136 #define BN_MP_SET_C | |
137 #define BN_MP_DIV_2_C | |
138 #define BN_MP_ISODD_C | |
139 #define BN_MP_SUB_C | |
140 #define BN_MP_CMP_C | |
141 #define BN_MP_ISZERO_C | |
142 #define BN_MP_CMP_D_C | |
143 #define BN_MP_ADD_C | |
144 #define BN_MP_EXCH_C | |
145 #define BN_MP_CLEAR_MULTI_C | |
146 #endif | |
147 | |
148 #if defined(BN_FAST_MP_MONTGOMERY_REDUCE_C) | |
149 #define BN_MP_GROW_C | |
150 #define BN_MP_RSHD_C | |
151 #define BN_MP_CLAMP_C | |
152 #define BN_MP_CMP_MAG_C | |
153 #define BN_S_MP_SUB_C | |
154 #endif | |
155 | |
156 #if defined(BN_FAST_S_MP_MUL_DIGS_C) | |
157 #define BN_MP_GROW_C | |
158 #define BN_MP_CLAMP_C | |
159 #endif | |
160 | |
161 #if defined(BN_FAST_S_MP_MUL_HIGH_DIGS_C) | |
162 #define BN_MP_GROW_C | |
163 #define BN_MP_CLAMP_C | |
164 #endif | |
165 | |
166 #if defined(BN_FAST_S_MP_SQR_C) | |
167 #define BN_MP_GROW_C | |
168 #define BN_MP_CLAMP_C | |
169 #endif | |
170 | |
171 #if defined(BN_MP_2EXPT_C) | |
172 #define BN_MP_ZERO_C | |
173 #define BN_MP_GROW_C | |
174 #endif | |
175 | |
176 #if defined(BN_MP_ABS_C) | |
177 #define BN_MP_COPY_C | |
178 #endif | |
179 | |
180 #if defined(BN_MP_ADD_C) | |
181 #define BN_S_MP_ADD_C | |
182 #define BN_MP_CMP_MAG_C | |
183 #define BN_S_MP_SUB_C | |
184 #endif | |
185 | |
186 #if defined(BN_MP_ADD_D_C) | |
187 #define BN_MP_GROW_C | |
188 #define BN_MP_SUB_D_C | |
189 #define BN_MP_CLAMP_C | |
190 #endif | |
191 | |
192 #if defined(BN_MP_ADDMOD_C) | |
193 #define BN_MP_INIT_C | |
194 #define BN_MP_ADD_C | |
195 #define BN_MP_CLEAR_C | |
196 #define BN_MP_MOD_C | |
197 #endif | |
198 | |
199 #if defined(BN_MP_AND_C) | |
200 #define BN_MP_INIT_COPY_C | |
201 #define BN_MP_CLAMP_C | |
202 #define BN_MP_EXCH_C | |
203 #define BN_MP_CLEAR_C | |
204 #endif | |
205 | |
206 #if defined(BN_MP_CLAMP_C) | |
207 #endif | |
208 | |
209 #if defined(BN_MP_CLEAR_C) | |
210 #endif | |
211 | |
212 #if defined(BN_MP_CLEAR_MULTI_C) | |
213 #define BN_MP_CLEAR_C | |
214 #endif | |
215 | |
216 #if defined(BN_MP_CMP_C) | |
217 #define BN_MP_CMP_MAG_C | |
218 #endif | |
219 | |
220 #if defined(BN_MP_CMP_D_C) | |
221 #endif | |
222 | |
223 #if defined(BN_MP_CMP_MAG_C) | |
224 #endif | |
225 | |
226 #if defined(BN_MP_CNT_LSB_C) | |
227 #define BN_MP_ISZERO_C | |
228 #endif | |
229 | |
230 #if defined(BN_MP_COPY_C) | |
231 #define BN_MP_GROW_C | |
232 #endif | |
233 | |
234 #if defined(BN_MP_COUNT_BITS_C) | |
235 #endif | |
236 | |
237 #if defined(BN_MP_DIV_C) | |
238 #define BN_MP_ISZERO_C | |
239 #define BN_MP_CMP_MAG_C | |
240 #define BN_MP_COPY_C | |
241 #define BN_MP_ZERO_C | |
242 #define BN_MP_INIT_MULTI_C | |
243 #define BN_MP_SET_C | |
244 #define BN_MP_COUNT_BITS_C | |
245 #define BN_MP_MUL_2D_C | |
246 #define BN_MP_CMP_C | |
247 #define BN_MP_SUB_C | |
248 #define BN_MP_ADD_C | |
249 #define BN_MP_DIV_2D_C | |
250 #define BN_MP_EXCH_C | |
251 #define BN_MP_CLEAR_MULTI_C | |
252 #define BN_MP_INIT_SIZE_C | |
253 #define BN_MP_INIT_C | |
254 #define BN_MP_INIT_COPY_C | |
255 #define BN_MP_LSHD_C | |
256 #define BN_MP_RSHD_C | |
257 #define BN_MP_MUL_D_C | |
258 #define BN_MP_CLAMP_C | |
259 #define BN_MP_CLEAR_C | |
260 #endif | |
261 | |
262 #if defined(BN_MP_DIV_2_C) | |
263 #define BN_MP_GROW_C | |
264 #define BN_MP_CLAMP_C | |
265 #endif | |
266 | |
267 #if defined(BN_MP_DIV_2D_C) | |
268 #define BN_MP_COPY_C | |
269 #define BN_MP_ZERO_C | |
270 #define BN_MP_INIT_C | |
271 #define BN_MP_MOD_2D_C | |
272 #define BN_MP_CLEAR_C | |
273 #define BN_MP_RSHD_C | |
274 #define BN_MP_CLAMP_C | |
275 #define BN_MP_EXCH_C | |
276 #endif | |
277 | |
278 #if defined(BN_MP_DIV_3_C) | |
279 #define BN_MP_INIT_SIZE_C | |
280 #define BN_MP_CLAMP_C | |
281 #define BN_MP_EXCH_C | |
282 #define BN_MP_CLEAR_C | |
283 #endif | |
284 | |
285 #if defined(BN_MP_DIV_D_C) | |
286 #define BN_MP_ISZERO_C | |
287 #define BN_MP_COPY_C | |
288 #define BN_MP_DIV_2D_C | |
289 #define BN_MP_DIV_3_C | |
290 #define BN_MP_INIT_SIZE_C | |
291 #define BN_MP_CLAMP_C | |
292 #define BN_MP_EXCH_C | |
293 #define BN_MP_CLEAR_C | |
294 #endif | |
295 | |
296 #if defined(BN_MP_DR_IS_MODULUS_C) | |
297 #endif | |
298 | |
299 #if defined(BN_MP_DR_REDUCE_C) | |
300 #define BN_MP_GROW_C | |
301 #define BN_MP_CLAMP_C | |
302 #define BN_MP_CMP_MAG_C | |
303 #define BN_S_MP_SUB_C | |
304 #endif | |
305 | |
306 #if defined(BN_MP_DR_SETUP_C) | |
307 #endif | |
308 | |
309 #if defined(BN_MP_EXCH_C) | |
310 #endif | |
311 | |
312 #if defined(BN_MP_EXPT_D_C) | |
313 #define BN_MP_INIT_COPY_C | |
314 #define BN_MP_SET_C | |
315 #define BN_MP_SQR_C | |
316 #define BN_MP_CLEAR_C | |
317 #define BN_MP_MUL_C | |
318 #endif | |
319 | |
320 #if defined(BN_MP_EXPTMOD_C) | |
321 #define BN_MP_INIT_C | |
322 #define BN_MP_INVMOD_C | |
323 #define BN_MP_CLEAR_C | |
324 #define BN_MP_ABS_C | |
325 #define BN_MP_CLEAR_MULTI_C | |
326 #define BN_MP_DR_IS_MODULUS_C | |
327 #define BN_MP_REDUCE_IS_2K_C | |
328 #define BN_MP_ISODD_C | |
329 #define BN_MP_EXPTMOD_FAST_C | |
330 #define BN_S_MP_EXPTMOD_C | |
331 #endif | |
332 | |
333 #if defined(BN_MP_EXPTMOD_FAST_C) | |
334 #define BN_MP_COUNT_BITS_C | |
335 #define BN_MP_INIT_C | |
336 #define BN_MP_CLEAR_C | |
337 #define BN_MP_MONTGOMERY_SETUP_C | |
338 #define BN_FAST_MP_MONTGOMERY_REDUCE_C | |
339 #define BN_MP_MONTGOMERY_REDUCE_C | |
340 #define BN_MP_DR_SETUP_C | |
341 #define BN_MP_DR_REDUCE_C | |
342 #define BN_MP_REDUCE_2K_SETUP_C | |
343 #define BN_MP_REDUCE_2K_C | |
344 #define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C | |
345 #define BN_MP_MULMOD_C | |
346 #define BN_MP_SET_C | |
347 #define BN_MP_MOD_C | |
348 #define BN_MP_COPY_C | |
349 #define BN_MP_SQR_C | |
350 #define BN_MP_MUL_C | |
351 #define BN_MP_EXCH_C | |
352 #endif | |
353 | |
354 #if defined(BN_MP_EXTEUCLID_C) | |
355 #define BN_MP_INIT_MULTI_C | |
356 #define BN_MP_SET_C | |
357 #define BN_MP_COPY_C | |
358 #define BN_MP_ISZERO_C | |
359 #define BN_MP_DIV_C | |
360 #define BN_MP_MUL_C | |
361 #define BN_MP_SUB_C | |
362 #define BN_MP_EXCH_C | |
363 #define BN_MP_CLEAR_MULTI_C | |
364 #endif | |
365 | |
366 #if defined(BN_MP_FREAD_C) | |
367 #define BN_MP_ZERO_C | |
368 #define BN_MP_S_RMAP_C | |
369 #define BN_MP_MUL_D_C | |
370 #define BN_MP_ADD_D_C | |
371 #define BN_MP_CMP_D_C | |
372 #endif | |
373 | |
374 #if defined(BN_MP_FWRITE_C) | |
375 #define BN_MP_RADIX_SIZE_C | |
376 #define BN_MP_TORADIX_C | |
377 #endif | |
378 | |
379 #if defined(BN_MP_GCD_C) | |
380 #define BN_MP_ISZERO_C | |
381 #define BN_MP_ABS_C | |
382 #define BN_MP_ZERO_C | |
383 #define BN_MP_INIT_COPY_C | |
384 #define BN_MP_CNT_LSB_C | |
385 #define BN_MP_DIV_2D_C | |
386 #define BN_MP_CMP_MAG_C | |
387 #define BN_MP_EXCH_C | |
388 #define BN_S_MP_SUB_C | |
389 #define BN_MP_MUL_2D_C | |
390 #define BN_MP_CLEAR_C | |
391 #endif | |
392 | |
393 #if defined(BN_MP_GET_INT_C) | |
394 #endif | |
395 | |
396 #if defined(BN_MP_GROW_C) | |
397 #endif | |
398 | |
399 #if defined(BN_MP_INIT_C) | |
400 #endif | |
401 | |
402 #if defined(BN_MP_INIT_COPY_C) | |
403 #define BN_MP_COPY_C | |
404 #endif | |
405 | |
406 #if defined(BN_MP_INIT_MULTI_C) | |
407 #define BN_MP_ERR_C | |
408 #define BN_MP_INIT_C | |
409 #define BN_MP_CLEAR_C | |
410 #endif | |
411 | |
412 #if defined(BN_MP_INIT_SET_C) | |
413 #define BN_MP_INIT_C | |
414 #define BN_MP_SET_C | |
415 #endif | |
416 | |
417 #if defined(BN_MP_INIT_SET_INT_C) | |
418 #define BN_MP_INIT_C | |
419 #define BN_MP_SET_INT_C | |
420 #endif | |
421 | |
422 #if defined(BN_MP_INIT_SIZE_C) | |
423 #define BN_MP_INIT_C | |
424 #endif | |
425 | |
426 #if defined(BN_MP_INVMOD_C) | |
427 #define BN_MP_ISZERO_C | |
428 #define BN_MP_ISODD_C | |
429 #define BN_FAST_MP_INVMOD_C | |
430 #define BN_MP_INVMOD_SLOW_C | |
431 #endif | |
432 | |
433 #if defined(BN_MP_INVMOD_SLOW_C) | |
434 #define BN_MP_ISZERO_C | |
435 #define BN_MP_INIT_MULTI_C | |
436 #define BN_MP_COPY_C | |
437 #define BN_MP_ISEVEN_C | |
438 #define BN_MP_SET_C | |
439 #define BN_MP_DIV_2_C | |
440 #define BN_MP_ISODD_C | |
441 #define BN_MP_ADD_C | |
442 #define BN_MP_SUB_C | |
443 #define BN_MP_CMP_C | |
444 #define BN_MP_CMP_D_C | |
445 #define BN_MP_CMP_MAG_C | |
446 #define BN_MP_EXCH_C | |
447 #define BN_MP_CLEAR_MULTI_C | |
448 #endif | |
449 | |
450 #if defined(BN_MP_IS_SQUARE_C) | |
451 #define BN_MP_MOD_D_C | |
452 #define BN_MP_INIT_SET_INT_C | |
453 #define BN_MP_MOD_C | |
454 #define BN_MP_GET_INT_C | |
455 #define BN_MP_SQRT_C | |
456 #define BN_MP_SQR_C | |
457 #define BN_MP_CMP_MAG_C | |
458 #define BN_MP_CLEAR_C | |
459 #endif | |
460 | |
461 #if defined(BN_MP_JACOBI_C) | |
462 #define BN_MP_CMP_D_C | |
463 #define BN_MP_ISZERO_C | |
464 #define BN_MP_INIT_COPY_C | |
465 #define BN_MP_CNT_LSB_C | |
466 #define BN_MP_DIV_2D_C | |
467 #define BN_MP_MOD_C | |
468 #define BN_MP_CLEAR_C | |
469 #endif | |
470 | |
471 #if defined(BN_MP_KARATSUBA_MUL_C) | |
472 #define BN_MP_MUL_C | |
473 #define BN_MP_INIT_SIZE_C | |
474 #define BN_MP_CLAMP_C | |
475 #define BN_MP_SUB_C | |
476 #define BN_MP_ADD_C | |
477 #define BN_MP_LSHD_C | |
478 #define BN_MP_CLEAR_C | |
479 #endif | |
480 | |
481 #if defined(BN_MP_KARATSUBA_SQR_C) | |
482 #define BN_MP_INIT_SIZE_C | |
483 #define BN_MP_CLAMP_C | |
484 #define BN_MP_SQR_C | |
485 #define BN_MP_SUB_C | |
486 #define BN_S_MP_ADD_C | |
487 #define BN_MP_LSHD_C | |
488 #define BN_MP_ADD_C | |
489 #define BN_MP_CLEAR_C | |
490 #endif | |
491 | |
492 #if defined(BN_MP_LCM_C) | |
493 #define BN_MP_INIT_MULTI_C | |
494 #define BN_MP_GCD_C | |
495 #define BN_MP_CMP_MAG_C | |
496 #define BN_MP_DIV_C | |
497 #define BN_MP_MUL_C | |
498 #define BN_MP_CLEAR_MULTI_C | |
499 #endif | |
500 | |
501 #if defined(BN_MP_LSHD_C) | |
502 #define BN_MP_GROW_C | |
503 #define BN_MP_RSHD_C | |
504 #endif | |
505 | |
506 #if defined(BN_MP_MOD_C) | |
507 #define BN_MP_INIT_C | |
508 #define BN_MP_DIV_C | |
509 #define BN_MP_CLEAR_C | |
510 #define BN_MP_ADD_C | |
511 #define BN_MP_EXCH_C | |
512 #endif | |
513 | |
514 #if defined(BN_MP_MOD_2D_C) | |
515 #define BN_MP_ZERO_C | |
516 #define BN_MP_COPY_C | |
517 #define BN_MP_CLAMP_C | |
518 #endif | |
519 | |
520 #if defined(BN_MP_MOD_D_C) | |
521 #define BN_MP_DIV_D_C | |
522 #endif | |
523 | |
524 #if defined(BN_MP_MONTGOMERY_CALC_NORMALIZATION_C) | |
525 #define BN_MP_COUNT_BITS_C | |
526 #define BN_MP_2EXPT_C | |
527 #define BN_MP_SET_C | |
528 #define BN_MP_MUL_2_C | |
529 #define BN_MP_CMP_MAG_C | |
530 #define BN_S_MP_SUB_C | |
531 #endif | |
532 | |
533 #if defined(BN_MP_MONTGOMERY_REDUCE_C) | |
534 #define BN_FAST_MP_MONTGOMERY_REDUCE_C | |
535 #define BN_MP_GROW_C | |
536 #define BN_MP_CLAMP_C | |
537 #define BN_MP_RSHD_C | |
538 #define BN_MP_CMP_MAG_C | |
539 #define BN_S_MP_SUB_C | |
540 #endif | |
541 | |
542 #if defined(BN_MP_MONTGOMERY_SETUP_C) | |
543 #endif | |
544 | |
545 #if defined(BN_MP_MUL_C) | |
546 #define BN_MP_TOOM_MUL_C | |
547 #define BN_MP_KARATSUBA_MUL_C | |
548 #define BN_FAST_S_MP_MUL_DIGS_C | |
549 #define BN_S_MP_MUL_C | |
550 #define BN_S_MP_MUL_DIGS_C | |
551 #endif | |
552 | |
553 #if defined(BN_MP_MUL_2_C) | |
554 #define BN_MP_GROW_C | |
555 #endif | |
556 | |
557 #if defined(BN_MP_MUL_2D_C) | |
558 #define BN_MP_COPY_C | |
559 #define BN_MP_GROW_C | |
560 #define BN_MP_LSHD_C | |
561 #define BN_MP_CLAMP_C | |
562 #endif | |
563 | |
564 #if defined(BN_MP_MUL_D_C) | |
565 #define BN_MP_GROW_C | |
566 #define BN_MP_CLAMP_C | |
567 #endif | |
568 | |
569 #if defined(BN_MP_MULMOD_C) | |
570 #define BN_MP_INIT_C | |
571 #define BN_MP_MUL_C | |
572 #define BN_MP_CLEAR_C | |
573 #define BN_MP_MOD_C | |
574 #endif | |
575 | |
576 #if defined(BN_MP_N_ROOT_C) | |
577 #define BN_MP_INIT_C | |
578 #define BN_MP_SET_C | |
579 #define BN_MP_COPY_C | |
580 #define BN_MP_EXPT_D_C | |
581 #define BN_MP_MUL_C | |
582 #define BN_MP_SUB_C | |
583 #define BN_MP_MUL_D_C | |
584 #define BN_MP_DIV_C | |
585 #define BN_MP_CMP_C | |
586 #define BN_MP_SUB_D_C | |
587 #define BN_MP_EXCH_C | |
588 #define BN_MP_CLEAR_C | |
589 #endif | |
590 | |
591 #if defined(BN_MP_NEG_C) | |
592 #define BN_MP_COPY_C | |
593 #define BN_MP_ISZERO_C | |
594 #endif | |
595 | |
596 #if defined(BN_MP_OR_C) | |
597 #define BN_MP_INIT_COPY_C | |
598 #define BN_MP_CLAMP_C | |
599 #define BN_MP_EXCH_C | |
600 #define BN_MP_CLEAR_C | |
601 #endif | |
602 | |
603 #if defined(BN_MP_PRIME_FERMAT_C) | |
604 #define BN_MP_CMP_D_C | |
605 #define BN_MP_INIT_C | |
606 #define BN_MP_EXPTMOD_C | |
607 #define BN_MP_CMP_C | |
608 #define BN_MP_CLEAR_C | |
609 #endif | |
610 | |
611 #if defined(BN_MP_PRIME_IS_DIVISIBLE_C) | |
612 #define BN_MP_MOD_D_C | |
613 #endif | |
614 | |
615 #if defined(BN_MP_PRIME_IS_PRIME_C) | |
616 #define BN_MP_CMP_D_C | |
617 #define BN_MP_PRIME_IS_DIVISIBLE_C | |
618 #define BN_MP_INIT_C | |
619 #define BN_MP_SET_C | |
620 #define BN_MP_PRIME_MILLER_RABIN_C | |
621 #define BN_MP_CLEAR_C | |
622 #endif | |
623 | |
624 #if defined(BN_MP_PRIME_MILLER_RABIN_C) | |
625 #define BN_MP_CMP_D_C | |
626 #define BN_MP_INIT_COPY_C | |
627 #define BN_MP_SUB_D_C | |
628 #define BN_MP_CNT_LSB_C | |
629 #define BN_MP_DIV_2D_C | |
630 #define BN_MP_EXPTMOD_C | |
631 #define BN_MP_CMP_C | |
632 #define BN_MP_SQRMOD_C | |
633 #define BN_MP_CLEAR_C | |
634 #endif | |
635 | |
636 #if defined(BN_MP_PRIME_NEXT_PRIME_C) | |
637 #define BN_MP_CMP_D_C | |
638 #define BN_MP_SET_C | |
639 #define BN_MP_SUB_D_C | |
640 #define BN_MP_ISEVEN_C | |
641 #define BN_MP_MOD_D_C | |
642 #define BN_MP_INIT_C | |
643 #define BN_MP_ADD_D_C | |
644 #define BN_MP_PRIME_MILLER_RABIN_C | |
645 #define BN_MP_CLEAR_C | |
646 #endif | |
647 | |
648 #if defined(BN_MP_PRIME_RABIN_MILLER_TRIALS_C) | |
649 #endif | |
650 | |
651 #if defined(BN_MP_PRIME_RANDOM_EX_C) | |
652 #define BN_MP_READ_UNSIGNED_BIN_C | |
653 #define BN_MP_PRIME_IS_PRIME_C | |
654 #define BN_MP_SUB_D_C | |
655 #define BN_MP_DIV_2_C | |
656 #define BN_MP_MUL_2_C | |
657 #define BN_MP_ADD_D_C | |
658 #endif | |
659 | |
660 #if defined(BN_MP_RADIX_SIZE_C) | |
661 #define BN_MP_COUNT_BITS_C | |
662 #define BN_MP_INIT_COPY_C | |
663 #define BN_MP_ISZERO_C | |
664 #define BN_MP_DIV_D_C | |
665 #define BN_MP_CLEAR_C | |
666 #endif | |
667 | |
668 #if defined(BN_MP_RADIX_SMAP_C) | |
669 #define BN_MP_S_RMAP_C | |
670 #endif | |
671 | |
672 #if defined(BN_MP_RAND_C) | |
673 #define BN_MP_ZERO_C | |
674 #define BN_MP_ADD_D_C | |
675 #define BN_MP_LSHD_C | |
676 #endif | |
677 | |
678 #if defined(BN_MP_READ_RADIX_C) | |
679 #define BN_MP_ZERO_C | |
680 #define BN_MP_S_RMAP_C | |
681 #define BN_MP_MUL_D_C | |
682 #define BN_MP_ADD_D_C | |
683 #define BN_MP_ISZERO_C | |
684 #endif | |
685 | |
686 #if defined(BN_MP_READ_SIGNED_BIN_C) | |
687 #define BN_MP_READ_UNSIGNED_BIN_C | |
688 #endif | |
689 | |
690 #if defined(BN_MP_READ_UNSIGNED_BIN_C) | |
691 #define BN_MP_GROW_C | |
692 #define BN_MP_ZERO_C | |
693 #define BN_MP_MUL_2D_C | |
694 #define BN_MP_CLAMP_C | |
695 #endif | |
696 | |
697 #if defined(BN_MP_REDUCE_C) | |
698 #define BN_MP_REDUCE_SETUP_C | |
699 #define BN_MP_INIT_COPY_C | |
700 #define BN_MP_RSHD_C | |
701 #define BN_MP_MUL_C | |
702 #define BN_S_MP_MUL_HIGH_DIGS_C | |
703 #define BN_FAST_S_MP_MUL_HIGH_DIGS_C | |
704 #define BN_MP_MOD_2D_C | |
705 #define BN_S_MP_MUL_DIGS_C | |
706 #define BN_MP_SUB_C | |
707 #define BN_MP_CMP_D_C | |
708 #define BN_MP_SET_C | |
709 #define BN_MP_LSHD_C | |
710 #define BN_MP_ADD_C | |
711 #define BN_MP_CMP_C | |
712 #define BN_S_MP_SUB_C | |
713 #define BN_MP_CLEAR_C | |
714 #endif | |
715 | |
716 #if defined(BN_MP_REDUCE_2K_C) | |
717 #define BN_MP_INIT_C | |
718 #define BN_MP_COUNT_BITS_C | |
719 #define BN_MP_DIV_2D_C | |
720 #define BN_MP_MUL_D_C | |
721 #define BN_S_MP_ADD_C | |
722 #define BN_MP_CMP_MAG_C | |
723 #define BN_S_MP_SUB_C | |
724 #define BN_MP_CLEAR_C | |
725 #endif | |
726 | |
727 #if defined(BN_MP_REDUCE_2K_SETUP_C) | |
728 #define BN_MP_INIT_C | |
729 #define BN_MP_COUNT_BITS_C | |
730 #define BN_MP_2EXPT_C | |
731 #define BN_MP_CLEAR_C | |
732 #define BN_S_MP_SUB_C | |
733 #endif | |
734 | |
735 #if defined(BN_MP_REDUCE_IS_2K_C) | |
736 #define BN_MP_REDUCE_2K_C | |
737 #define BN_MP_COUNT_BITS_C | |
738 #endif | |
739 | |
740 #if defined(BN_MP_REDUCE_SETUP_C) | |
741 #define BN_MP_2EXPT_C | |
742 #define BN_MP_DIV_C | |
743 #endif | |
744 | |
745 #if defined(BN_MP_RSHD_C) | |
746 #define BN_MP_ZERO_C | |
747 #endif | |
748 | |
749 #if defined(BN_MP_SET_C) | |
750 #define BN_MP_ZERO_C | |
751 #endif | |
752 | |
753 #if defined(BN_MP_SET_INT_C) | |
754 #define BN_MP_ZERO_C | |
755 #define BN_MP_MUL_2D_C | |
756 #define BN_MP_CLAMP_C | |
757 #endif | |
758 | |
759 #if defined(BN_MP_SHRINK_C) | |
760 #endif | |
761 | |
762 #if defined(BN_MP_SIGNED_BIN_SIZE_C) | |
763 #define BN_MP_UNSIGNED_BIN_SIZE_C | |
764 #endif | |
765 | |
766 #if defined(BN_MP_SQR_C) | |
767 #define BN_MP_TOOM_SQR_C | |
768 #define BN_MP_KARATSUBA_SQR_C | |
769 #define BN_FAST_S_MP_SQR_C | |
770 #define BN_S_MP_SQR_C | |
771 #endif | |
772 | |
773 #if defined(BN_MP_SQRMOD_C) | |
774 #define BN_MP_INIT_C | |
775 #define BN_MP_SQR_C | |
776 #define BN_MP_CLEAR_C | |
777 #define BN_MP_MOD_C | |
778 #endif | |
779 | |
780 #if defined(BN_MP_SQRT_C) | |
781 #define BN_MP_N_ROOT_C | |
782 #define BN_MP_ISZERO_C | |
783 #define BN_MP_ZERO_C | |
784 #define BN_MP_INIT_COPY_C | |
785 #define BN_MP_RSHD_C | |
786 #define BN_MP_DIV_C | |
787 #define BN_MP_ADD_C | |
788 #define BN_MP_DIV_2_C | |
789 #define BN_MP_CMP_MAG_C | |
790 #define BN_MP_EXCH_C | |
791 #define BN_MP_CLEAR_C | |
792 #endif | |
793 | |
794 #if defined(BN_MP_SUB_C) | |
795 #define BN_S_MP_ADD_C | |
796 #define BN_MP_CMP_MAG_C | |
797 #define BN_S_MP_SUB_C | |
798 #endif | |
799 | |
800 #if defined(BN_MP_SUB_D_C) | |
801 #define BN_MP_GROW_C | |
802 #define BN_MP_ADD_D_C | |
803 #define BN_MP_CLAMP_C | |
804 #endif | |
805 | |
806 #if defined(BN_MP_SUBMOD_C) | |
807 #define BN_MP_INIT_C | |
808 #define BN_MP_SUB_C | |
809 #define BN_MP_CLEAR_C | |
810 #define BN_MP_MOD_C | |
811 #endif | |
812 | |
813 #if defined(BN_MP_TO_SIGNED_BIN_C) | |
814 #define BN_MP_TO_UNSIGNED_BIN_C | |
815 #endif | |
816 | |
817 #if defined(BN_MP_TO_UNSIGNED_BIN_C) | |
818 #define BN_MP_INIT_COPY_C | |
819 #define BN_MP_ISZERO_C | |
820 #define BN_MP_DIV_2D_C | |
821 #define BN_MP_CLEAR_C | |
822 #endif | |
823 | |
824 #if defined(BN_MP_TOOM_MUL_C) | |
825 #define BN_MP_INIT_MULTI_C | |
826 #define BN_MP_MOD_2D_C | |
827 #define BN_MP_COPY_C | |
828 #define BN_MP_RSHD_C | |
829 #define BN_MP_MUL_C | |
830 #define BN_MP_MUL_2_C | |
831 #define BN_MP_ADD_C | |
832 #define BN_MP_SUB_C | |
833 #define BN_MP_DIV_2_C | |
834 #define BN_MP_MUL_2D_C | |
835 #define BN_MP_MUL_D_C | |
836 #define BN_MP_DIV_3_C | |
837 #define BN_MP_LSHD_C | |
838 #define BN_MP_CLEAR_MULTI_C | |
839 #endif | |
840 | |
841 #if defined(BN_MP_TOOM_SQR_C) | |
842 #define BN_MP_INIT_MULTI_C | |
843 #define BN_MP_MOD_2D_C | |
844 #define BN_MP_COPY_C | |
845 #define BN_MP_RSHD_C | |
846 #define BN_MP_SQR_C | |
847 #define BN_MP_MUL_2_C | |
848 #define BN_MP_ADD_C | |
849 #define BN_MP_SUB_C | |
850 #define BN_MP_DIV_2_C | |
851 #define BN_MP_MUL_2D_C | |
852 #define BN_MP_MUL_D_C | |
853 #define BN_MP_DIV_3_C | |
854 #define BN_MP_LSHD_C | |
855 #define BN_MP_CLEAR_MULTI_C | |
856 #endif | |
857 | |
858 #if defined(BN_MP_TORADIX_C) | |
859 #define BN_MP_ISZERO_C | |
860 #define BN_MP_INIT_COPY_C | |
861 #define BN_MP_DIV_D_C | |
862 #define BN_MP_CLEAR_C | |
863 #define BN_MP_S_RMAP_C | |
864 #endif | |
865 | |
866 #if defined(BN_MP_TORADIX_N_C) | |
867 #define BN_MP_ISZERO_C | |
868 #define BN_MP_INIT_COPY_C | |
869 #define BN_MP_DIV_D_C | |
870 #define BN_MP_CLEAR_C | |
871 #define BN_MP_S_RMAP_C | |
872 #endif | |
873 | |
874 #if defined(BN_MP_UNSIGNED_BIN_SIZE_C) | |
875 #define BN_MP_COUNT_BITS_C | |
876 #endif | |
877 | |
878 #if defined(BN_MP_XOR_C) | |
879 #define BN_MP_INIT_COPY_C | |
880 #define BN_MP_CLAMP_C | |
881 #define BN_MP_EXCH_C | |
882 #define BN_MP_CLEAR_C | |
883 #endif | |
884 | |
885 #if defined(BN_MP_ZERO_C) | |
886 #endif | |
887 | |
888 #if defined(BN_PRIME_TAB_C) | |
889 #endif | |
890 | |
891 #if defined(BN_REVERSE_C) | |
892 #endif | |
893 | |
894 #if defined(BN_S_MP_ADD_C) | |
895 #define BN_MP_GROW_C | |
896 #define BN_MP_CLAMP_C | |
897 #endif | |
898 | |
899 #if defined(BN_S_MP_EXPTMOD_C) | |
900 #define BN_MP_COUNT_BITS_C | |
901 #define BN_MP_INIT_C | |
902 #define BN_MP_CLEAR_C | |
903 #define BN_MP_REDUCE_SETUP_C | |
904 #define BN_MP_MOD_C | |
905 #define BN_MP_COPY_C | |
906 #define BN_MP_SQR_C | |
907 #define BN_MP_REDUCE_C | |
908 #define BN_MP_MUL_C | |
909 #define BN_MP_SET_C | |
910 #define BN_MP_EXCH_C | |
911 #endif | |
912 | |
913 #if defined(BN_S_MP_MUL_DIGS_C) | |
914 #define BN_FAST_S_MP_MUL_DIGS_C | |
915 #define BN_MP_INIT_SIZE_C | |
916 #define BN_MP_CLAMP_C | |
917 #define BN_MP_EXCH_C | |
918 #define BN_MP_CLEAR_C | |
919 #endif | |
920 | |
921 #if defined(BN_S_MP_MUL_HIGH_DIGS_C) | |
922 #define BN_FAST_S_MP_MUL_HIGH_DIGS_C | |
923 #define BN_MP_INIT_SIZE_C | |
924 #define BN_MP_CLAMP_C | |
925 #define BN_MP_EXCH_C | |
926 #define BN_MP_CLEAR_C | |
927 #endif | |
928 | |
929 #if defined(BN_S_MP_SQR_C) | |
930 #define BN_MP_INIT_SIZE_C | |
931 #define BN_MP_CLAMP_C | |
932 #define BN_MP_EXCH_C | |
933 #define BN_MP_CLEAR_C | |
934 #endif | |
935 | |
936 #if defined(BN_S_MP_SUB_C) | |
937 #define BN_MP_GROW_C | |
938 #define BN_MP_CLAMP_C | |
939 #endif | |
940 | |
941 #if defined(BNCORE_C) | |
942 #endif | |
943 | |
944 #ifdef LTM3 | |
945 #define LTM_LAST | |
946 #endif | |
947 #include <tommath_superclass.h> | |
948 #include <tommath_class.h> | |
949 #else | |
950 #define LTM_LAST | |
951 #endif |