![]() |
Shadowrun: Awakened 29 September 2011 - Build 871
|
#include <BigRTL.hpp>
Inheritance diagram for cat::BigRTL:Public Member Functions | |
| u8 CAT_FASTCALL | Add (const Leg *in_a, const Leg *in_b, Leg *out) |
| u8 CAT_FASTCALL | AddX (Leg *inout, Leg x) |
| BigRTL (int regs, int bits) | |
| void CAT_FASTCALL | Copy (const Leg *in, Leg *out) |
| void CAT_FASTCALL | CopyX (Leg in, Leg *out) |
| bool CAT_FASTCALL | Divide (const Leg *in_a, const Leg *in_b, Leg *out_q, Leg *out_r) |
| bool CAT_FASTCALL | DivideProduct (const Leg *in_a, const Leg *in_b, Leg *out_q, Leg *out_r) |
| Leg CAT_FASTCALL | DivideX (const Leg *in_a, Leg in_b, Leg *out) |
| u8 CAT_FASTCALL | Double (const Leg *in, Leg *out) |
| Leg CAT_FASTCALL | DoubleAdd (const Leg *in_a, const Leg *in_b, Leg *out) |
| int CAT_FASTCALL | EatTrailingZeroes (Leg *inout) |
| bool CAT_FASTCALL | Equal (const Leg *in_a, const Leg *in_b) |
| bool CAT_FASTCALL | EqualX (const Leg *in, Leg x) |
| Leg *CAT_FASTCALL | Get (int reg_index) |
| bool CAT_FASTCALL | Greater (const Leg *in_a, const Leg *in_b) |
| bool CAT_FASTCALL | GreaterX (const Leg *in, Leg x) |
| bool CAT_FASTCALL | IsZero (const Leg *in) |
| CAT_INLINE int | Legs () |
| int CAT_FASTCALL | LegsUsed (const Leg *in) |
| bool CAT_FASTCALL | Less (const Leg *in_a, const Leg *in_b) |
| bool CAT_FASTCALL | LessX (const Leg *in, Leg x) |
| void CAT_FASTCALL | Load (const void *in, int bytes, Leg *out) |
| bool CAT_FASTCALL | LoadFromString (const char *in, int base, Leg *out) |
| void CAT_FASTCALL | ModularInverse (const Leg *x, const Leg *modulus, Leg *inverse) |
| Leg CAT_FASTCALL | ModulusX (const Leg *in_a, Leg in_b) |
| void CAT_FASTCALL | MoveLegsRight (const Leg *in, int legs, Leg *out) |
| void CAT_FASTCALL | MulMod (const Leg *in_a, const Leg *in_b, const Leg *in_m, Leg *r) |
| Leg CAT_FASTCALL | MultiplicativeInverseX (Leg x) |
| void CAT_FASTCALL | Multiply (const Leg *in_a, const Leg *in_b, Leg *out) |
| void CAT_FASTCALL | MultiplyLow (const Leg *in_a, const Leg *in_b, Leg *out) |
| Leg CAT_FASTCALL | MultiplyX (const Leg *in_a, Leg in_b, Leg *out) |
| Leg CAT_FASTCALL | MultiplyXAdd (const Leg *in_a, Leg in_b, const Leg *in_c, Leg *out) |
| void CAT_FASTCALL | Negate (const Leg *in, Leg *out) |
| CAT_INLINE int | RegBytes () |
| void CAT_FASTCALL | Save (const Leg *in, void *out, int bytes) |
| Leg CAT_FASTCALL | ShiftLeft (const Leg *in, int shift, Leg *out) |
| void CAT_FASTCALL | Square (const Leg *in, Leg *out) |
| u8 CAT_FASTCALL | Subtract (const Leg *in_a, const Leg *in_b, Leg *out) |
| u8 CAT_FASTCALL | SubtractX (Leg *inout, Leg x) |
| ~BigRTL () | |
Static Protected Member Functions | |
| static u8 CAT_FASTCALL | Add (int legs, const Leg *in_a, const Leg *in_b, Leg *out) |
| static u8 CAT_FASTCALL | Add (int legs_a, const Leg *in_a, int legs_b, const Leg *in_b, Leg *out) |
| static void CAT_FASTCALL | DivideCore (int A_used, Leg A_overflow, Leg *A, int B_used, Leg *B, Leg *Q) |
| static Leg CAT_FASTCALL | DoubleAdd (int legs, const Leg *in_a, const Leg *in_b, Leg *out) |
| static Leg CAT_FASTCALL | MultiplyX (int legs, const Leg *in_a, Leg in_b, Leg *out) |
| static Leg CAT_FASTCALL | MultiplyXAdd (int legs, const Leg *in_a, Leg in_b, const Leg *in_c, Leg *out) |
| static Leg CAT_FASTCALL | ShiftLeft (int legs, const Leg *in, int shift, Leg *out) |
| static Leg CAT_FASTCALL | ShiftRight (int legs, const Leg *in, int shift, Leg *out) |
| static u8 CAT_FASTCALL | Subtract (int legs, const Leg *in_a, const Leg *in_b, Leg *out) |
Protected Attributes | |
| int | library_legs |
| Leg * | library_memory |
Private Attributes | |
| int | library_regs |
Static Private Attributes | |
| static const int | BIG_OVERHEAD = 7 |
Definition at line 47 of file BigRTL.hpp.
| cat::BigRTL::BigRTL | ( | int | regs, |
| int | bits | ||
| ) |
| cat::BigRTL::~BigRTL | ( | ) |
| static u8 CAT_FASTCALL cat::BigRTL::Add | ( | int | legs, |
| const Leg * | in_a, | ||
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) | [static, protected] |
| static u8 CAT_FASTCALL cat::BigRTL::Add | ( | int | legs_a, |
| const Leg * | in_a, | ||
| int | legs_b, | ||
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) | [static, protected] |
| u8 CAT_FASTCALL cat::BigRTL::Add | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) |
| u8 CAT_FASTCALL cat::BigRTL::AddX | ( | Leg * | inout, |
| Leg | x | ||
| ) |
| void CAT_FASTCALL cat::BigRTL::Copy | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| void CAT_FASTCALL cat::BigRTL::CopyX | ( | Leg | in, |
| Leg * | out | ||
| ) |
| bool CAT_FASTCALL cat::BigRTL::Divide | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out_q, | ||
| Leg * | out_r | ||
| ) |
| static void CAT_FASTCALL cat::BigRTL::DivideCore | ( | int | A_used, |
| Leg | A_overflow, | ||
| Leg * | A, | ||
| int | B_used, | ||
| Leg * | B, | ||
| Leg * | Q | ||
| ) | [static, protected] |
| bool CAT_FASTCALL cat::BigRTL::DivideProduct | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out_q, | ||
| Leg * | out_r | ||
| ) |
| Leg CAT_FASTCALL cat::BigRTL::DivideX | ( | const Leg * | in_a, |
| Leg | in_b, | ||
| Leg * | out | ||
| ) |
| u8 CAT_FASTCALL cat::BigRTL::Double | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| static Leg CAT_FASTCALL cat::BigRTL::DoubleAdd | ( | int | legs, |
| const Leg * | in_a, | ||
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) | [static, protected] |
| Leg CAT_FASTCALL cat::BigRTL::DoubleAdd | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) |
| int CAT_FASTCALL cat::BigRTL::EatTrailingZeroes | ( | Leg * | inout | ) |
| bool CAT_FASTCALL cat::BigRTL::Equal | ( | const Leg * | in_a, |
| const Leg * | in_b | ||
| ) |
| bool CAT_FASTCALL cat::BigRTL::EqualX | ( | const Leg * | in, |
| Leg | x | ||
| ) |
| Leg* CAT_FASTCALL cat::BigRTL::Get | ( | int | reg_index | ) |
| bool CAT_FASTCALL cat::BigRTL::Greater | ( | const Leg * | in_a, |
| const Leg * | in_b | ||
| ) |
| bool CAT_FASTCALL cat::BigRTL::GreaterX | ( | const Leg * | in, |
| Leg | x | ||
| ) |
| bool CAT_FASTCALL cat::BigRTL::IsZero | ( | const Leg * | in | ) |
| CAT_INLINE int cat::BigRTL::Legs | ( | ) | [inline] |
Definition at line 79 of file BigRTL.hpp.
References library_legs.
Referenced by cat::BigTwistedEdwards::PtLegs().
{ return library_legs; }
| int CAT_FASTCALL cat::BigRTL::LegsUsed | ( | const Leg * | in | ) |
| bool CAT_FASTCALL cat::BigRTL::Less | ( | const Leg * | in_a, |
| const Leg * | in_b | ||
| ) |
| bool CAT_FASTCALL cat::BigRTL::LessX | ( | const Leg * | in, |
| Leg | x | ||
| ) |
| void CAT_FASTCALL cat::BigRTL::Load | ( | const void * | in, |
| int | bytes, | ||
| Leg * | out | ||
| ) |
| bool CAT_FASTCALL cat::BigRTL::LoadFromString | ( | const char * | in, |
| int | base, | ||
| Leg * | out | ||
| ) |
| void CAT_FASTCALL cat::BigRTL::ModularInverse | ( | const Leg * | x, |
| const Leg * | modulus, | ||
| Leg * | inverse | ||
| ) |
| Leg CAT_FASTCALL cat::BigRTL::ModulusX | ( | const Leg * | in_a, |
| Leg | in_b | ||
| ) |
| void CAT_FASTCALL cat::BigRTL::MoveLegsRight | ( | const Leg * | in, |
| int | legs, | ||
| Leg * | out | ||
| ) |
| void CAT_FASTCALL cat::BigRTL::MulMod | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| const Leg * | in_m, | ||
| Leg * | r | ||
| ) |
| Leg CAT_FASTCALL cat::BigRTL::MultiplicativeInverseX | ( | Leg | x | ) |
| void CAT_FASTCALL cat::BigRTL::Multiply | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) |
| void CAT_FASTCALL cat::BigRTL::MultiplyLow | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) |
| Leg CAT_FASTCALL cat::BigRTL::MultiplyX | ( | const Leg * | in_a, |
| Leg | in_b, | ||
| Leg * | out | ||
| ) |
| static Leg CAT_FASTCALL cat::BigRTL::MultiplyX | ( | int | legs, |
| const Leg * | in_a, | ||
| Leg | in_b, | ||
| Leg * | out | ||
| ) | [static, protected] |
| static Leg CAT_FASTCALL cat::BigRTL::MultiplyXAdd | ( | int | legs, |
| const Leg * | in_a, | ||
| Leg | in_b, | ||
| const Leg * | in_c, | ||
| Leg * | out | ||
| ) | [static, protected] |
| Leg CAT_FASTCALL cat::BigRTL::MultiplyXAdd | ( | const Leg * | in_a, |
| Leg | in_b, | ||
| const Leg * | in_c, | ||
| Leg * | out | ||
| ) |
| void CAT_FASTCALL cat::BigRTL::Negate | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| CAT_INLINE int cat::BigRTL::RegBytes | ( | ) | [inline] |
Definition at line 80 of file BigRTL.hpp.
References library_legs.
{ return library_legs * sizeof(Leg); }
| void CAT_FASTCALL cat::BigRTL::Save | ( | const Leg * | in, |
| void * | out, | ||
| int | bytes | ||
| ) |
| Leg CAT_FASTCALL cat::BigRTL::ShiftLeft | ( | const Leg * | in, |
| int | shift, | ||
| Leg * | out | ||
| ) |
| static Leg CAT_FASTCALL cat::BigRTL::ShiftLeft | ( | int | legs, |
| const Leg * | in, | ||
| int | shift, | ||
| Leg * | out | ||
| ) | [static, protected] |
| static Leg CAT_FASTCALL cat::BigRTL::ShiftRight | ( | int | legs, |
| const Leg * | in, | ||
| int | shift, | ||
| Leg * | out | ||
| ) | [static, protected] |
| void CAT_FASTCALL cat::BigRTL::Square | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| static u8 CAT_FASTCALL cat::BigRTL::Subtract | ( | int | legs, |
| const Leg * | in_a, | ||
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) | [static, protected] |
| u8 CAT_FASTCALL cat::BigRTL::Subtract | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) |
| u8 CAT_FASTCALL cat::BigRTL::SubtractX | ( | Leg * | inout, |
| Leg | x | ||
| ) |
const int cat::BigRTL::BIG_OVERHEAD = 7 [static, private] |
Definition at line 49 of file BigRTL.hpp.
int cat::BigRTL::library_legs [protected] |
Definition at line 53 of file BigRTL.hpp.
Referenced by Legs(), and RegBytes().
Leg* cat::BigRTL::library_memory [protected] |
Definition at line 54 of file BigRTL.hpp.
int cat::BigRTL::library_regs [private] |
Definition at line 50 of file BigRTL.hpp.
Copyright © 2007-2010 by The Shadowrun: Awakened Team. This work is licensed under the GNU Lesser General Public License 3.