#include <BigPseudoMersenne.hpp>
List of all members.
Public Member Functions |
| | BigPseudoMersenne (int regs, int bits, int C) |
| void CAT_FASTCALL | CopyModulus (Leg *out) |
| const Leg * | GetModulus () |
| void CAT_FASTCALL | MrAdd (const Leg *in_a, const Leg *in_b, Leg *out) |
| void CAT_FASTCALL | MrAddX (Leg *inout, Leg x) |
| void CAT_FASTCALL | MrDouble (const Leg *in, Leg *out) |
| void CAT_FASTCALL | MrInvert (const Leg *in, Leg *out) |
| void CAT_FASTCALL | MrMultiply (const Leg *in_a, const Leg *in_b, Leg *out) |
| void CAT_FASTCALL | MrMultiplyX (const Leg *in_a, Leg in_b, Leg *out) |
| void CAT_FASTCALL | MrNegate (const Leg *in, Leg *out) |
| void CAT_FASTCALL | MrReduce (Leg *inout) |
| void CAT_FASTCALL | MrSquare (const Leg *in, Leg *out) |
| void CAT_FASTCALL | MrSquareRoot (const Leg *in, Leg *out) |
| void CAT_FASTCALL | MrSubtract (const Leg *in_a, const Leg *in_b, Leg *out) |
| void CAT_FASTCALL | MrSubtractX (Leg *inout, Leg x) |
Protected Member Functions |
| void CAT_FASTCALL | MrReduceProduct (const Leg *in_hi, const Leg *in_lo, Leg *out) |
| void CAT_FASTCALL | MrReduceProductX (Leg overflow, Leg *inout) |
Protected Attributes |
| Leg * | CachedModulus |
| Leg | modulus_c |
Private Attributes |
| int | pm_regs |
Static Private Attributes |
| static const int | PM_OVERHEAD = 6 |
Detailed Description
Definition at line 47 of file BigPseudoMersenne.hpp.
Constructor & Destructor Documentation
| cat::BigPseudoMersenne::BigPseudoMersenne |
( |
int |
regs, |
|
|
int |
bits, |
|
|
int |
C |
|
) |
| |
Member Function Documentation
| void CAT_FASTCALL cat::BigPseudoMersenne::CopyModulus |
( |
Leg * |
out | ) |
|
| const Leg* cat::BigPseudoMersenne::GetModulus |
( |
| ) |
[inline] |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrAdd |
( |
const Leg * |
in_a, |
|
|
const Leg * |
in_b, |
|
|
Leg * |
out |
|
) |
| |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrAddX |
( |
Leg * |
inout, |
|
|
Leg |
x |
|
) |
| |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrDouble |
( |
const Leg * |
in, |
|
|
Leg * |
out |
|
) |
| |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrInvert |
( |
const Leg * |
in, |
|
|
Leg * |
out |
|
) |
| |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrMultiply |
( |
const Leg * |
in_a, |
|
|
const Leg * |
in_b, |
|
|
Leg * |
out |
|
) |
| |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrMultiplyX |
( |
const Leg * |
in_a, |
|
|
Leg |
in_b, |
|
|
Leg * |
out |
|
) |
| |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrNegate |
( |
const Leg * |
in, |
|
|
Leg * |
out |
|
) |
| |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrReduce |
( |
Leg * |
inout | ) |
|
| void CAT_FASTCALL cat::BigPseudoMersenne::MrReduceProduct |
( |
const Leg * |
in_hi, |
|
|
const Leg * |
in_lo, |
|
|
Leg * |
out |
|
) |
| [protected] |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrReduceProductX |
( |
Leg |
overflow, |
|
|
Leg * |
inout |
|
) |
| [protected] |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrSquare |
( |
const Leg * |
in, |
|
|
Leg * |
out |
|
) |
| |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrSquareRoot |
( |
const Leg * |
in, |
|
|
Leg * |
out |
|
) |
| |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrSubtract |
( |
const Leg * |
in_a, |
|
|
const Leg * |
in_b, |
|
|
Leg * |
out |
|
) |
| |
| void CAT_FASTCALL cat::BigPseudoMersenne::MrSubtractX |
( |
Leg * |
inout, |
|
|
Leg |
x |
|
) |
| |
Member Data Documentation
The documentation for this class was generated from the following file: