1 /* $NetBSD: bncore.c,v 1.1.1.2 2014/04/24 12:45:31 pettai Exp $ */ 2 3 #include <tommath.h> 4 #ifdef BNCORE_C 5 /* LibTomMath, multiple-precision integer library -- Tom St Denis 6 * 7 * LibTomMath is a library that provides multiple-precision 8 * integer arithmetic as well as number theoretic functionality. 9 * 10 * The library was designed directly after the MPI library by 11 * Michael Fromberger but has been written from scratch with 12 * additional optimizations in place. 13 * 14 * The library is free for all purposes without any express 15 * guarantee it works. 16 * 17 * Tom St Denis, tomstdenis@gmail.com, http://libtom.org 18 */ 19 20 /* Known optimal configurations 21 22 CPU /Compiler /MUL CUTOFF/SQR CUTOFF 23 ------------------------------------------------------------- 24 Intel P4 Northwood /GCC v3.4.1 / 88/ 128/LTM 0.32 ;-) 25 AMD Athlon64 /GCC v3.4.4 / 80/ 120/LTM 0.35 26 27 */ 28 29 int KARATSUBA_MUL_CUTOFF = 80, /* Min. number of digits before Karatsuba multiplication is used. */ 30 KARATSUBA_SQR_CUTOFF = 120, /* Min. number of digits before Karatsuba squaring is used. */ 31 32 TOOM_MUL_CUTOFF = 350, /* no optimal values of these are known yet so set em high */ 33 TOOM_SQR_CUTOFF = 400; 34 #endif 35 36 /* Source: /cvs/libtom/libtommath/bncore.c,v */ 37 /* Revision: 1.5 */ 38 /* Date: 2006/12/28 01:25:13 */ 39