summaryrefslogtreecommitdiffstats
path: root/generic/tclTomMathInterface.c
diff options
context:
space:
mode:
Diffstat (limited to 'generic/tclTomMathInterface.c')
-rw-r--r--generic/tclTomMathInterface.c21
1 files changed, 11 insertions, 10 deletions
diff --git a/generic/tclTomMathInterface.c b/generic/tclTomMathInterface.c
index ae1eb7e..589599e 100644
--- a/generic/tclTomMathInterface.c
+++ b/generic/tclTomMathInterface.c
@@ -93,7 +93,7 @@ TclBN_revision(void)
/*
*----------------------------------------------------------------------
*
- * TclInitBignumFromWideInt --
+ * TclBNInitBignumFromWideInt --
*
* Allocate and initialize a 'bignum' from a Tcl_WideInt
*
@@ -107,25 +107,26 @@ TclBN_revision(void)
*/
void
-TclInitBignumFromWideInt(
+TclBNInitBignumFromWideInt(
mp_int *a, /* Bignum to initialize */
Tcl_WideInt v) /* Initial value */
{
if (mp_init(a) != MP_OKAY) {
- Tcl_Panic("initialization failure in TclInitBignumFromWideInt");
+ wipanic:
+ Tcl_Panic("initialization failure in TclBNInitBignumFromWideInt");
}
if (v < 0) {
- mp_set_long_long(a, (Tcl_WideUInt)(-v));
- mp_neg(a, a);
+ mp_set_ull(a, (Tcl_WideUInt)(-v));
+ if (mp_neg(a, a) != MP_OKAY) goto wipanic;
} else {
- mp_set_long_long(a, (Tcl_WideUInt)v);
+ mp_set_ull(a, (Tcl_WideUInt)v);
}
}
/*
*----------------------------------------------------------------------
*
- * TclInitBignumFromWideUInt --
+ * TclBNInitBignumFromWideUInt --
*
* Allocate and initialize a 'bignum' from a Tcl_WideUInt
*
@@ -139,14 +140,14 @@ TclInitBignumFromWideInt(
*/
void
-TclInitBignumFromWideUInt(
+TclBNInitBignumFromWideUInt(
mp_int *a, /* Bignum to initialize */
Tcl_WideUInt v) /* Initial value */
{
if (mp_init(a) != MP_OKAY) {
- Tcl_Panic("initialization failure in TclInitBignumFromWideUInt");
+ Tcl_Panic("initialization failure in TclBNInitBignumFromWideUInt");
}
- mp_set_long_long(a, v);
+ mp_set_ull(a, v);
}
/*