|
dune-common
2.11
|
#include <algorithm>#include <cassert>#include <cmath>#include <complex>#include <cstddef>#include <cstdint>#include <cstdlib>#include <functional>#include <istream>#include <ostream>#include <type_traits>#include <utility>#include <dune/common/classname.hh>#include <dune/common/indices.hh>#include <dune/common/simd/base.hh>#include <dune/common/simd/defaults.hh>#include <dune/common/typetraits.hh>Go to the source code of this file.
Classes | |
| struct | Dune::AlignedBase< align, Impl > |
| CRTP base mixin class to check alignment. More... | |
| struct | Dune::Simd::Overloads::ScalarType< AlignedNumber< T, align > > |
| struct | Dune::Simd::Overloads::RebindType< U, AlignedNumber< T, align > > |
| struct | Dune::Simd::Overloads::LaneCount< AlignedNumber< T, align > > |
Namespaces | |
| Dune | |
| Dune namespace | |
| Dune::Simd | |
| Namespace for vectorization interface functions used by library developers. | |
| Dune::Simd::Overloads | |
| Namespace for the overloads and specializations that make up a SIMD implementation. | |
Macros | |
| #define | DUNE_ASSIGN_OP(OP) |
| #define | DUNE_BINARY_OP(OP) |
| #define | DUNE_UNARY_FUNC(name) |
Typedefs | |
| using | Dune::ViolatedAlignmentHandler = std::function< void(const char *, std::size_t, const void *)> |
type of the handler called by violatedAlignment() More... | |
Functions | |
| ViolatedAlignmentHandler & | Dune::violatedAlignmentHandler () |
access the handler called by violatedAlignment() More... | |
| void | Dune::violatedAlignment (const char *className, std::size_t expectedAlignment, const void *address) |
| called when an alignment violation is detected More... | |
| bool | Dune::isAligned (const void *p, std::size_t align) |
| check whether an address conforms to the given alignment More... | |
| template<std::size_t align = debugAlignment, class T > | |
| AlignedNumber< T, align > | Dune::aligned (T value) |
| align a value to a certain alignment More... | |
| template<class T , std::size_t align> | |
| AlignedNumber< T, align > | Dune::cond (const AlignedNumber< bool, align > &b, const AlignedNumber< T, align > &v1, const AlignedNumber< T, align > &v2) |
| template<class T , std::size_t align> | |
| T | Dune::max_value (const AlignedNumber< T, align > &val) |
| template<class T , std::size_t align> | |
| T | Dune::min_value (const AlignedNumber< T, align > &val) |
| template<std::size_t align> | |
| bool | Dune::any_true (const AlignedNumber< bool, align > &val) |
| template<std::size_t align> | |
| bool | Dune::all_true (const AlignedNumber< bool, align > &val) |
| template<class T , std::size_t align> | |
| T & | Dune::Simd::Overloads::lane (ADLTag< 5 >, std::size_t l, AlignedNumber< T, align > &v) |
| template<class T , std::size_t align> | |
| T | Dune::Simd::Overloads::lane (ADLTag< 5 >, std::size_t l, const AlignedNumber< T, align > &v) |
| template<class T , std::size_t align> | |
| const AlignedNumber< T, align > & | Dune::Simd::Overloads::cond (ADLTag< 5 >, AlignedNumber< bool, align > mask, const AlignedNumber< T, align > &ifTrue, const AlignedNumber< T, align > &ifFalse) |
| template<std::size_t align> | |
| bool | Dune::Simd::Overloads::anyTrue (ADLTag< 5 >, const AlignedNumber< bool, align > &mask) |
Variables | |
| static constexpr auto | Dune::debugAlignment = 2*alignof(std::max_align_t) |
| an alignment large enough to trigger alignment errors More... | |
| #define DUNE_ASSIGN_OP | ( | OP | ) |
| #define DUNE_BINARY_OP | ( | OP | ) |
| #define DUNE_UNARY_FUNC | ( | name | ) |
1.8.14