|
FflasFfpack
|
#include "givaro/givinteger.h"#include "givaro/givprint.h"#include "fflas-ffpack/fflas-ffpack-config.h"#include "fflas-ffpack/fflas/fflas_simd.h"#include "fflas-ffpack/utils/args-parser.h"#include "fflas-ffpack/utils/test-utils.h"#include "fflas-ffpack/utils/align-allocator.h"#include <array>#include <vector>#include <random>#include <string>#include <functional>#include <limits>#include <type_traits>#include <algorithm>Macros | |
| #define | REGISTER_TYPE_NAME(type) template<> const char *TypeName<type>(){return #type;} |
| #define | TEST_ONE_OP(name) btest &= test_op<simd> (simd::name, Scal::name, #name); |
Typedefs | |
| typedef Givaro::Integer | integer |
Functions | |
| template<typename... > | |
| const char * | TypeName () |
| REGISTER_TYPE_NAME (float) | |
| REGISTER_TYPE_NAME (double) | |
| REGISTER_TYPE_NAME (int16_t) | |
| REGISTER_TYPE_NAME (int32_t) | |
| REGISTER_TYPE_NAME (int64_t) | |
| REGISTER_TYPE_NAME (uint16_t) | |
| REGISTER_TYPE_NAME (uint32_t) | |
| REGISTER_TYPE_NAME (uint64_t) | |
| template<class Element , class Alloc > | |
| enable_if< is_integral< Element >::value >::type | generate_random_vector (vector< Element, Alloc > &a) |
| template<class Element , class Alloc > | |
| enable_if< is_floating_point< Element >::value >::type | generate_random_vector (vector< Element, Alloc > &a) |
| template<class Element > | |
| enable_if< is_integral< Element >::value, bool >::type | check_eq (Element x, Element y) |
| template<class Element > | |
| enable_if< is_floating_point< Element >::value, bool >::type | check_eq (Element x, Element y) |
| template<class Ret , class T > | |
| Ret | eval_func_on_array (function< Ret()> f, array< T, 0 > arr) |
| template<class Ret , class T , class... TArgs> | |
| Ret | eval_func_on_array (function< Ret(T, TArgs...)> f, array< typename remove_reference< T >::type, sizeof...(TArgs)+1 > &arr) |
| template<class Simd , class RScal , class... AScal, class RSimd , class... ASimd> | |
| enable_if< sizeof...(AScal)==sizeof...(ASimd), bool >::type | test_op (RSimd(&FSimd)(ASimd...), RScal(&FScal)(AScal...), string fname) |
| template<class simd , class Element > | |
| enable_if< is_floating_point< Element >::value, bool >::type | test_impl () |
| template<class simd , class Element > | |
| enable_if< is_integral< Element >::value, bool >::type | test_impl () |
| template<class Element > | |
| enable_if< is_integral< Element >::value, bool >::type | test () |
| template<class Element > | |
| enable_if< is_floating_point< Element >::value, bool >::type | test () |
| int | main (int argc, char *argv[]) |
| #define REGISTER_TYPE_NAME | ( | type | ) | template<> const char *TypeName<type>(){return #type;} |
| #define TEST_ONE_OP | ( | name | ) | btest &= test_op<simd> (simd::name, Scal::name, #name); |
| typedef Givaro::Integer integer |
| const char* TypeName | ( | ) |
| REGISTER_TYPE_NAME | ( | float | ) |
| REGISTER_TYPE_NAME | ( | double | ) |
| REGISTER_TYPE_NAME | ( | int16_t | ) |
| REGISTER_TYPE_NAME | ( | int32_t | ) |
| REGISTER_TYPE_NAME | ( | int64_t | ) |
| REGISTER_TYPE_NAME | ( | uint16_t | ) |
| REGISTER_TYPE_NAME | ( | uint32_t | ) |
| REGISTER_TYPE_NAME | ( | uint64_t | ) |
| enable_if<is_integral<Element>::value>::type generate_random_vector | ( | vector< Element, Alloc > & | a | ) |
| enable_if<is_floating_point<Element>::value>::type generate_random_vector | ( | vector< Element, Alloc > & | a | ) |
| enable_if<is_integral<Element>::value, bool>::type check_eq | ( | Element | x, |
| Element | y | ||
| ) |
| enable_if<is_floating_point<Element>::value, bool>::type check_eq | ( | Element | x, |
| Element | y | ||
| ) |
| Ret eval_func_on_array | ( | function< Ret()> | f, |
| array< T, 0 > | arr | ||
| ) |
| Ret eval_func_on_array | ( | function< Ret(T, TArgs...)> | f, |
| array< typename remove_reference< T >::type, sizeof...(TArgs)+1 > & | arr | ||
| ) |
| enable_if<sizeof...(AScal) == sizeof...(ASimd), bool>::type test_op | ( | RSimd(&)(ASimd...) | FSimd, |
| RScal(&)(AScal...) | FScal, | ||
| string | fname | ||
| ) |
| enable_if<is_floating_point<Element>::value, bool>::type test_impl | ( | ) |
| enable_if<is_integral<Element>::value, bool>::type test_impl | ( | ) |
| enable_if<is_integral<Element>::value, bool>::type test | ( | ) |
| enable_if<is_floating_point<Element>::value, bool>::type test | ( | ) |
| int main | ( | int | argc, |
| char * | argv[] | ||
| ) |
1.8.13