|
dune-common 2.12-git
|
Loading...
Searching...
No Matches
vc.hh File Reference
SIMD abstractions for Vc. More...
#include <cstddef>#include <type_traits>#include <utility>#include <dune/common/indices.hh>#include <dune/common/simd/base.hh>#include <dune/common/simd/defaults.hh>#include <dune/common/simd/loop.hh>#include <dune/common/typetraits.hh>#include <dune/common/vc.hh>Go to the source code of this file.
Namespaces | |
| namespace | Dune |
| Dune namespace | |
| namespace | Dune::Simd |
| Namespace for vectorization interface functions used by library developers. | |
| namespace | Dune::Simd::VcImpl |
| namespace | Dune::Simd::Overloads |
| Namespace for the overloads and specializations that make up a SIMD implementation. | |
Macros | |
| #define | DUNE_SIMD_VC_ASSIGNMENT(OP) |
| #define | DUNE_SIMD_VC_BINARY(OP) |
| #define | DUNE_SIMD_VC_ASSIGN(OP) |
Detailed Description
SIMD abstractions for Vc.
Macro Definition Documentation
◆ DUNE_SIMD_VC_ASSIGN
| #define DUNE_SIMD_VC_ASSIGN | ( | OP | ) |
Value:
template<class T, class Abi> \
friend auto operator OP(Vc::Vector<T, Abi> &l, Proxy&& r) \
-> decltype(l OP std::declval<value_type>()) \
{ \
return l OP value_type(r); \
}
◆ DUNE_SIMD_VC_ASSIGNMENT
| #define DUNE_SIMD_VC_ASSIGNMENT | ( | OP | ) |
◆ DUNE_SIMD_VC_BINARY
| #define DUNE_SIMD_VC_BINARY | ( | OP | ) |
Value:
template<class T, class Abi> \
friend auto operator OP(const Vc::Vector<T, Abi> &l, Proxy&& r) \
-> decltype(l OP std::declval<value_type>()) \
{ \
return l OP value_type(r); \
} \
template<class T, class Abi> \
auto operator OP(const Vc::Vector<T, Abi> &r) && \
-> decltype(std::declval<value_type>() OP r) \
{ \
return value_type(*this) OP r; \
} \
friend auto \
operator OP(const Vc::SimdArray<T, n, Vec, m> &l, Proxy&& r) \
-> decltype(l OP std::declval<value_type>()) \
{ \
return l OP value_type(r); \
} \
template<class T, std::size_t n, class Vec, std::size_t m> \
auto operator OP(const Vc::SimdArray<T, n, Vec, m> &r) && \
-> decltype(std::declval<value_type>() OP r) \
{ \
return value_type(*this) OP r; \
}
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8