|
dune-common 2.12-git
|
Loading...
Searching...
No Matches
stdsimd.hh
Go to the documentation of this file.
1// SPDX-FileCopyrightInfo: Copyright © DUNE Project contributors, see file LICENSE.md in module root
A proxy for lanes of SIMD types with operator[]
Basic definitions for SIMD Implementations.
Default implementations for SIMD Implementations.
Traits for type conversions and type information.
auto mask(const V &v)
Convert to mask, analogue of bool(s) for scalars.
Definition simd/interface.hh:502
Rebind< bool, V > Mask
Mask type type of some SIMD type.
Definition simd/interface.hh:289
typename Overloads::ScalarType< std::decay_t< V > >::type Scalar
Element type of some SIMD type.
Definition simd/interface.hh:235
Mask< V > mask(ADLTag< 0, std::is_same< V, Mask< V > >::value >, const V &v)
implements Simd::mask()
Definition defaults.hh:153
bool allFalse(ADLTag< 0 >, const Mask &mask)
implements Simd::allFalse()
Definition defaults.hh:124
bool allTrue(ADLTag< 0 >, const Mask &mask)
implements Simd::allTrue()
Definition defaults.hh:104
auto maskAnd(ADLTag< 0 >, const V1 &v1, const V2 &v2)
implements Simd::maskAnd()
Definition defaults.hh:177
auto maskOr(ADLTag< 0 >, const V1 &v1, const V2 &v2)
implements Simd::maskOr()
Definition defaults.hh:170
auto min(ADLTag< 0 >, const V &v1, const V &v2)
implements binary Simd::min()
Definition defaults.hh:89
auto max(ADLTag< 0 >, const V &v1, const V &v2)
implements binary Simd::max()
Definition defaults.hh:81
STL namespace.
bool anyTrue(ADLTag< 5 >, const AlignedNumber< bool, align > &mask)
Definition debugalign.hh:556
const AlignedNumber< T, align > & cond(ADLTag< 5 >, AlignedNumber< bool, align > mask, const AlignedNumber< T, align > &ifTrue, const AlignedNumber< T, align > &ifFalse)
Definition debugalign.hh:548
T & lane(ADLTag< 5 >, std::size_t l, AlignedNumber< T, align > &v)
Definition debugalign.hh:533
Impl::ValueProxy< V, ProxyOperations > Proxy
A reference-like proxy for lanes of std::experimental::simd types.
Definition stdsimd.hh:182
Whether this type acts as a scalar in the context of (hierarchically blocked) containers.
Definition typetraits.hh:194
Tag used to force late-binding lookup in Dune::Simd::Overloads.
Definition base.hh:182
should be derived from a Dune::index_constant
Definition standard.hh:74
Definition loop.hh:65
true for std::experimental::simd and simd_mask types
Definition stdsimd.hh:91
true for the element types of std::experimental::simd
Definition stdsimd.hh:97
the vector type of a vector or mask type
Definition stdsimd.hh:101
typename M::simd_type type
Definition stdsimd.hh:106
Operations of lane proxies with std::experimental::simd types.
Definition stdsimd.hh:124
DUNE_SIMD_STDSIMD_BINARY(!=)
DUNE_SIMD_STDSIMD_BINARY(==)
DUNE_SIMD_STDSIMD_BINARY(+)
DUNE_SIMD_STDSIMD_BINARY & DUNE_SIMD_STDSIMD_BINARY(^);DUNE_SIMD_STDSIMD_BINARY(|
DUNE_SIMD_STDSIMD_ASSIGN * DUNE_SIMD_STDSIMD_ASSIGN(/=);DUNE_SIMD_STDSIMD_ASSIGN(%=
DUNE_SIMD_STDSIMD_ASSIGN(+=)
DUNE_SIMD_STDSIMD_BINARY(<<)
DUNE_SIMD_STDSIMD_BINARY(<)
DUNE_SIMD_STDSIMD_BINARY(<=)
DUNE_SIMD_STDSIMD_ASSIGN(-=)
DUNE_SIMD_STDSIMD_ASSIGN & DUNE_SIMD_STDSIMD_ASSIGN(^=);DUNE_SIMD_STDSIMD_ASSIGN(|=
DUNE_SIMD_STDSIMD_BINARY(>)
DUNE_SIMD_STDSIMD_BINARY(-)
DUNE_SIMD_STDSIMD_BINARY(> >)
DUNE_SIMD_STDSIMD_ASSIGN(<<=)
DUNE_SIMD_STDSIMD_BINARY * DUNE_SIMD_STDSIMD_BINARY(/);DUNE_SIMD_STDSIMD_BINARY(%
DUNE_SIMD_STDSIMD_ASSIGN(> >=)
DUNE_SIMD_STDSIMD_BINARY(>=)
typename V::value_type type
Definition stdsimd.hh:201
V type
Definition stdsimd.hh:216
typename V::mask_type type
Definition stdsimd.hh:231
typename M::simd_type type
Definition stdsimd.hh:245
std::experimental::rebind_simd_t< S, typename StdSimdImpl::VectorType< V >::type > type
Definition stdsimd.hh:269
T as_const(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8