Halide 22.0.0 Halide compiler and libraries

Loading...
Searching...
No Matches
Classes | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
Halide::Internal::IRMatcher::NegateOp< A > 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 >
HALIDE_ALWAYS_INLINE bool | match (NegateOp< A2 > &&p, MatcherState &state) const noexcept
HALIDE_ALWAYS_INLINE Expr | make (MatcherState &state, halide_type_t type_hint) const
template<typename A1 = A>
HALIDE_ALWAYS_INLINE void | make_folded_const (halide_scalar_value_t &val, halide_type_t &ty, MatcherState &state) const noexcept

## Public Attributes
A | a

## Static Public Attributes
static constexpr uint32_t | binds = bindings<A>::mask
static constexpr IRNodeType | min_node_type = IRNodeType::Sub
static constexpr IRNodeType | max_node_type = IRNodeType::Sub
static constexpr bool | canonical = A::canonical
static constexpr bool | foldable = A::foldable

## Detailed Description

template<typename A>
struct Halide::Internal::IRMatcher::NegateOp< A >

Definition at line 2014 of file IRMatch.h.

## Member Function Documentation

## ◆ match() [1/2]

template<typename A >
template<uint32_t bound>

HALIDE_ALWAYS_INLINE bool Halide::Internal::IRMatcher::NegateOp< A >::match | ( | const BaseExprNode & | e,
|  | MatcherState & | state
| ) |  | const
| inline noexcept

Definition at line 2026 of file IRMatch.h.

References Halide::Internal::Sub::_node_type, Halide::Internal::Sub::a, Halide::Internal::IRMatcher::NegateOp< A >::a, Halide::Internal::Sub::b, Halide::Internal::IRMatcher::cast(), Halide::Expr::get(), and Halide::Internal::is_const_zero().

## ◆ match() [2/2]

template<typename A >
template<uint32_t bound, typename A2 >

HALIDE_ALWAYS_INLINE bool Halide::Internal::IRMatcher::NegateOp< A >::match | ( | NegateOp< A2 > && | p,
|  | MatcherState & | state
| ) |  | const
| inline noexcept

Definition at line 2036 of file IRMatch.h.

References Halide::Internal::IRMatcher::NegateOp< A >::a, Halide::Internal::IRMatcher::cast(), and Halide::Internal::IRMatcher::unwrap().

## ◆ make()

template<typename A >

HALIDE_ALWAYS_INLINE Expr Halide::Internal::IRMatcher::NegateOp< A >::make | ( | MatcherState & | state,
|  | halide_type_t | type_hint
| ) |  | const
| inline

Definition at line 2041 of file IRMatch.h.

References Halide::Internal::IRMatcher::NegateOp< A >::a, Halide::Internal::IRMatcher::cast(), Halide::Internal::Sub::make(), and Halide::Internal::make_zero().

## ◆ make_folded_const()

template<typename A >
template<typename A1 = A>

HALIDE_ALWAYS_INLINE void Halide::Internal::IRMatcher::NegateOp< A >::make_folded_const | ( | halide_scalar_value_t & | val,
|  | halide_type_t & | ty,
|  | MatcherState & | state
| ) |  | const
| inline noexcept

Definition at line 2050 of file IRMatch.h.

References Halide::Internal::IRMatcher::NegateOp< A >::a, Halide::Internal::IRMatcher::cast(), halide_type_bfloat, halide_type_float, halide_type_int, halide_type_uint, and Halide::Internal::IRMatcher::MatcherState::signed_integer_overflow.

## Member Data Documentation

## ◆ a

template<typename A >

A Halide::Internal::IRMatcher::NegateOp< A >::a

Definition at line 2016 of file IRMatch.h.

Referenced by Halide::Internal::IRMatcher::NegateOp< A >::make(), Halide::Internal::IRMatcher::NegateOp< A >::make_folded_const(), Halide::Internal::IRMatcher::NegateOp< A >::match(), Halide::Internal::IRMatcher::NegateOp< A >::match(), and Halide::Internal::IRMatcher::operator<<().

## ◆ binds

template<typename A >

constexpr uint32_t Halide::Internal::IRMatcher::NegateOp< A >::binds = bindings<A>::mask
| static constexpr

Definition at line 2018 of file IRMatch.h.

## ◆ min_node_type

template<typename A >

constexpr IRNodeType Halide::Internal::IRMatcher::NegateOp< A >::min_node_type = IRNodeType::Sub
| static constexpr

Definition at line 2020 of file IRMatch.h.

## ◆ max_node_type

template<typename A >

constexpr IRNodeType Halide::Internal::IRMatcher::NegateOp< A >::max_node_type = IRNodeType::Sub
| static constexpr

Definition at line 2021 of file IRMatch.h.

## ◆ canonical

template<typename A >

constexpr bool Halide::Internal::IRMatcher::NegateOp< A >::canonical = A::canonical
| static constexpr

Definition at line 2023 of file IRMatch.h.

## ◆ foldable

template<typename A >

constexpr bool Halide::Internal::IRMatcher::NegateOp< A >::foldable = A::foldable
| static constexpr

Definition at line 2047 of file IRMatch.h.

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

- src/IRMatch.h