Halide 22.0.0 Halide compiler and libraries

Classes | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
Halide::Internal::IRMatcher::CanProve< A, Prover > Struct Template Reference

`#include <IRMatch.h>`

## Classes
struct | pattern_tag

## Public Member Functions
HALIDE_NEVER_INLINE void | make_folded_const (halide_scalar_value_t &val, halide_type_t &ty, MatcherState &state) const

## Public Attributes
A | a
Prover * | prover

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

## Detailed Description

template<typename A, typename Prover>
struct Halide::Internal::IRMatcher::CanProve< A, Prover >

Definition at line 2436 of file IRMatch.h.

## Member Function Documentation

## ◆ make_folded_const()

template<typename A , typename Prover >

HALIDE_NEVER_INLINE void Halide::Internal::IRMatcher::CanProve< A, Prover >::make_folded_const | ( | halide_scalar_value_t & | val,
|  | halide_type_t & | ty,
|  | MatcherState & | state
| ) |  | const
| inline

Definition at line 2451 of file IRMatch.h.

References Halide::Internal::IRMatcher::CanProve< A, Prover >::a, halide_type_t::bits, halide_type_t::code, halide_type_uint, Halide::Internal::is_const_one(), halide_type_t::lanes, Halide::Type::lanes(), Halide::Internal::IRMatcher::CanProve< A, Prover >::prover, Halide::Expr::type(), halide_scalar_value_t::u, and halide_scalar_value_t::u64.

## Member Data Documentation

## ◆ a

template<typename A , typename Prover >

A Halide::Internal::IRMatcher::CanProve< A, Prover >::a

Definition at line 2438 of file IRMatch.h.

Referenced by Halide::Internal::IRMatcher::CanProve< A, Prover >::make_folded_const(), and Halide::Internal::IRMatcher::operator<<().

## ◆ prover

template<typename A , typename Prover >

Prover* Halide::Internal::IRMatcher::CanProve< A, Prover >::prover

Definition at line 2439 of file IRMatch.h.

Referenced by Halide::Internal::IRMatcher::CanProve< A, Prover >::make_folded_const().

## ◆ binds

template<typename A , typename Prover >

constexpr uint32_t Halide::Internal::IRMatcher::CanProve< A, Prover >::binds = bindings<A>::mask
| static constexpr

Definition at line 2441 of file IRMatch.h.

## ◆ min_node_type

template<typename A , typename Prover >

constexpr IRNodeType Halide::Internal::IRMatcher::CanProve< A, Prover >::min_node_type = IRNodeType::UIntImm
| static constexpr

Definition at line 2444 of file IRMatch.h.

## ◆ max_node_type

template<typename A , typename Prover >

constexpr IRNodeType Halide::Internal::IRMatcher::CanProve< A, Prover >::max_node_type = IRNodeType::UIntImm
| static constexpr

Definition at line 2445 of file IRMatch.h.

## ◆ canonical

template<typename A , typename Prover >

constexpr bool Halide::Internal::IRMatcher::CanProve< A, Prover >::canonical = true
| static constexpr

Definition at line 2446 of file IRMatch.h.

## ◆ foldable

template<typename A , typename Prover >

constexpr bool Halide::Internal::IRMatcher::CanProve< A, Prover >::foldable = true
| static constexpr

Definition at line 2448 of file IRMatch.h.

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

- src/IRMatch.h