Name Description Size
doc 19
hpma512.s 26033
hppa20.s 28203
logtab.h 0 1 2 3 1574
montmulf.c 1/(2^16) 8190
montmulf.h The functions that are to be called from outside of the .s file have the following interfaces and array size requirements: 3097 2226
montmulf.s 78139 2226
montmulfv8.s 60099 1845
montmulfv9.s 79580
mp_comba_amd64_masm.asm 332877
mp_comba_amd64_sun.s 312089
mp_comba.c TomsFastMath, a fast ISO C bignum library. This project is meant to fill in where LibTomMath falls short. That is speed ;-) This project is public domain and free for all purposes. Tom St Denis, 79362
mp_gf2m-priv.h enable fast divide and mod operations on MP_DIGIT_BITS 3527
mp_gf2m.c Multiply two binary polynomials mp_digits a, b. Result is a polynomial with degree < 2 * MP_DIGIT_BITS - 1. Output in two mp_digits rh, rl. 16405
mp_gf2m.h For modular arithmetic, the irreducible polynomial f(t) is represented as an array of int[], where f(t) is of the form: f(t) = t^p[0] + t^p[1] + ... + t^p[k] where m = p[0] > p[1] > ... > p[k] = 0. 1120
mpcpucache_amd64.s 10622
mpcpucache_x86.s 11189
mpcpucache.c This file implements a single function: s_mpi_getProcessorLineSize(); s_mpi_getProcessorLineSize() returns the size in bytes of the cache line if a cache exists, or zero if there is no cache. If more than one cache line exists, it should return the smallest line size (which is usually the L1 cache). mp_modexp uses this information to make sure that private key information isn't being leaked through the cache. Currently the file returns good data for most modern x86 processors, and reasonable data on 64-bit ppc processors. All other processors are assumed to have a cache line size of 32 bytes. 23757
mpi_amd64_common.S 9208
mpi_amd64_masm.asm 7781
mpi_amd64_sun.s 8796
mpi_amd64.c MPI glue 725
mpi_arm.c This inlined version is for 32-bit ARM platform only 3926
mpi_hp.c This file contains routines that perform vector multiplication. 2462
mpi_i86pc.s 7029
mpi_mips.s 8834
mpi_sparc.c Multiplication performance enhancements for sparc v8+vis CPUs. 5733
mpi_sse2.s 7991
mpi_x86_asm.c ebp - 36: caller's esi ebp - 32: caller's edi ebp - 28: ebp - 24: ebp - 20: ebp - 16: ebp - 12: ebp - 8: ebp - 4: ebp + 0: caller's ebp ebp + 4: return address ebp + 8: a argument ebp + 12: a_len argument ebp + 16: b argument ebp + 20: c argument registers: eax: ebx: carry ecx: a_len edx: esi: a ptr edi: c ptr 12811
mpi_x86_os2.s 12624
mpi_x86.s 12676
mpi-config.h For boolean options, 0 = no 1 = yes Other options are documented individually. 1287
mpi-priv.h If we aren't using a wired-in logarithm table, we need to include the math library to get the log() function 9031
mpi.c 16-bit thumb or ARM v3 doesn't work inlined assember version 114931
mpi.h no error, all is well 10182
mplogic.c {{{ Lookup table for population count 10118
mplogic.h The logical operations treat an mp_int as if it were a bit vector, without regard to its sign (an mp_int is represented in a signed magnitude format). Values are treated as if they had an infinite string of zeros left of the most-significant bit. 1815
mpmontg.c This file implements moduluar exponentiation using Montgomery's method for modular reduction. This file implements the method described as "Improvement 2" in the paper "A Cryptogrpahic Library for the Motorola DSP56000" by Stephen R. Dusse' and Burton S. Kaliski Jr. published in "Advances in Cryptology: Proceedings of EUROCRYPT '90" "Lecture Notes in Computer Science" volume 473, 1991, pg 230-244, published by Springer Verlag. 34938
mpprime.c determines size of hard-wired prime table 15052
mpprime.h number of primes available 1644
mpv_sparc.c / typedef int t_s32; typedef unsigned int t_u32; #if defined(__sparcv9) typedef long t_s64; typedef unsigned long t_u64; #else typedef long long t_s64; typedef unsigned long long t_u64; #endif typedef double t_d64; /************************************************************** 5482
mpv_sparcv8.s 64933
mpv_sparcv9.s 67722
mpvalpha.c This is empty for the loop in s_mpv_mul_d 5462
mulsqr.c make sure squaring code is included 2103
primes.c 56353
README This Source Code Form is subject to the terms of the Mozilla Public 28010 26216 19882
vis_proto.h Prototypes for the inline templates in 9353