Halide 21.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
Halide::Internal::IRMatcher::RampOp< A, B, C > 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
template<uint32_t bound, typename A2, typename B2, typename C2>
HALIDE_ALWAYS_INLINE bool match (const RampOp< A2, B2, C2 > &op, MatcherState &state) const noexcept
HALIDE_ALWAYS_INLINE Expr make (MatcherState &state, halide_type_t type_hint) const

Public Attributes

a
b
lanes

Static Public Attributes

static constexpr uint32_t binds = bindings<A>::mask | bindings<B>::mask | bindings<C>::mask
static constexpr IRNodeType min_node_type = IRNodeType::Ramp
static constexpr IRNodeType max_node_type = IRNodeType::Ramp
static constexpr bool canonical = A::canonical && B::canonical && C::canonical
static constexpr bool foldable = false

Detailed Description

template<typename A, typename B, typename C>
struct Halide::Internal::IRMatcher::RampOp< A, B, C >

Definition at line 1807 of file IRMatch.h.

Member Function Documentation

◆ match() [1/2]

template<typename A, typename B, typename C>
template<uint32_t bound>
HALIDE_ALWAYS_INLINE bool Halide::Internal::IRMatcher::RampOp< A, B, C >::match ( const BaseExprNode & e,
MatcherState & state ) const
inlinenoexcept

◆ match() [2/2]

template<typename A, typename B, typename C>
template<uint32_t bound, typename A2, typename B2, typename C2>
HALIDE_ALWAYS_INLINE bool Halide::Internal::IRMatcher::RampOp< A, B, C >::match ( const RampOp< A2, B2, C2 > & op,
MatcherState & state ) const
inlinenoexcept

◆ make()

template<typename A, typename B, typename C>
HALIDE_ALWAYS_INLINE Expr Halide::Internal::IRMatcher::RampOp< A, B, C >::make ( MatcherState & state,
halide_type_t type_hint ) const
inline

Member Data Documentation

◆ a

template<typename A, typename B, typename C>
A Halide::Internal::IRMatcher::RampOp< A, B, C >::a

Definition at line 1809 of file IRMatch.h.

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

◆ b

template<typename A, typename B, typename C>
B Halide::Internal::IRMatcher::RampOp< A, B, C >::b

Definition at line 1810 of file IRMatch.h.

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

◆ lanes

template<typename A, typename B, typename C>
C Halide::Internal::IRMatcher::RampOp< A, B, C >::lanes

Definition at line 1811 of file IRMatch.h.

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

◆ binds

template<typename A, typename B, typename C>
uint32_t Halide::Internal::IRMatcher::RampOp< A, B, C >::binds = bindings<A>::mask | bindings<B>::mask | bindings<C>::mask
staticconstexpr

Definition at line 1813 of file IRMatch.h.

◆ min_node_type

template<typename A, typename B, typename C>
IRNodeType Halide::Internal::IRMatcher::RampOp< A, B, C >::min_node_type = IRNodeType::Ramp
staticconstexpr

Definition at line 1815 of file IRMatch.h.

◆ max_node_type

template<typename A, typename B, typename C>
IRNodeType Halide::Internal::IRMatcher::RampOp< A, B, C >::max_node_type = IRNodeType::Ramp
staticconstexpr

Definition at line 1816 of file IRMatch.h.

◆ canonical

template<typename A, typename B, typename C>
bool Halide::Internal::IRMatcher::RampOp< A, B, C >::canonical = A::canonical && B::canonical && C::canonical
staticconstexpr

Definition at line 1818 of file IRMatch.h.

◆ foldable

template<typename A, typename B, typename C>
bool Halide::Internal::IRMatcher::RampOp< A, B, C >::foldable = false
staticconstexpr

Definition at line 1855 of file IRMatch.h.


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