|
struct | Dune::Simd::VcImpl::IsMask< V, SFINAE > |
| specialized to true for Vc mask types More...
|
|
struct | Dune::Simd::VcImpl::IsMask< Vc::Mask< T, A > > |
|
struct | Dune::Simd::VcImpl::IsMask< Vc::SimdMaskArray< T, n, V, m > > |
|
struct | Dune::Simd::VcImpl::IsVector< V, SFINAE > |
| specialized to true for Vc vector and mask types More...
|
|
struct | Dune::Simd::VcImpl::IsVector< Vc::Vector< T, A > > |
|
struct | Dune::Simd::VcImpl::IsVector< Vc::SimdArray< T, n, V, m > > |
|
struct | Dune::Simd::VcImpl::IsVectorizable< T > |
|
struct | Dune::Simd::VcImpl::IsVectorizable< double > |
|
struct | Dune::Simd::VcImpl::IsVectorizable< float > |
|
struct | Dune::Simd::VcImpl::IsVectorizable< std::int32_t > |
|
struct | Dune::Simd::VcImpl::IsVectorizable< std::uint32_t > |
|
struct | Dune::Simd::VcImpl::IsVectorizable< std::int16_t > |
|
struct | Dune::Simd::VcImpl::IsVectorizable< std::uint16_t > |
|
class | Dune::Simd::VcImpl::Proxy< V > |
| A reference-like proxy for elements of random-access vectors. More...
|
|
struct | Dune::Simd::Overloads::ScalarType< V, std::enable_if_t< VcImpl::IsVector< V >::value > > |
| should have a member type type More...
|
|
struct | Dune::Simd::Overloads::RebindType< Simd::Scalar< V >, V, std::enable_if_t< VcImpl::IsVector< V >::value > > |
| should have a member type type More...
|
|
struct | Dune::Simd::Overloads::RebindType< bool, V, std::enable_if_t< VcImpl::IsVector< V >::value &&!VcImpl::IsMask< V >::value > > |
| should have a member type type More...
|
|
struct | Dune::Simd::Overloads::RebindType< Scalar< typename M::Vector >, M, std::enable_if_t< VcImpl::IsMask< M >::value > > |
| should have a member type type More...
|
|
struct | Dune::Simd::Overloads::RebindType< S, M, std::enable_if_t< VcImpl::IsMask< M >::value &&VcImpl::IsVectorizable< S >::value &&!std::is_same< S, Scalar< typename M::Vector > >::value > > |
| should have a member type type More...
|
|
struct | Dune::Simd::Overloads::RebindType< S, V, std::enable_if_t< VcImpl::IsVector< V >::value &&!VcImpl::IsMask< V >::value &&VcImpl::IsVectorizable< S >::value &&!std::is_same< S, Scalar< V > >::value > > |
| should have a member type type More...
|
|
struct | Dune::Simd::Overloads::RebindType< S, V, std::enable_if_t< VcImpl::IsVector< V >::value &&!VcImpl::IsVectorizable< S >::value &&!std::is_same< S, bool >::value &&!std::is_same< S, Scalar< V > >::value > > |
| should have a member type type More...
|
|
struct | Dune::Simd::Overloads::LaneCount< V, std::enable_if_t< VcImpl::IsVector< V >::value > > |
| should be derived from an Dune::index_constant More...
|
|
struct | Dune::IsNumber< Vc::SimdArray< T, N, V, Wt > > |
|
struct | Dune::IsNumber< Vc::Vector< T, Abi > > |
|
struct | Dune::AutonomousValueType< Simd::VcImpl::Proxy< V > > |
| Specialization of AutonomousValue for Vc proxies. More...
|
|
|
|
template<class V > |
VcImpl::Proxy< V > | Dune::Simd::Overloads::lane (ADLTag< 5, VcImpl::IsVector< V >::value >, std::size_t l, V &v) |
| implements Simd::lane() More...
|
|
template<class V > |
Scalar< V > | Dune::Simd::Overloads::lane (ADLTag< 5, VcImpl::IsVector< V >::value >, std::size_t l, const V &v) |
| implements Simd::lane() More...
|
|
template<class V , class = std::enable_if_t<!std::is_reference<V>::value>> |
Scalar< V > | Dune::Simd::Overloads::lane (ADLTag< 5, VcImpl::IsVector< V >::value >, std::size_t l, V &&v) |
| implements Simd::lane() More...
|
|
template<class V > |
V | Dune::Simd::Overloads::cond (ADLTag< 5, VcImpl::IsVector< V >::value &&!VcImpl::IsMask< V >::value >, const Mask< V > &mask, const V &ifTrue, const V &ifFalse) |
| implements Simd::cond() More...
|
|
template<class V > |
V | Dune::Simd::Overloads::cond (ADLTag< 5, VcImpl::IsMask< V >::value >, const V &mask, const V &ifTrue, const V &ifFalse) |
| implements Simd::cond() More...
|
|
template<class V > |
auto | Dune::Simd::Overloads::max (ADLTag< 5, VcImpl::IsVector< V >::value &&!VcImpl::IsMask< V >::value >, const V &v1, const V &v2) |
| implements binary Simd::max() More...
|
|
template<class M > |
auto | Dune::Simd::Overloads::max (ADLTag< 5, VcImpl::IsMask< M >::value >, const M &m1, const M &m2) |
| implements binary Simd::max() More...
|
|
template<class V > |
auto | Dune::Simd::Overloads::min (ADLTag< 5, VcImpl::IsVector< V >::value &&!VcImpl::IsMask< V >::value >, const V &v1, const V &v2) |
| implements binary Simd::min() More...
|
|
template<class M > |
auto | Dune::Simd::Overloads::min (ADLTag< 5, VcImpl::IsMask< M >::value >, const M &m1, const M &m2) |
| implements binary Simd::min() More...
|
|
template<class M > |
bool | Dune::Simd::Overloads::anyTrue (ADLTag< 5, VcImpl::IsMask< M >::value >, const M &mask) |
| implements Simd::anyTrue() More...
|
|
template<class M > |
bool | Dune::Simd::Overloads::allTrue (ADLTag< 5, VcImpl::IsMask< M >::value >, const M &mask) |
| implements Simd::allTrue() More...
|
|
template<class M > |
bool | Dune::Simd::Overloads::allFalse (ADLTag< 5, VcImpl::IsMask< M >::value >, const M &mask) |
| implements Simd::allFalse() More...
|
|
template<class V > |
auto | Dune::Simd::Overloads::max (ADLTag< 5, VcImpl::IsVector< V >::value &&!VcImpl::IsMask< V >::value >, const V &v) |
| implements Simd::maxValue() More...
|
|
template<class M > |
bool | Dune::Simd::Overloads::max (ADLTag< 5, VcImpl::IsMask< M >::value >, const M &mask) |
| implements Simd::maxValue() More...
|
|
template<class V > |
auto | Dune::Simd::Overloads::min (ADLTag< 5, VcImpl::IsVector< V >::value &&!VcImpl::IsMask< V >::value >, const V &v) |
| implements Simd::minValue() More...
|
|
template<class M > |
bool | Dune::Simd::Overloads::min (ADLTag< 5, VcImpl::IsMask< M >::value >, const M &mask) |
| implements Simd::minValue() More...
|
|
template<class S1 , class V2 > |
auto | Dune::Simd::Overloads::maskAnd (ADLTag< 5, std::is_same< Mask< S1 >, bool >::value &&VcImpl::IsVector< V2 >::value >, const S1 &s1, const V2 &v2) |
| implements Simd::maskAnd() More...
|
|
template<class V1 , class S2 > |
auto | Dune::Simd::Overloads::maskAnd (ADLTag< 5, VcImpl::IsVector< V1 >::value &&std::is_same< Mask< S2 >, bool >::value >, const V1 &v1, const S2 &s2) |
| implements Simd::maskAnd() More...
|
|
template<class S1 , class V2 > |
auto | Dune::Simd::Overloads::maskOr (ADLTag< 5, std::is_same< Mask< S1 >, bool >::value &&VcImpl::IsVector< V2 >::value >, const S1 &s1, const V2 &v2) |
| implements Simd::maskOr() More...
|
|
template<class V1 , class S2 > |
auto | Dune::Simd::Overloads::maskOr (ADLTag< 5, VcImpl::IsVector< V1 >::value &&std::is_same< Mask< S2 >, bool >::value >, const V1 &v1, const S2 &s2) |
| implements Simd::maskOr() More...
|
|
SIMD abstractions for Vc.