invmod.c File Reference

floating point implementation for computing the modular inverse More...

Go to the source code of this file.

Functions

void init_fast_invmod (void)
unsigned int fast_invmod (unsigned int a, unsigned int p)

Variables

const double ieee_round = 6755399441055744.0
const double intel_round = 6755399441055744.0 * 2048.0
const double round_test = 2.7
const double round_correct = 3.0
volatile double round_constant [2]


Detailed Description

floating point implementation for computing the modular inverse

Definition in file invmod.c.


Function Documentation

unsigned int fast_invmod ( unsigned int  a,
unsigned int  p 
)

Definition at line 99 of file invmod.c.

References int, and round_constant.

Referenced by numtheory::fastinvmod_23bit(), and init_fast_invmod().

void init_fast_invmod ( void   ) 

Definition at line 58 of file invmod.c.

References exit(), fast_invmod(), ieee_round, intel_round, round_constant, round_correct, and round_test.

Here is the call graph for this function:


Variable Documentation

const double ieee_round = 6755399441055744.0

Definition at line 51 of file invmod.c.

Referenced by init_fast_invmod().

const double intel_round = 6755399441055744.0 * 2048.0

Definition at line 52 of file invmod.c.

Referenced by init_fast_invmod().

volatile double round_constant[2]

Definition at line 55 of file invmod.c.

Referenced by fast_invmod(), and init_fast_invmod().

const double round_correct = 3.0

Definition at line 54 of file invmod.c.

Referenced by init_fast_invmod().

const double round_test = 2.7

Definition at line 53 of file invmod.c.

Referenced by init_fast_invmod().


Generated on Wed Nov 7 23:30:00 2007 for Qsieve by  doxygen 1.5.4