![]() |
alpaka
Abstraction Library for Parallel Kernel Acceleration
|
#include "alpaka/Vec.hpp"#include "alpaka/cast.hpp"#include "alpaka/core/util.hpp"#include "alpaka/mem/Alignment.hpp"#include "alpaka/simd/concepts.hpp"#include "alpaka/simd/internal/StdSimdMask.hpp"#include "alpaka/simd/trait.hpp"#include "alpaka/trait.hpp"#include "simd/internal/EmuSimdMask.hpp"#include "simd/internal/utility.hpp"#include <array>#include <bit>#include <concepts>#include <cstddef>#include <cstdint>#include <functional>#include <iosfwd>#include <ranges>#include <sstream>#include <string>#include <type_traits>Go to the source code of this file.
Namespaces | |
| namespace | alpaka |
| main alpaka namespace. | |
| namespace | alpaka::trait |
| namespace | std |
| STL namespace. | |
Macros | |
| #define | ALPAKA_VECTOR_BINARY_OP(typenameOrConcept, op) |
| #define | ALPAKA_VECTOR_ASSIGN_OP(op) |
| assign operator | |
| #define | ALPAKA_NAMED_ARRAY_ACCESS(functionName, laneIdx) |
| named lane access | |
Functions | |
| template<std::size_t I, typename T_Type, uint32_t T_width, typename T_Storage> | |
| constexpr auto & | alpaka::get (SimdMask< T_Type, T_width, T_Storage > &v) |
| template<std::size_t I, typename T_Type, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::get (SimdMask< T_Type, T_width, T_Storage > const &v) |
| template<typename T, typename... T_Args> | |
| constexpr auto | alpaka::makeSimdMask (T_Args... args) |
| Creates a mask for the given type. | |
| template<typename T_Type, uint32_t T_width, typename T_Storage, typename T_OtherStorage> | |
| constexpr auto | alpaka::operator!= (const SimdMask< T_Type, T_width, T_Storage > &lhs, const SimdMask< T_Type, T_width, T_OtherStorage > &rhs) |
| template<typename T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator!= (const SimdMask< T_Type, T_width, T_Storage > &lhs, T_ValueType rhs) |
| template<typename T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator!= (T_ValueType lhs, const SimdMask< T_Type, T_width, T_Storage > &rhs) |
| template<std::integral T_Type, uint32_t T_width, typename T_Storage, typename T_OtherStorage> | |
| constexpr auto | alpaka::operator& (const SimdMask< T_Type, T_width, T_Storage > &lhs, const SimdMask< T_Type, T_width, T_OtherStorage > &rhs) |
| template<std::integral T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator& (const SimdMask< T_Type, T_width, T_Storage > &lhs, T_ValueType rhs) |
| template<std::integral T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator& (T_ValueType lhs, const SimdMask< T_Type, T_width, T_Storage > &rhs) |
| template<typename T_Type, uint32_t T_width, typename T_Storage, typename T_OtherStorage> | |
| constexpr auto | alpaka::operator&& (const SimdMask< T_Type, T_width, T_Storage > &lhs, const SimdMask< T_Type, T_width, T_OtherStorage > &rhs) |
| template<typename T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator&& (const SimdMask< T_Type, T_width, T_Storage > &lhs, T_ValueType rhs) |
| template<typename T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator&& (T_ValueType lhs, const SimdMask< T_Type, T_width, T_Storage > &rhs) |
| template<typename Type, uint32_t T_width, typename T_Storage> | |
| std::ostream & | alpaka::operator<< (std::ostream &s, SimdMask< Type, T_width, T_Storage > const &vec) |
| template<typename T_Type, uint32_t T_width, typename T_Storage, typename T_OtherStorage> | |
| constexpr auto | alpaka::operator== (const SimdMask< T_Type, T_width, T_Storage > &lhs, const SimdMask< T_Type, T_width, T_OtherStorage > &rhs) |
| template<typename T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator== (const SimdMask< T_Type, T_width, T_Storage > &lhs, T_ValueType rhs) |
| template<typename T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator== (T_ValueType lhs, const SimdMask< T_Type, T_width, T_Storage > &rhs) |
| template<std::integral T_Type, uint32_t T_width, typename T_Storage, typename T_OtherStorage> | |
| constexpr auto | alpaka::operator^ (const SimdMask< T_Type, T_width, T_Storage > &lhs, const SimdMask< T_Type, T_width, T_OtherStorage > &rhs) |
| template<std::integral T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator^ (const SimdMask< T_Type, T_width, T_Storage > &lhs, T_ValueType rhs) |
| template<std::integral T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator^ (T_ValueType lhs, const SimdMask< T_Type, T_width, T_Storage > &rhs) |
| template<std::integral T_Type, uint32_t T_width, typename T_Storage, typename T_OtherStorage> | |
| constexpr auto | alpaka::operator| (const SimdMask< T_Type, T_width, T_Storage > &lhs, const SimdMask< T_Type, T_width, T_OtherStorage > &rhs) |
| template<std::integral T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator| (const SimdMask< T_Type, T_width, T_Storage > &lhs, T_ValueType rhs) |
| template<std::integral T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator| (T_ValueType lhs, const SimdMask< T_Type, T_width, T_Storage > &rhs) |
| template<typename T_Type, uint32_t T_width, typename T_Storage, typename T_OtherStorage> | |
| constexpr auto | alpaka::operator|| (const SimdMask< T_Type, T_width, T_Storage > &lhs, const SimdMask< T_Type, T_width, T_OtherStorage > &rhs) |
| template<typename T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator|| (const SimdMask< T_Type, T_width, T_Storage > &lhs, T_ValueType rhs) |
| template<typename T_Type, concepts::LosslesslyConvertible< T_Type > T_ValueType, uint32_t T_width, typename T_Storage> | |
| constexpr auto | alpaka::operator|| (T_ValueType lhs, const SimdMask< T_Type, T_width, T_Storage > &rhs) |
| template<typename T_1, typename... T_Args> | |
| ALPAKA_FN_HOST_ACC | alpaka::SimdMask (T_1, T_Args...) -> SimdMask< T_1, uint32_t(sizeof...(T_Args)+1u)> |
| #define ALPAKA_NAMED_ARRAY_ACCESS | ( | functionName, | |
| laneIdx ) |
named lane access
Vec. The availability of the naming methods depends on the SIMD width.You can have access to the same lane index via different nonspecific naming.
Definition at line 275 of file SimdMask.hpp.
| #define ALPAKA_VECTOR_ASSIGN_OP | ( | op | ) |
assign operator
Definition at line 227 of file SimdMask.hpp.
| #define ALPAKA_VECTOR_BINARY_OP | ( | typenameOrConcept, | |
| op ) |
Definition at line 447 of file SimdMask.hpp.