diff --git a/helper.pl b/helper.pl index cc35bae..c7b8760 100755 --- a/helper.pl +++ b/helper.pl @@ -314,7 +314,7 @@ EOS print "Processing $filename\n"; - # convert filename to upper case so we can use it as a define + # convert filename to upper case so we can use it as a define $define =~ tr/[a-z]/[A-Z]/; $define =~ tr/\./_/; print {$class} "# define $define\n"; @@ -339,7 +339,7 @@ EOS $apply = 1; } while (<$src>) { - if (!($_ =~ /tommath\.h/)) { + if ($_ !~ /tommath\.h/) { print {$out} $_; } } @@ -378,18 +378,23 @@ EOS $content =~ s{/\*.*?\*/}{}gs; # scan for mp_* and make classes + my @deps = (); foreach my $line (split /\n/, $content) { while ($line =~ /(fast_)?(s_)?mp\_[a-z_0-9]*(?=\()|(?<=\()mp\_[a-z_0-9]*(?=,)/g) { my $a = $&; next if $a eq "mp_err"; $a =~ tr/[a-z]/[A-Z]/; $a = 'BN_' . $a . '_C'; - if (!($list =~ /$a/)) { - print {$class} "# define $a\n"; - } - $list = $list . ',' . $a; + push @deps, $a; } } + @deps = sort(@deps); + foreach my $a (@deps) { + if ($list !~ /$a/) { + print {$class} "# define $a\n"; + } + $list = $list . ',' . $a; + } $depmap{$filename} = $list; print {$class} "#endif\n\n"; diff --git a/tommath_class.h b/tommath_class.h index a098c0f..dfc0be1 100644 --- a/tommath_class.h +++ b/tommath_class.h @@ -164,71 +164,71 @@ #endif #if defined(BN_DEPRECATED_C) -# define BN_MP_GET_BIT_C -# define BN_S_MP_GET_BIT_C -# define BN_MP_JACOBI_C -# define BN_MP_CMP_D_C -# define BN_MP_KRONECKER_C -# define BN_MP_PRIME_RANDOM_EX_C -# define BN_S_MP_PRIME_RANDOM_EX_C -# define BN_MP_RAND_DIGIT_C -# define BN_S_MP_RAND_SOURCE_C # define BN_FAST_MP_INVMOD_C -# define BN_S_MP_INVMOD_FAST_C # define BN_FAST_MP_MONTGOMERY_REDUCE_C -# define BN_S_MP_MONTGOMERY_REDUCE_FAST_C # define BN_FAST_S_MP_MUL_DIGS_C -# define BN_S_MP_MUL_DIGS_FAST_C # define BN_FAST_S_MP_MUL_HIGH_DIGS_C -# define BN_S_MP_MUL_HIGH_DIGS_FAST_C # define BN_FAST_S_MP_SQR_C -# define BN_S_MP_SQR_FAST_C -# define BN_MP_BALANCE_MUL_C -# define BN_S_MP_BALANCE_MUL_C -# define BN_MP_EXPTMOD_FAST_C -# define BN_S_MP_EXPTMOD_FAST_C -# define BN_MP_INVMOD_SLOW_C -# define BN_S_MP_INVMOD_SLOW_C -# define BN_MP_KARATSUBA_MUL_C -# define BN_S_MP_KARATSUBA_MUL_C -# define BN_MP_KARATSUBA_SQR_C -# define BN_S_MP_KARATSUBA_SQR_C -# define BN_MP_TOOM_MUL_C -# define BN_S_MP_TOOM_MUL_C -# define BN_MP_TOOM_SQR_C -# define BN_S_MP_TOOM_SQR_C -# define BN_S_MP_REVERSE_C -# define BN_MP_TC_AND_C # define BN_MP_AND_C -# define BN_MP_TC_OR_C -# define BN_MP_OR_C -# define BN_MP_TC_XOR_C -# define BN_MP_XOR_C -# define BN_MP_TC_DIV_2D_C -# define BN_MP_SIGNED_RSH_C +# define BN_MP_BALANCE_MUL_C +# define BN_MP_CMP_D_C +# define BN_MP_EXPTMOD_FAST_C +# define BN_MP_EXPT_D_C +# define BN_MP_EXPT_D_EX_C +# define BN_MP_GET_BIT_C +# define BN_MP_GET_INT_C +# define BN_MP_GET_LONG_C +# define BN_MP_GET_LONG_LONG_C +# define BN_MP_GET_MAG32_C +# define BN_MP_GET_MAG64_C # define BN_MP_INIT_SET_INT_C # define BN_MP_INIT_U32_C -# define BN_MP_SET_INT_C -# define BN_MP_SET_U32_C -# define BN_MP_SET_LONG_C -# define BN_MP_SET_U64_C -# define BN_MP_SET_LONG_LONG_C -# define BN_MP_GET_INT_C -# define BN_MP_GET_MAG32_C -# define BN_MP_GET_LONG_C -# define BN_MP_GET_MAG64_C -# define BN_MP_GET_LONG_LONG_C -# define BN_MP_PRIME_IS_DIVISIBLE_C -# define BN_S_MP_PRIME_IS_DIVISIBLE_C -# define BN_MP_EXPT_D_EX_C -# define BN_MP_EXPT_D_C -# define BN_MP_N_ROOT_EX_C +# define BN_MP_INVMOD_SLOW_C +# define BN_MP_JACOBI_C +# define BN_MP_KARATSUBA_MUL_C +# define BN_MP_KARATSUBA_SQR_C +# define BN_MP_KRONECKER_C # define BN_MP_N_ROOT_C +# define BN_MP_N_ROOT_EX_C +# define BN_MP_OR_C +# define BN_MP_PRIME_IS_DIVISIBLE_C +# define BN_MP_PRIME_RANDOM_EX_C +# define BN_MP_RAND_DIGIT_C +# define BN_MP_SET_INT_C +# define BN_MP_SET_LONG_C +# define BN_MP_SET_LONG_LONG_C +# define BN_MP_SET_U32_C +# define BN_MP_SET_U64_C +# define BN_MP_SIGNED_RSH_C +# define BN_MP_TC_AND_C +# define BN_MP_TC_DIV_2D_C +# define BN_MP_TC_OR_C +# define BN_MP_TC_XOR_C +# define BN_MP_TOOM_MUL_C +# define BN_MP_TOOM_SQR_C +# define BN_MP_XOR_C +# define BN_S_MP_BALANCE_MUL_C +# define BN_S_MP_EXPTMOD_FAST_C +# define BN_S_MP_GET_BIT_C +# define BN_S_MP_INVMOD_FAST_C +# define BN_S_MP_INVMOD_SLOW_C +# define BN_S_MP_KARATSUBA_MUL_C +# define BN_S_MP_KARATSUBA_SQR_C +# define BN_S_MP_MONTGOMERY_REDUCE_FAST_C +# define BN_S_MP_MUL_DIGS_FAST_C +# define BN_S_MP_MUL_HIGH_DIGS_FAST_C +# define BN_S_MP_PRIME_IS_DIVISIBLE_C +# define BN_S_MP_PRIME_RANDOM_EX_C +# define BN_S_MP_RAND_SOURCE_C +# define BN_S_MP_REVERSE_C +# define BN_S_MP_SQR_FAST_C +# define BN_S_MP_TOOM_MUL_C +# define BN_S_MP_TOOM_SQR_C #endif #if defined(BN_MP_2EXPT_C) -# define BN_MP_ZERO_C # define BN_MP_GROW_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_ABS_C) @@ -236,27 +236,27 @@ #endif #if defined(BN_MP_ADD_C) -# define BN_S_MP_ADD_C # define BN_MP_CMP_MAG_C +# define BN_S_MP_ADD_C # define BN_S_MP_SUB_C #endif #if defined(BN_MP_ADD_D_C) +# define BN_MP_CLAMP_C # define BN_MP_GROW_C # define BN_MP_SUB_D_C -# define BN_MP_CLAMP_C #endif #if defined(BN_MP_ADDMOD_C) -# define BN_MP_INIT_C # define BN_MP_ADD_C # define BN_MP_CLEAR_C +# define BN_MP_INIT_C # define BN_MP_MOD_C #endif #if defined(BN_MP_AND_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_MP_CLAMP_C) @@ -295,70 +295,70 @@ #endif #if defined(BN_MP_DECR_C) -# define BN_MP_SET_C # define BN_MP_INCR_C -# define BN_MP_ZERO_C +# define BN_MP_SET_C # define BN_MP_SUB_D_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_DIV_C) -# define BN_MP_CMP_MAG_C -# define BN_MP_COPY_C -# define BN_MP_ZERO_C -# define BN_MP_INIT_SIZE_C -# define BN_MP_INIT_C -# define BN_MP_INIT_COPY_C -# define BN_MP_COUNT_BITS_C -# define BN_MP_MUL_2D_C -# define BN_MP_LSHD_C -# define BN_MP_CMP_C -# define BN_MP_SUB_C -# define BN_MP_RSHD_C -# define BN_MP_MUL_D_C # define BN_MP_ADD_C # define BN_MP_CLAMP_C -# define BN_MP_EXCH_C -# define BN_MP_DIV_2D_C # define BN_MP_CLEAR_C +# define BN_MP_CMP_C +# define BN_MP_CMP_MAG_C +# define BN_MP_COPY_C +# define BN_MP_COUNT_BITS_C +# define BN_MP_DIV_2D_C +# define BN_MP_EXCH_C +# define BN_MP_INIT_C +# define BN_MP_INIT_COPY_C +# define BN_MP_INIT_SIZE_C +# define BN_MP_LSHD_C +# define BN_MP_MUL_2D_C +# define BN_MP_MUL_D_C +# define BN_MP_RSHD_C +# define BN_MP_SUB_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_DIV_2_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_MP_DIV_2D_C) +# define BN_MP_CLAMP_C # define BN_MP_COPY_C -# define BN_MP_ZERO_C # define BN_MP_MOD_2D_C # define BN_MP_RSHD_C -# define BN_MP_CLAMP_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_DIV_3_C) -# define BN_MP_INIT_SIZE_C # define BN_MP_CLAMP_C -# define BN_MP_EXCH_C # define BN_MP_CLEAR_C +# define BN_MP_EXCH_C +# define BN_MP_INIT_SIZE_C #endif #if defined(BN_MP_DIV_D_C) +# define BN_MP_CLAMP_C +# define BN_MP_CLEAR_C # define BN_MP_COPY_C # define BN_MP_DIV_2D_C # define BN_MP_DIV_3_C -# define BN_MP_INIT_SIZE_C -# define BN_MP_CLAMP_C # define BN_MP_EXCH_C -# define BN_MP_CLEAR_C +# define BN_MP_INIT_SIZE_C #endif #if defined(BN_MP_DR_IS_MODULUS_C) #endif #if defined(BN_MP_DR_REDUCE_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C # define BN_MP_CMP_MAG_C +# define BN_MP_GROW_C # define BN_S_MP_SUB_C #endif @@ -372,49 +372,49 @@ #endif #if defined(BN_MP_EXPORT_C) -# define BN_MP_INIT_COPY_C +# define BN_MP_CLEAR_C # define BN_MP_COUNT_BITS_C # define BN_MP_DIV_2D_C -# define BN_MP_CLEAR_C +# define BN_MP_INIT_COPY_C #endif #if defined(BN_MP_EXPT_D_C) -# define BN_MP_INIT_COPY_C -# define BN_MP_SET_C -# define BN_MP_MUL_C # define BN_MP_CLEAR_C +# define BN_MP_INIT_COPY_C +# define BN_MP_MUL_C +# define BN_MP_SET_C # define BN_MP_SQR_C #endif #if defined(BN_MP_EXPTMOD_C) +# define BN_MP_ABS_C +# define BN_MP_CLEAR_C +# define BN_MP_CLEAR_MULTI_C +# define BN_MP_DR_IS_MODULUS_C # define BN_MP_INIT_C # define BN_MP_INVMOD_C -# define BN_MP_CLEAR_C -# define BN_MP_ABS_C -# define BN_MP_CLEAR_MULTI_C +# define BN_MP_REDUCE_IS_2K_C # define BN_MP_REDUCE_IS_2K_L_C # define BN_S_MP_EXPTMOD_C -# define BN_MP_DR_IS_MODULUS_C -# define BN_MP_REDUCE_IS_2K_C # define BN_S_MP_EXPTMOD_FAST_C #endif #if defined(BN_MP_EXTEUCLID_C) -# define BN_MP_INIT_MULTI_C -# define BN_MP_SET_C +# define BN_MP_CLEAR_MULTI_C # define BN_MP_COPY_C # define BN_MP_DIV_C -# define BN_MP_MUL_C -# define BN_MP_SUB_C -# define BN_MP_NEG_C # define BN_MP_EXCH_C -# define BN_MP_CLEAR_MULTI_C +# define BN_MP_INIT_MULTI_C +# define BN_MP_MUL_C +# define BN_MP_NEG_C +# define BN_MP_SET_C +# define BN_MP_SUB_C #endif #if defined(BN_MP_FREAD_C) -# define BN_MP_ZERO_C -# define BN_MP_MUL_D_C # define BN_MP_ADD_D_C +# define BN_MP_MUL_D_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_FWRITE_C) @@ -424,14 +424,14 @@ #if defined(BN_MP_GCD_C) # define BN_MP_ABS_C -# define BN_MP_INIT_COPY_C +# define BN_MP_CLEAR_C +# define BN_MP_CMP_MAG_C # define BN_MP_CNT_LSB_C # define BN_MP_DIV_2D_C -# define BN_MP_CMP_MAG_C # define BN_MP_EXCH_C -# define BN_S_MP_SUB_C +# define BN_MP_INIT_COPY_C # define BN_MP_MUL_2D_C -# define BN_MP_CLEAR_C +# define BN_S_MP_SUB_C #endif #if defined(BN_MP_GET_DOUBLE_C) @@ -455,40 +455,40 @@ #endif #if defined(BN_MP_ILOGB_C) -# define BN_MP_SET_U32_C -# define BN_MP_COUNT_BITS_C -# define BN_MP_SET_C -# define BN_MP_CMP_D_C -# define BN_MP_ZERO_C -# define BN_MP_INIT_MULTI_C -# define BN_MP_CMP_C -# define BN_MP_COPY_C -# define BN_MP_SQR_C -# define BN_MP_EXPT_D_C -# define BN_MP_MUL_C -# define BN_MP_EXCH_C # define BN_MP_CLEAR_MULTI_C +# define BN_MP_CMP_C +# define BN_MP_CMP_D_C +# define BN_MP_COPY_C +# define BN_MP_COUNT_BITS_C +# define BN_MP_EXCH_C +# define BN_MP_EXPT_D_C +# define BN_MP_INIT_MULTI_C +# define BN_MP_MUL_C +# define BN_MP_SET_C +# define BN_MP_SET_U32_C +# define BN_MP_SQR_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_IMPORT_C) -# define BN_MP_ZERO_C -# define BN_MP_MUL_2D_C # define BN_MP_CLAMP_C +# define BN_MP_MUL_2D_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_INCR_C) -# define BN_MP_SET_C -# define BN_MP_DECR_C # define BN_MP_ADD_D_C +# define BN_MP_DECR_C +# define BN_MP_SET_C #endif #if defined(BN_MP_INIT_C) #endif #if defined(BN_MP_INIT_COPY_C) -# define BN_MP_INIT_SIZE_C -# define BN_MP_COPY_C # define BN_MP_CLEAR_C +# define BN_MP_COPY_C +# define BN_MP_INIT_SIZE_C #endif #if defined(BN_MP_INIT_I32_C) @@ -502,8 +502,8 @@ #endif #if defined(BN_MP_INIT_MULTI_C) -# define BN_MP_INIT_C # define BN_MP_CLEAR_C +# define BN_MP_INIT_C #endif #if defined(BN_MP_INIT_SET_C) @@ -531,14 +531,14 @@ #endif #if defined(BN_MP_IS_SQUARE_C) -# define BN_MP_MOD_D_C +# define BN_MP_CLEAR_C +# define BN_MP_CMP_MAG_C +# define BN_MP_GET_I32_C # define BN_MP_INIT_U32_C # define BN_MP_MOD_C -# define BN_MP_GET_I32_C +# define BN_MP_MOD_D_C # define BN_MP_SQRT_C # define BN_MP_SQR_C -# define BN_MP_CMP_MAG_C -# define BN_MP_CLEAR_C #endif #if defined(BN_MP_ISEVEN_C) @@ -548,22 +548,23 @@ #endif #if defined(BN_MP_KRONECKER_C) -# define BN_MP_INIT_COPY_C -# define BN_MP_CNT_LSB_C -# define BN_MP_DIV_2D_C -# define BN_MP_CMP_D_C -# define BN_MP_COPY_C -# define BN_MP_MOD_C # define BN_MP_CLEAR_C +# define BN_MP_CMP_D_C +# define BN_MP_CNT_LSB_C +# define BN_MP_COPY_C +# define BN_MP_DIV_2D_C +# define BN_MP_INIT_C +# define BN_MP_INIT_COPY_C +# define BN_MP_MOD_C #endif #if defined(BN_MP_LCM_C) -# define BN_MP_INIT_MULTI_C -# define BN_MP_GCD_C +# define BN_MP_CLEAR_MULTI_C # define BN_MP_CMP_MAG_C # define BN_MP_DIV_C +# define BN_MP_GCD_C +# define BN_MP_INIT_MULTI_C # define BN_MP_MUL_C -# define BN_MP_CLEAR_MULTI_C #endif #if defined(BN_MP_LSHD_C) @@ -571,17 +572,17 @@ #endif #if defined(BN_MP_MOD_C) -# define BN_MP_INIT_SIZE_C -# define BN_MP_DIV_C -# define BN_MP_CLEAR_C -# define BN_MP_EXCH_C # define BN_MP_ADD_C +# define BN_MP_CLEAR_C +# define BN_MP_DIV_C +# define BN_MP_EXCH_C +# define BN_MP_INIT_SIZE_C #endif #if defined(BN_MP_MOD_2D_C) -# define BN_MP_ZERO_C -# define BN_MP_COPY_C # define BN_MP_CLAMP_C +# define BN_MP_COPY_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_MOD_D_C) @@ -589,20 +590,20 @@ #endif #if defined(BN_MP_MONTGOMERY_CALC_NORMALIZATION_C) -# define BN_MP_COUNT_BITS_C # define BN_MP_2EXPT_C -# define BN_MP_SET_C -# define BN_MP_MUL_2_C # define BN_MP_CMP_MAG_C +# define BN_MP_COUNT_BITS_C +# define BN_MP_MUL_2_C +# define BN_MP_SET_C # define BN_S_MP_SUB_C #endif #if defined(BN_MP_MONTGOMERY_REDUCE_C) -# define BN_S_MP_MONTGOMERY_REDUCE_FAST_C -# define BN_MP_GROW_C # define BN_MP_CLAMP_C -# define BN_MP_RSHD_C # define BN_MP_CMP_MAG_C +# define BN_MP_GROW_C +# define BN_MP_RSHD_C +# define BN_S_MP_MONTGOMERY_REDUCE_FAST_C # define BN_S_MP_SUB_C #endif @@ -611,10 +612,10 @@ #if defined(BN_MP_MUL_C) # define BN_S_MP_BALANCE_MUL_C -# define BN_S_MP_TOOM_MUL_C # define BN_S_MP_KARATSUBA_MUL_C -# define BN_S_MP_MUL_DIGS_FAST_C # define BN_S_MP_MUL_DIGS_C +# define BN_S_MP_MUL_DIGS_FAST_C +# define BN_S_MP_TOOM_MUL_C #endif #if defined(BN_MP_MUL_2_C) @@ -622,40 +623,40 @@ #endif #if defined(BN_MP_MUL_2D_C) +# define BN_MP_CLAMP_C # define BN_MP_COPY_C # define BN_MP_GROW_C # define BN_MP_LSHD_C -# define BN_MP_CLAMP_C #endif #if defined(BN_MP_MUL_D_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_MP_MULMOD_C) -# define BN_MP_INIT_SIZE_C -# define BN_MP_MUL_C # define BN_MP_CLEAR_C +# define BN_MP_INIT_SIZE_C # define BN_MP_MOD_C +# define BN_MP_MUL_C #endif #if defined(BN_MP_N_ROOT_C) -# define BN_MP_INIT_MULTI_C -# define BN_MP_COUNT_BITS_C -# define BN_MP_SET_C # define BN_MP_2EXPT_C -# define BN_MP_COPY_C -# define BN_MP_EXPT_D_C -# define BN_MP_MUL_C -# define BN_MP_SUB_C -# define BN_MP_MUL_D_C -# define BN_MP_DIV_C -# define BN_MP_CMP_C # define BN_MP_ADD_D_C -# define BN_MP_SUB_D_C -# define BN_MP_EXCH_C # define BN_MP_CLEAR_MULTI_C +# define BN_MP_CMP_C +# define BN_MP_COPY_C +# define BN_MP_COUNT_BITS_C +# define BN_MP_DIV_C +# define BN_MP_EXCH_C +# define BN_MP_EXPT_D_C +# define BN_MP_INIT_MULTI_C +# define BN_MP_MUL_C +# define BN_MP_MUL_D_C +# define BN_MP_SET_C +# define BN_MP_SUB_C +# define BN_MP_SUB_D_C #endif #if defined(BN_MP_NEG_C) @@ -663,143 +664,144 @@ #endif #if defined(BN_MP_OR_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_MP_PRIME_FERMAT_C) -# define BN_MP_CMP_D_C -# define BN_MP_INIT_C -# define BN_MP_EXPTMOD_C -# define BN_MP_CMP_C # define BN_MP_CLEAR_C +# define BN_MP_CMP_C +# define BN_MP_CMP_D_C +# define BN_MP_EXPTMOD_C +# define BN_MP_INIT_C #endif #if defined(BN_MP_PRIME_FROBENIUS_UNDERWOOD_C) +# define BN_MP_ADD_C +# define BN_MP_ADD_D_C +# define BN_MP_CLEAR_MULTI_C +# define BN_MP_CMP_C +# define BN_MP_COUNT_BITS_C +# define BN_MP_EXCH_C +# define BN_MP_GCD_C # define BN_MP_INIT_MULTI_C +# define BN_MP_KRONECKER_C +# define BN_MP_MOD_C +# define BN_MP_MUL_2_C +# define BN_MP_MUL_C +# define BN_MP_MUL_D_C +# define BN_MP_SET_C # define BN_MP_SET_U32_C # define BN_MP_SQR_C -# define BN_MP_SUB_D_C -# define BN_MP_KRONECKER_C -# define BN_MP_GCD_C -# define BN_MP_ADD_D_C -# define BN_MP_SET_C -# define BN_MP_COUNT_BITS_C -# define BN_MP_MUL_2_C -# define BN_MP_MUL_D_C -# define BN_MP_ADD_C -# define BN_MP_MUL_C # define BN_MP_SUB_C -# define BN_MP_MOD_C +# define BN_MP_SUB_D_C # define BN_S_MP_GET_BIT_C -# define BN_MP_EXCH_C -# define BN_MP_CMP_C -# define BN_MP_CLEAR_MULTI_C #endif #if defined(BN_MP_PRIME_IS_PRIME_C) -# define BN_MP_IS_SQUARE_C +# define BN_MP_CLEAR_C +# define BN_MP_CMP_C # define BN_MP_CMP_D_C -# define BN_S_MP_PRIME_IS_DIVISIBLE_C +# define BN_MP_COUNT_BITS_C +# define BN_MP_DIV_2D_C # define BN_MP_INIT_SET_C +# define BN_MP_IS_SQUARE_C # define BN_MP_PRIME_MILLER_RABIN_C # define BN_MP_PRIME_STRONG_LUCAS_SELFRIDGE_C -# define BN_MP_READ_RADIX_C -# define BN_MP_CMP_C -# define BN_MP_SET_C -# define BN_MP_COUNT_BITS_C # define BN_MP_RAND_C -# define BN_MP_DIV_2D_C -# define BN_MP_CLEAR_C +# define BN_MP_READ_RADIX_C +# define BN_MP_SET_C +# define BN_S_MP_PRIME_IS_DIVISIBLE_C #endif #if defined(BN_MP_PRIME_MILLER_RABIN_C) +# define BN_MP_CLEAR_C +# define BN_MP_CMP_C # define BN_MP_CMP_D_C -# define BN_MP_INIT_COPY_C -# define BN_MP_SUB_D_C # define BN_MP_CNT_LSB_C # define BN_MP_DIV_2D_C # define BN_MP_EXPTMOD_C -# define BN_MP_CMP_C +# define BN_MP_INIT_C +# define BN_MP_INIT_COPY_C # define BN_MP_SQRMOD_C -# define BN_MP_CLEAR_C +# define BN_MP_SUB_D_C #endif #if defined(BN_MP_PRIME_NEXT_PRIME_C) +# define BN_MP_ADD_D_C +# define BN_MP_CLEAR_C # define BN_MP_CMP_D_C +# define BN_MP_INIT_C +# define BN_MP_MOD_D_C +# define BN_MP_PRIME_IS_PRIME_C # define BN_MP_SET_C # define BN_MP_SUB_D_C -# define BN_MP_MOD_D_C -# define BN_MP_INIT_C -# define BN_MP_ADD_D_C -# define BN_MP_PRIME_IS_PRIME_C -# define BN_MP_CLEAR_C #endif #if defined(BN_MP_PRIME_RABIN_MILLER_TRIALS_C) #endif #if defined(BN_MP_PRIME_RAND_C) -# define BN_S_MP_PRIME_RANDOM_EX_C -# define BN_MP_READ_UNSIGNED_BIN_C -# define BN_MP_PRIME_IS_PRIME_C -# define BN_MP_SUB_D_C +# define BN_MP_ADD_D_C # define BN_MP_DIV_2_C # define BN_MP_MUL_2_C -# define BN_MP_ADD_D_C +# define BN_MP_PRIME_IS_PRIME_C +# define BN_MP_READ_UNSIGNED_BIN_C +# define BN_MP_SUB_D_C +# define BN_S_MP_PRIME_RANDOM_EX_C # define BN_S_MP_RAND_CB_C # define BN_S_MP_RAND_SOURCE_C #endif #if defined(BN_MP_PRIME_STRONG_LUCAS_SELFRIDGE_C) -# define BN_S_MP_MUL_SI_C -# define BN_MP_INIT_C -# define BN_MP_SET_I32_C -# define BN_MP_MUL_C -# define BN_MP_CLEAR_C -# define BN_MP_INIT_MULTI_C -# define BN_MP_SET_U32_C -# define BN_MP_GCD_C -# define BN_MP_CMP_D_C -# define BN_MP_CMP_C -# define BN_MP_KRONECKER_C +# define BN_MP_ADD_C # define BN_MP_ADD_D_C +# define BN_MP_CLEAR_C +# define BN_MP_CLEAR_MULTI_C +# define BN_MP_CMP_C +# define BN_MP_CMP_D_C # define BN_MP_CNT_LSB_C -# define BN_MP_DIV_2D_C -# define BN_MP_SET_C -# define BN_MP_MUL_2_C # define BN_MP_COUNT_BITS_C +# define BN_MP_DIV_2D_C +# define BN_MP_DIV_2_C +# define BN_MP_GCD_C +# define BN_MP_INIT_C +# define BN_MP_INIT_MULTI_C +# define BN_MP_KRONECKER_C # define BN_MP_MOD_C +# define BN_MP_MUL_2_C +# define BN_MP_MUL_C +# define BN_MP_SET_C +# define BN_MP_SET_I32_C +# define BN_MP_SET_U32_C # define BN_MP_SQR_C # define BN_MP_SUB_C -# define BN_S_MP_GET_BIT_C -# define BN_MP_ADD_C -# define BN_MP_DIV_2_C # define BN_MP_SUB_D_C -# define BN_MP_CLEAR_MULTI_C +# define BN_S_MP_GET_BIT_C +# define BN_S_MP_MUL_SI_C #endif #if defined(BN_MP_RADIX_SIZE_C) -# define BN_MP_COUNT_BITS_C -# define BN_MP_INIT_COPY_C -# define BN_MP_DIV_D_C # define BN_MP_CLEAR_C +# define BN_MP_COUNT_BITS_C +# define BN_MP_DIV_D_C +# define BN_MP_INIT_COPY_C #endif #if defined(BN_MP_RADIX_SMAP_C) #endif #if defined(BN_MP_RAND_C) +# define BN_MP_GROW_C # define BN_MP_RAND_SOURCE_C # define BN_MP_ZERO_C -# define BN_MP_GROW_C # define BN_S_MP_RAND_SOURCE_C #endif #if defined(BN_MP_READ_RADIX_C) -# define BN_MP_ZERO_C -# define BN_MP_MUL_D_C # define BN_MP_ADD_D_C +# define BN_MP_MUL_D_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_READ_SIGNED_BIN_C) @@ -807,65 +809,65 @@ #endif #if defined(BN_MP_READ_UNSIGNED_BIN_C) -# define BN_MP_GROW_C -# define BN_MP_ZERO_C -# define BN_MP_MUL_2D_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C +# define BN_MP_MUL_2D_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_REDUCE_C) -# define BN_MP_INIT_COPY_C -# define BN_MP_RSHD_C -# define BN_MP_MUL_C -# define BN_S_MP_MUL_HIGH_DIGS_C -# define BN_MP_MOD_2D_C -# define BN_S_MP_MUL_DIGS_C -# define BN_MP_SUB_C -# define BN_MP_CMP_D_C -# define BN_MP_SET_C -# define BN_MP_LSHD_C # define BN_MP_ADD_C -# define BN_MP_CMP_C -# define BN_S_MP_SUB_C # define BN_MP_CLEAR_C +# define BN_MP_CMP_C +# define BN_MP_CMP_D_C +# define BN_MP_INIT_COPY_C +# define BN_MP_LSHD_C +# define BN_MP_MOD_2D_C +# define BN_MP_MUL_C +# define BN_MP_RSHD_C +# define BN_MP_SET_C +# define BN_MP_SUB_C +# define BN_S_MP_MUL_DIGS_C +# define BN_S_MP_MUL_HIGH_DIGS_C +# define BN_S_MP_SUB_C #endif #if defined(BN_MP_REDUCE_2K_C) -# define BN_MP_INIT_C +# define BN_MP_CLEAR_C +# define BN_MP_CMP_MAG_C # define BN_MP_COUNT_BITS_C # define BN_MP_DIV_2D_C +# define BN_MP_INIT_C # define BN_MP_MUL_D_C # define BN_S_MP_ADD_C -# define BN_MP_CMP_MAG_C # define BN_S_MP_SUB_C -# define BN_MP_CLEAR_C #endif #if defined(BN_MP_REDUCE_2K_L_C) -# define BN_MP_INIT_C +# define BN_MP_CLEAR_C +# define BN_MP_CMP_MAG_C # define BN_MP_COUNT_BITS_C # define BN_MP_DIV_2D_C +# define BN_MP_INIT_C # define BN_MP_MUL_C # define BN_S_MP_ADD_C -# define BN_MP_CMP_MAG_C # define BN_S_MP_SUB_C -# define BN_MP_CLEAR_C #endif #if defined(BN_MP_REDUCE_2K_SETUP_C) -# define BN_MP_INIT_C -# define BN_MP_COUNT_BITS_C # define BN_MP_2EXPT_C # define BN_MP_CLEAR_C +# define BN_MP_COUNT_BITS_C +# define BN_MP_INIT_C # define BN_S_MP_SUB_C #endif #if defined(BN_MP_REDUCE_2K_SETUP_L_C) -# define BN_MP_INIT_C # define BN_MP_2EXPT_C -# define BN_MP_COUNT_BITS_C -# define BN_S_MP_SUB_C # define BN_MP_CLEAR_C +# define BN_MP_COUNT_BITS_C +# define BN_MP_INIT_C +# define BN_S_MP_SUB_C #endif #if defined(BN_MP_REDUCE_IS_2K_C) @@ -888,9 +890,9 @@ #endif #if defined(BN_MP_SET_DOUBLE_C) -# define BN_MP_SET_U64_C # define BN_MP_DIV_2D_C # define BN_MP_MUL_2D_C +# define BN_MP_SET_U64_C #endif #if defined(BN_MP_SET_I32_C) @@ -915,72 +917,73 @@ #endif #if defined(BN_MP_SIGNED_RSH_C) -# define BN_MP_DIV_2D_C # define BN_MP_ADD_D_C +# define BN_MP_DIV_2D_C # define BN_MP_SUB_D_C #endif #if defined(BN_MP_SQR_C) -# define BN_S_MP_TOOM_SQR_C # define BN_S_MP_KARATSUBA_SQR_C -# define BN_S_MP_SQR_FAST_C # define BN_S_MP_SQR_C +# define BN_S_MP_SQR_FAST_C +# define BN_S_MP_TOOM_SQR_C #endif #if defined(BN_MP_SQRMOD_C) -# define BN_MP_INIT_C -# define BN_MP_SQR_C # define BN_MP_CLEAR_C +# define BN_MP_INIT_C # define BN_MP_MOD_C +# define BN_MP_SQR_C #endif #if defined(BN_MP_SQRT_C) -# define BN_MP_ZERO_C +# define BN_MP_ADD_C +# define BN_MP_CLEAR_C +# define BN_MP_CMP_MAG_C +# define BN_MP_DIV_2_C +# define BN_MP_DIV_C +# define BN_MP_EXCH_C +# define BN_MP_INIT_C # define BN_MP_INIT_COPY_C # define BN_MP_RSHD_C -# define BN_MP_DIV_C -# define BN_MP_ADD_C -# define BN_MP_DIV_2_C -# define BN_MP_CMP_MAG_C -# define BN_MP_EXCH_C -# define BN_MP_CLEAR_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_SQRTMOD_PRIME_C) -# define BN_MP_CMP_D_C -# define BN_MP_ZERO_C -# define BN_MP_KRONECKER_C -# define BN_MP_INIT_MULTI_C -# define BN_MP_MOD_D_C # define BN_MP_ADD_D_C +# define BN_MP_CLEAR_MULTI_C +# define BN_MP_CMP_D_C +# define BN_MP_COPY_C # define BN_MP_DIV_2_C # define BN_MP_EXPTMOD_C -# define BN_MP_COPY_C -# define BN_MP_SUB_D_C -# define BN_MP_SET_U32_C -# define BN_MP_SQRMOD_C +# define BN_MP_INIT_MULTI_C +# define BN_MP_KRONECKER_C +# define BN_MP_MOD_D_C # define BN_MP_MULMOD_C # define BN_MP_SET_C -# define BN_MP_CLEAR_MULTI_C +# define BN_MP_SET_U32_C +# define BN_MP_SQRMOD_C +# define BN_MP_SUB_D_C +# define BN_MP_ZERO_C #endif #if defined(BN_MP_SUB_C) -# define BN_S_MP_ADD_C # define BN_MP_CMP_MAG_C +# define BN_S_MP_ADD_C # define BN_S_MP_SUB_C #endif #if defined(BN_MP_SUB_D_C) -# define BN_MP_GROW_C # define BN_MP_ADD_D_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_MP_SUBMOD_C) -# define BN_MP_INIT_C -# define BN_MP_SUB_C # define BN_MP_CLEAR_C +# define BN_MP_INIT_C # define BN_MP_MOD_C +# define BN_MP_SUB_C #endif #if defined(BN_MP_TO_SIGNED_BIN_C) @@ -993,28 +996,28 @@ #endif #if defined(BN_MP_TO_UNSIGNED_BIN_C) -# define BN_MP_INIT_COPY_C -# define BN_MP_DIV_2D_C # define BN_MP_CLEAR_C +# define BN_MP_DIV_2D_C +# define BN_MP_INIT_COPY_C # define BN_S_MP_REVERSE_C #endif #if defined(BN_MP_TO_UNSIGNED_BIN_N_C) -# define BN_MP_UNSIGNED_BIN_SIZE_C # define BN_MP_TO_UNSIGNED_BIN_C +# define BN_MP_UNSIGNED_BIN_SIZE_C #endif #if defined(BN_MP_TORADIX_C) -# define BN_MP_INIT_COPY_C -# define BN_MP_DIV_D_C # define BN_MP_CLEAR_C +# define BN_MP_DIV_D_C +# define BN_MP_INIT_COPY_C # define BN_S_MP_REVERSE_C #endif #if defined(BN_MP_TORADIX_N_C) -# define BN_MP_INIT_COPY_C -# define BN_MP_DIV_D_C # define BN_MP_CLEAR_C +# define BN_MP_DIV_D_C +# define BN_MP_INIT_COPY_C # define BN_S_MP_REVERSE_C #endif @@ -1023,8 +1026,8 @@ #endif #if defined(BN_MP_XOR_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_MP_ZERO_C) @@ -1034,138 +1037,138 @@ #endif #if defined(BN_S_MP_ADD_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_S_MP_BALANCE_MUL_C) -# define BN_MP_INIT_SIZE_C -# define BN_MP_INIT_MULTI_C -# define BN_MP_CLEAR_C -# define BN_MP_MUL_C -# define BN_MP_LSHD_C # define BN_MP_ADD_C -# define BN_MP_EXCH_C +# define BN_MP_CLEAR_C # define BN_MP_CLEAR_MULTI_C +# define BN_MP_EXCH_C +# define BN_MP_INIT_MULTI_C +# define BN_MP_INIT_SIZE_C +# define BN_MP_LSHD_C +# define BN_MP_MUL_C #endif #if defined(BN_S_MP_EXPTMOD_C) -# define BN_MP_COUNT_BITS_C -# define BN_MP_INIT_C # define BN_MP_CLEAR_C -# define BN_MP_REDUCE_SETUP_C -# define BN_MP_REDUCE_2K_SETUP_L_C -# define BN_MP_MOD_C # define BN_MP_COPY_C -# define BN_MP_SQR_C -# define BN_MP_MUL_C -# define BN_MP_SET_C +# define BN_MP_COUNT_BITS_C # define BN_MP_EXCH_C +# define BN_MP_INIT_C +# define BN_MP_MOD_C +# define BN_MP_MUL_C +# define BN_MP_REDUCE_2K_SETUP_L_C +# define BN_MP_REDUCE_SETUP_C +# define BN_MP_SET_C +# define BN_MP_SQR_C #endif #if defined(BN_S_MP_EXPTMOD_FAST_C) -# define BN_MP_COUNT_BITS_C -# define BN_MP_INIT_SIZE_C # define BN_MP_CLEAR_C -# define BN_MP_MONTGOMERY_SETUP_C -# define BN_MP_DR_SETUP_C -# define BN_MP_REDUCE_2K_SETUP_C -# define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C -# define BN_MP_MULMOD_C -# define BN_MP_SET_C -# define BN_MP_MOD_C # define BN_MP_COPY_C -# define BN_MP_SQR_C -# define BN_MP_MUL_C +# define BN_MP_COUNT_BITS_C +# define BN_MP_DR_SETUP_C # define BN_MP_EXCH_C +# define BN_MP_INIT_SIZE_C +# define BN_MP_MOD_C +# define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C +# define BN_MP_MONTGOMERY_SETUP_C +# define BN_MP_MULMOD_C +# define BN_MP_MUL_C +# define BN_MP_REDUCE_2K_SETUP_C +# define BN_MP_SET_C +# define BN_MP_SQR_C #endif #if defined(BN_S_MP_GET_BIT_C) #endif #if defined(BN_S_MP_INVMOD_FAST_C) -# define BN_MP_INIT_MULTI_C -# define BN_MP_COPY_C -# define BN_MP_MOD_C -# define BN_MP_SET_C -# define BN_MP_DIV_2_C -# define BN_MP_SUB_C +# define BN_MP_ADD_C +# define BN_MP_CLEAR_MULTI_C # define BN_MP_CMP_C # define BN_MP_CMP_D_C -# define BN_MP_ADD_C # define BN_MP_CMP_MAG_C +# define BN_MP_COPY_C +# define BN_MP_DIV_2_C # define BN_MP_EXCH_C -# define BN_MP_CLEAR_MULTI_C +# define BN_MP_INIT_MULTI_C +# define BN_MP_MOD_C +# define BN_MP_SET_C +# define BN_MP_SUB_C #endif #if defined(BN_S_MP_INVMOD_SLOW_C) -# define BN_MP_INIT_MULTI_C -# define BN_MP_MOD_C -# define BN_MP_COPY_C -# define BN_MP_SET_C -# define BN_MP_DIV_2_C # define BN_MP_ADD_C -# define BN_MP_SUB_C +# define BN_MP_CLEAR_MULTI_C # define BN_MP_CMP_C # define BN_MP_CMP_D_C # define BN_MP_CMP_MAG_C +# define BN_MP_COPY_C +# define BN_MP_DIV_2_C # define BN_MP_EXCH_C -# define BN_MP_CLEAR_MULTI_C +# define BN_MP_INIT_MULTI_C +# define BN_MP_MOD_C +# define BN_MP_SET_C +# define BN_MP_SUB_C #endif #if defined(BN_S_MP_KARATSUBA_MUL_C) -# define BN_MP_INIT_SIZE_C +# define BN_MP_ADD_C # define BN_MP_CLAMP_C +# define BN_MP_CLEAR_C +# define BN_MP_INIT_SIZE_C +# define BN_MP_LSHD_C # define BN_MP_MUL_C # define BN_S_MP_ADD_C -# define BN_MP_ADD_C # define BN_S_MP_SUB_C -# define BN_MP_LSHD_C -# define BN_MP_CLEAR_C #endif #if defined(BN_S_MP_KARATSUBA_SQR_C) -# define BN_MP_INIT_SIZE_C +# define BN_MP_ADD_C # define BN_MP_CLAMP_C +# define BN_MP_CLEAR_C +# define BN_MP_INIT_SIZE_C +# define BN_MP_LSHD_C # define BN_MP_SQR_C # define BN_S_MP_ADD_C # define BN_S_MP_SUB_C -# define BN_MP_LSHD_C -# define BN_MP_ADD_C -# define BN_MP_CLEAR_C #endif #if defined(BN_S_MP_MONTGOMERY_REDUCE_FAST_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C # define BN_MP_CMP_MAG_C +# define BN_MP_GROW_C # define BN_S_MP_SUB_C #endif #if defined(BN_S_MP_MUL_DIGS_C) -# define BN_S_MP_MUL_DIGS_FAST_C -# define BN_MP_INIT_SIZE_C # define BN_MP_CLAMP_C -# define BN_MP_EXCH_C # define BN_MP_CLEAR_C +# define BN_MP_EXCH_C +# define BN_MP_INIT_SIZE_C +# define BN_S_MP_MUL_DIGS_FAST_C #endif #if defined(BN_S_MP_MUL_DIGS_FAST_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_S_MP_MUL_HIGH_DIGS_C) -# define BN_S_MP_MUL_HIGH_DIGS_FAST_C -# define BN_MP_INIT_SIZE_C # define BN_MP_CLAMP_C -# define BN_MP_EXCH_C # define BN_MP_CLEAR_C +# define BN_MP_EXCH_C +# define BN_MP_INIT_SIZE_C +# define BN_S_MP_MUL_HIGH_DIGS_FAST_C #endif #if defined(BN_S_MP_MUL_HIGH_DIGS_FAST_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_S_MP_PRIME_IS_DIVISIBLE_C) @@ -1183,49 +1186,49 @@ #endif #if defined(BN_S_MP_SQR_C) -# define BN_MP_INIT_SIZE_C # define BN_MP_CLAMP_C -# define BN_MP_EXCH_C # define BN_MP_CLEAR_C +# define BN_MP_EXCH_C +# define BN_MP_INIT_SIZE_C #endif #if defined(BN_S_MP_SQR_FAST_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_S_MP_SUB_C) -# define BN_MP_GROW_C # define BN_MP_CLAMP_C +# define BN_MP_GROW_C #endif #if defined(BN_S_MP_TOOM_MUL_C) -# define BN_MP_INIT_MULTI_C -# define BN_MP_INIT_SIZE_C -# define BN_MP_CLAMP_C # define BN_MP_ADD_C -# define BN_MP_MUL_C -# define BN_MP_MUL_2_C -# define BN_MP_SUB_C -# define BN_MP_DIV_3_C -# define BN_MP_DIV_2_C -# define BN_MP_LSHD_C +# define BN_MP_CLAMP_C # define BN_MP_CLEAR_C # define BN_MP_CLEAR_MULTI_C +# define BN_MP_DIV_2_C +# define BN_MP_DIV_3_C +# define BN_MP_INIT_MULTI_C +# define BN_MP_INIT_SIZE_C +# define BN_MP_LSHD_C +# define BN_MP_MUL_2_C +# define BN_MP_MUL_C +# define BN_MP_SUB_C #endif #if defined(BN_S_MP_TOOM_SQR_C) +# define BN_MP_ADD_C +# define BN_MP_CLAMP_C +# define BN_MP_CLEAR_C +# define BN_MP_DIV_2_C # define BN_MP_INIT_C # define BN_MP_INIT_SIZE_C -# define BN_MP_CLAMP_C -# define BN_MP_SQR_C -# define BN_MP_ADD_C -# define BN_MP_SUB_C -# define BN_MP_MUL_C -# define BN_MP_MUL_2_C -# define BN_MP_DIV_2_C # define BN_MP_LSHD_C -# define BN_MP_CLEAR_C +# define BN_MP_MUL_2_C +# define BN_MP_MUL_C +# define BN_MP_SQR_C +# define BN_MP_SUB_C #endif #ifdef LTM_INSIDE