FflasFfpack
|
#include <givaro/udl.h>
#include "fflas-ffpack/fflas/fflas_fassign.h"
#include "fflas-ffpack/utils/bit_manipulation.h"
Namespaces | |
FFLAS | |
FFLAS::vectorised | |
FFLAS::vectorised::unswitch | |
FFLAS::details | |
Macros | |
#define | __FFLASFFPACK_fflas_freduce_INL |
#define | FFLASFFPACK_COPY_REDUCE 32 /* TO BENCMARK LATER */ |
Functions | |
template<class T > | |
std::enable_if < !std::is_integral< T > ::value, T >::type | monfmod (T A, T B) |
template<class T > | |
std::enable_if < std::is_integral< T >::value, T >::type | monfmod (T A, T B) |
template<> | |
Givaro::Integer | monfmod (Givaro::Integer A, Givaro::Integer B) |
template<> | |
float | monfmod (float A, float B) |
template<> | |
double | monfmod (double A, double B) |
template<size_t K, size_t MG> | |
RecInt::rmint< K, MG > & | monfmod (RecInt::rmint< K, MG > &A, RecInt::rmint< K, MG > &B) |
template<class T > | |
std::enable_if < !std::is_integral< T > ::value, T >::type | monrint (T A) |
template<class T > | |
std::enable_if < std::is_integral< T >::value, T >::type | monrint (T A) |
template<> | |
double | monrint (double A) |
template<> | |
float | monrint (float A) |
template<> | |
Givaro::Integer | monrint (Givaro::Integer A) |
template<bool overflow, bool poweroftwo> | |
int64_t | monfmod (int64_t A, int64_t p, int8_t shifter, int64_t magic) |
template<class T > | |
void | fast_mod_generate (bool &overflow, bool &poweroftwo, int8_t &shift, T &magic, T denom) |
template<> | |
void | fast_mod_generate (bool &overflow, bool &poweroftwo, int8_t &shift, int64_t &magic, int64_t denom) |
template<class Field , int ALGO> | |
Field::Element | monfmod (typename Field::Element A, HelperMod< Field, ElementCategories::MachineIntTag > &H) |
template<class Field , int ALGO> | |
Field::Element | monfmod (typename Field::Element A, HelperMod< Field, ElementCategories::MachineFloatTag > &H) |
template<class Field , int ALGO> | |
Field::Element | monfmod (typename Field::Element A, HelperMod< Field, ElementCategories::ArbitraryPrecIntTag > &H) |
template<class Field , bool round, int algo> | |
std::enable_if < !FFLAS::support_simd_mod < typename Field::Element > ::value, void >::type | modp (const Field &F, typename Field::ConstElement_ptr U, const size_t &n, typename Field::Element_ptr T, HelperMod< Field > &H) |
template<class Field , bool round> | |
void | modp (const Field &F, typename Field::ConstElement_ptr U, const size_t &n, typename Field::Element_ptr T) |
template<class Field > | |
std::enable_if < FFLAS::support_simd_mod < typename Field::Element > ::value, void >::type | freduce (const Field &F, const size_t m, typename Field::Element_ptr A, const size_t incX, FieldCategories::ModularTag) |
template<class Field > | |
std::enable_if < !FFLAS::support_simd_mod < typename Field::Element > ::value, void >::type | freduce (const Field &F, const size_t m, typename Field::Element_ptr A, const size_t incX, FieldCategories::ModularTag) |
template<class Field > | |
void | freduce (const Field &F, const size_t m, typename Field::Element_ptr A, const size_t incX, FieldCategories::GenericTag) |
template<class Field > | |
void | freduce (const Field &F, const size_t m, typename Field::Element_ptr A, const size_t incX, FieldCategories::UnparametricTag) |
template<class Field > | |
std::enable_if < FFLAS::support_simd_mod < typename Field::Element > ::value, void >::type | freduce (const Field &F, const size_t m, typename Field::ConstElement_ptr B, const size_t incY, typename Field::Element_ptr A, const size_t incX, FieldCategories::ModularTag) |
template<class Field > | |
std::enable_if < !FFLAS::support_simd_mod < typename Field::Element > ::value, void >::type | freduce (const Field &F, const size_t m, typename Field::ConstElement_ptr B, const size_t incY, typename Field::Element_ptr A, const size_t incX, FieldCategories::ModularTag) |
template<class Field > | |
void | freduce (const Field &F, const size_t m, typename Field::ConstElement_ptr B, const size_t incY, typename Field::Element_ptr A, const size_t incX, FieldCategories::GenericTag) |
template<class Field > | |
void | freduce (const Field &F, const size_t m, typename Field::ConstElement_ptr B, const size_t incY, typename Field::Element_ptr A, const size_t incX, FieldCategories::UnparametricTag) |
#define __FFLASFFPACK_fflas_freduce_INL |
#define FFLASFFPACK_COPY_REDUCE 32 /* TO BENCMARK LATER */ |