FflasFfpack
Data Structures | Namespaces | Macros | Functions
fflas_freduce.inl File Reference
#include <givaro/udl.h>
#include "fflas-ffpack/fflas/fflas_fassign.h"

Data Structures

struct  HelperMod< Field, ElementCategories::MachineIntTag >
 
struct  HelperMod< Field, FFLAS::ElementCategories::MachineFloatTag >
 
struct  HelperMod< Field, FFLAS::ElementCategories::ArbitraryPrecIntTag >
 
struct  HelperMod< Field, FFLAS::ElementCategories::FixedPrecIntTag >
 

Namespaces

namespace  FFLAS
 
namespace  FFLAS::vectorised
 
namespace  FFLAS::vectorised::unswitch
 
namespace  FFLAS::details
 

Macros

#define __FFLASFFPACK_fflas_freduce_INL
 
#define FFLASFFPACK_COPY_REDUCE   32 /* TODO TO BENCMARK LATER */
 

Functions

template<class T >
std::enable_if<!std::is_integral< T >::value, T >::type reduce (T A, T B)
 
template<class T >
std::enable_if< std::is_integral< T >::value, T >::type reduce (T A, T B)
 
template<>
Givaro::Integer reduce (Givaro::Integer A, Givaro::Integer B)
 
float reduce (float A, float B, float invB, float min, float max)
 
double reduce (double A, double B, double invB, double min, double max)
 
int64_t reduce (int64_t A, int64_t p, double invp, double min, double max, int64_t pow50rem)
 
template<class Field >
Field::Element reduce (typename Field::Element A, HelperMod< Field, ElementCategories::MachineIntTag > &H)
 
template<class Field >
Field::Element reduce (typename Field::Element A, HelperMod< Field, ElementCategories::MachineFloatTag > &H)
 
template<class Field >
Field::Element reduce (typename Field::Element A, HelperMod< Field, ElementCategories::ArbitraryPrecIntTag > &H)
 
template<class Field >
std::enable_if<!FFLAS::support_simd_mod< typenameField::Element >::value &&FFLAS::support_fast_mod< typenameField::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 >
std::enable_if< FFLAS::support_fast_mod< typenameField::Element >::value, void >::type modp (const Field &F, typename Field::ConstElement_ptr U, const size_t &n, const size_t &incX, typename Field::Element_ptr T, HelperMod< Field > &H)
 
template<class Field >
std::enable_if< FFLAS::support_fast_mod< typenameField::Element >::value, void >::type 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_fast_mod< typenameField::Element >::value, void >::type modp (const Field &F, typename Field::ConstElement_ptr U, const size_t &n, const size_t &incX, typename Field::Element_ptr T)
 
template<class Field >
std::enable_if< FFLAS::support_fast_mod< typenameField::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_fast_mod< typenameField::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 , class FC >
void freduce (const Field &F, const size_t m, typename Field::Element_ptr A, const size_t incX, FC)
 
template<class Field , class FC >
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, FC)
 

Macro Definition Documentation

◆ __FFLASFFPACK_fflas_freduce_INL

#define __FFLASFFPACK_fflas_freduce_INL

◆ FFLASFFPACK_COPY_REDUCE

#define FFLASFFPACK_COPY_REDUCE   32 /* TODO TO BENCMARK LATER */