diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2016-11-16 15:22:26 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2016-11-16 15:22:26 (GMT) |
commit | 68111aa5bf7fc228dcfda8beb9de265734925b56 (patch) | |
tree | fed7fb157cbaef79f43a45b27379a0fd2d64e6ea /generic | |
parent | 29606e4a7b43adb9f923fb5781d3b9a93d9ba1c8 (diff) | |
parent | 2adcff3e5ba6e09366ef4208ab81768803ba15bd (diff) | |
download | tcl-68111aa5bf7fc228dcfda8beb9de265734925b56.zip tcl-68111aa5bf7fc228dcfda8beb9de265734925b56.tar.gz tcl-68111aa5bf7fc228dcfda8beb9de265734925b56.tar.bz2 |
(experimental) Upgrade to libtommath 1.0 (actually by merging all changes between libtommath 0.42.0 and 1.0). Still to be tested thourougly, before doing anything with it.
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tclStubInit.c | 1 | ||||
-rw-r--r-- | generic/tclTomMath.decls | 5 | ||||
-rw-r--r-- | generic/tclTomMathDecls.h | 7 |
3 files changed, 13 insertions, 0 deletions
diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c index 5b7a1cd..2f1bb8b 100644 --- a/generic/tclStubInit.c +++ b/generic/tclStubInit.c @@ -749,6 +749,7 @@ const TclTomMathStubs tclTomMathStubs = { TclBNInitBignumFromLong, /* 64 */ TclBNInitBignumFromWideInt, /* 65 */ TclBNInitBignumFromWideUInt, /* 66 */ + TclBN_mp_expt_d_ex, /* 67 */ }; static const TclStubHooks tclStubHooks = { diff --git a/generic/tclTomMath.decls b/generic/tclTomMath.decls index 610a031..7d095ef 100644 --- a/generic/tclTomMath.decls +++ b/generic/tclTomMath.decls @@ -233,6 +233,11 @@ declare 66 { void TclBNInitBignumFromWideUInt(mp_int *bignum, Tcl_WideUInt initVal) } +# Added in libtommath 1.0 +declare 67 { + int TclBN_mp_expt_d_ex(mp_int *a, mp_digit b, mp_int *c, int fast) +} + # Local Variables: # mode: tcl # End: diff --git a/generic/tclTomMathDecls.h b/generic/tclTomMathDecls.h index 2ce9d5a..e7b68ff 100644 --- a/generic/tclTomMathDecls.h +++ b/generic/tclTomMathDecls.h @@ -73,6 +73,7 @@ #define mp_div_d TclBN_mp_div_d #define mp_exch TclBN_mp_exch #define mp_expt_d TclBN_mp_expt_d +#define mp_expt_d_ex TclBN_mp_expt_d_ex #define mp_grow TclBN_mp_grow #define mp_init TclBN_mp_init #define mp_init_copy TclBN_mp_init_copy @@ -287,6 +288,9 @@ EXTERN void TclBNInitBignumFromWideInt(mp_int *bignum, /* 66 */ EXTERN void TclBNInitBignumFromWideUInt(mp_int *bignum, Tcl_WideUInt initVal); +/* 67 */ +EXTERN int TclBN_mp_expt_d_ex(mp_int *a, mp_digit b, mp_int *c, + int fast); typedef struct TclTomMathStubs { int magic; @@ -359,6 +363,7 @@ typedef struct TclTomMathStubs { void (*tclBNInitBignumFromLong) (mp_int *bignum, long initVal); /* 64 */ void (*tclBNInitBignumFromWideInt) (mp_int *bignum, Tcl_WideInt initVal); /* 65 */ void (*tclBNInitBignumFromWideUInt) (mp_int *bignum, Tcl_WideUInt initVal); /* 66 */ + int (*tclBN_mp_expt_d_ex) (mp_int *a, mp_digit b, mp_int *c, int fast); /* 67 */ } TclTomMathStubs; extern const TclTomMathStubs *tclTomMathStubsPtr; @@ -507,6 +512,8 @@ extern const TclTomMathStubs *tclTomMathStubsPtr; (tclTomMathStubsPtr->tclBNInitBignumFromWideInt) /* 65 */ #define TclBNInitBignumFromWideUInt \ (tclTomMathStubsPtr->tclBNInitBignumFromWideUInt) /* 66 */ +#define TclBN_mp_expt_d_ex \ + (tclTomMathStubsPtr->tclBN_mp_expt_d_ex) /* 67 */ #endif /* defined(USE_TCL_STUBS) */ |