Halide 21.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes > Struct Template Reference

#include <IRMatch.h>

Classes

struct  pattern_tag

Public Member Functions

template<uint32_t bound>
HALIDE_ALWAYS_INLINE bool match (const BaseExprNode &e, MatcherState &state) const noexcept
HALIDE_ALWAYS_INLINE Expr make (MatcherState &state, halide_type_t type_hint) const
HALIDE_ALWAYS_INLINE SliceOp (Vec v, Base b, Stride s, Lanes l)

Public Attributes

Vec vec
Base base
Stride stride
Lanes lanes

Static Public Attributes

static constexpr uint32_t binds = Vec::binds | Base::binds | Stride::binds | Lanes::binds
static constexpr IRNodeType min_node_type = IRNodeType::Shuffle
static constexpr IRNodeType max_node_type = IRNodeType::Shuffle
static constexpr bool canonical = Vec::canonical && Base::canonical && Stride::canonical && Lanes::canonical
static constexpr bool foldable = false

Detailed Description

template<typename Vec, typename Base, typename Stride, typename Lanes>
struct Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >

Definition at line 2128 of file IRMatch.h.

Constructor & Destructor Documentation

◆ SliceOp()

template<typename Vec, typename Base, typename Stride, typename Lanes>
HALIDE_ALWAYS_INLINE Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::SliceOp ( Vec v,
Base b,
Stride s,
Lanes l )
inline

Definition at line 2171 of file IRMatch.h.

References base, lanes, stride, and vec.

Member Function Documentation

◆ match()

◆ make()

template<typename Vec, typename Base, typename Stride, typename Lanes>
HALIDE_ALWAYS_INLINE Expr Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::make ( MatcherState & state,
halide_type_t type_hint ) const
inline

Member Data Documentation

◆ vec

template<typename Vec, typename Base, typename Stride, typename Lanes>
Vec Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::vec

Definition at line 2130 of file IRMatch.h.

Referenced by make(), match(), Halide::Internal::IRMatcher::operator<<(), and SliceOp().

◆ base

template<typename Vec, typename Base, typename Stride, typename Lanes>
Base Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::base

Definition at line 2131 of file IRMatch.h.

Referenced by make(), match(), Halide::Internal::IRMatcher::operator<<(), and SliceOp().

◆ stride

template<typename Vec, typename Base, typename Stride, typename Lanes>
Stride Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::stride

Definition at line 2132 of file IRMatch.h.

Referenced by make(), match(), Halide::Internal::IRMatcher::operator<<(), and SliceOp().

◆ lanes

template<typename Vec, typename Base, typename Stride, typename Lanes>
Lanes Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::lanes

Definition at line 2133 of file IRMatch.h.

Referenced by make(), match(), Halide::Internal::IRMatcher::operator<<(), and SliceOp().

◆ binds

template<typename Vec, typename Base, typename Stride, typename Lanes>
uint32_t Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::binds = Vec::binds | Base::binds | Stride::binds | Lanes::binds
staticconstexpr

Definition at line 2135 of file IRMatch.h.

◆ min_node_type

template<typename Vec, typename Base, typename Stride, typename Lanes>
IRNodeType Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::min_node_type = IRNodeType::Shuffle
staticconstexpr

Definition at line 2137 of file IRMatch.h.

◆ max_node_type

template<typename Vec, typename Base, typename Stride, typename Lanes>
IRNodeType Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::max_node_type = IRNodeType::Shuffle
staticconstexpr

Definition at line 2138 of file IRMatch.h.

◆ canonical

template<typename Vec, typename Base, typename Stride, typename Lanes>
bool Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::canonical = Vec::canonical && Base::canonical && Stride::canonical && Lanes::canonical
staticconstexpr

Definition at line 2139 of file IRMatch.h.

◆ foldable

template<typename Vec, typename Base, typename Stride, typename Lanes>
bool Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::foldable = false
staticconstexpr

Definition at line 2168 of file IRMatch.h.


The documentation for this struct was generated from the following file: