#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, VectorReduce::Operator reduce_op_2> | |
HALIDE_ALWAYS_INLINE bool | match (const VectorReduceOp< A2, B2, reduce_op_2 > &op, MatcherState &state) const noexcept |
HALIDE_ALWAYS_INLINE Expr | make (MatcherState &state, halide_type_t type_hint) const |
Public Attributes | |
A | a |
B | lanes |
Static Public Attributes | |
static constexpr uint32_t | binds = bindings<A>::mask | bindings<B>::mask |
static constexpr IRNodeType | min_node_type = IRNodeType::VectorReduce |
static constexpr IRNodeType | max_node_type = IRNodeType::VectorReduce |
static constexpr bool | canonical = A::canonical |
static constexpr bool | foldable = false |
|
inlinenoexcept |
Definition at line 1890 of file IRMatch.h.
References Halide::Internal::VectorReduce::_node_type, a, Halide::Expr::get(), HALIDE_ALWAYS_INLINE, lanes, Halide::Type::lanes(), Halide::Internal::IRMatcher::bindings< T >::mask, match(), Halide::Internal::VectorReduce::op, Halide::Internal::BaseExprNode::type, and Halide::Internal::VectorReduce::value.
|
inlinenoexcept |
Definition at line 1903 of file IRMatch.h.
References a, HALIDE_ALWAYS_INLINE, lanes, Halide::Internal::IRMatcher::bindings< T >::mask, match(), and Halide::Internal::IRMatcher::unwrap().
|
inline |
Definition at line 1910 of file IRMatch.h.
References a, halide_scalar_value_t::i64, lanes, Halide::Internal::VectorReduce::make(), and halide_scalar_value_t::u.
A Halide::Internal::IRMatcher::VectorReduceOp< A, B, reduce_op >::a |
B Halide::Internal::IRMatcher::VectorReduceOp< A, B, reduce_op >::lanes |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |