Loading...
Searching...
No Matches
halide_scalar_value_t Struct Reference

halide_scalar_value_t is a simple union able to represent all the well-known scalar values in a filter argument. More...

`#include <HalideRuntime.h>`

## Public Attributes

union { |
bool b |
int8_t i8 |
int16_t i16 |
int32_t i32 |
int64_t i64 |
uint8_t u8 |
uint16_t u16 |
uint32_t u32 |
uint64_t u64 |
float f32 |
double f64 |
void * handle |
} | u

## Detailed Description

halide_scalar_value_t is a simple union able to represent all the well-known scalar values in a filter argument.

Note that it isn't tagged with a type; you must ensure you know the proper type before accessing. Most user code will never need to create instances of this struct; its primary use is to hold def/min/max values in a halide_filter_argument_t. (Note that this is conceptually just a union; it's wrapped in a struct to ensure that it doesn't get anonymized by LLVM.)

Definition at line 1741 of file HalideRuntime.h.

## Member Data Documentation

## b

bool halide_scalar_value_t::b

Definition at line 1743 of file HalideRuntime.h.

## i8

int8_t halide_scalar_value_t::i8

Definition at line 1744 of file HalideRuntime.h.

## i16

int16_t halide_scalar_value_t::i16

Definition at line 1745 of file HalideRuntime.h.

## i32

int32_t halide_scalar_value_t::i32

Definition at line 1746 of file HalideRuntime.h.

## i64

int64_t halide_scalar_value_t::i64

Definition at line 1747 of file HalideRuntime.h.

Referenced by Halide::Internal::IRMatcher::fuzz_test_rule(), Halide::Internal::IRMatcher::BroadcastOp< A, B >::make(), Halide::Internal::IRMatcher::Fold< A >::make(), Halide::Internal::IRMatcher::RampOp< A, B, C >::make(), Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::make(), Halide::Internal::IRMatcher::VectorReduceOp< A, B, reduce_op >::make(), Halide::Internal::IRMatcher::make_const_expr(), Halide::Internal::IRMatcher::BinOp< Op, A, B >::make_folded_const(), Halide::Internal::IRMatcher::BroadcastOp< A, B >::make_folded_const(), Halide::Internal::IRMatcher::CmpOp< Op, A, B >::make_folded_const(), Halide::Internal::IRMatcher::Intrin< intrin, Args >::make_folded_const(), Halide::Internal::IRMatcher::WildConstInt< i >::match(), and Halide::Internal::IRMatcher::WildConstInt< i >::match().

## u8

uint8_t halide_scalar_value_t::u8

Definition at line 1748 of file HalideRuntime.h.

## u16

uint16_t halide_scalar_value_t::u16

Definition at line 1749 of file HalideRuntime.h.

## u32

uint32_t halide_scalar_value_t::u32

Definition at line 1750 of file HalideRuntime.h.

## u64

uint64_t halide_scalar_value_t::u64

Definition at line 1751 of file HalideRuntime.h.

Referenced by Halide::Internal::IRMatcher::evaluate_predicate(), Halide::Internal::IRMatcher::fuzz_test_rule(), Halide::Internal::IRMatcher::make_const_expr(), Halide::Internal::IRMatcher::BinOp< Op, A, B >::make_folded_const(), Halide::Internal::IRMatcher::CanProve< A, Prover >::make_folded_const(), Halide::Internal::IRMatcher::CmpOp< Op, A, B >::make_folded_const(), Halide::Internal::IRMatcher::IsFloat< A >::make_folded_const(), Halide::Internal::IRMatcher::IsInt< A >::make_folded_const(), Halide::Internal::IRMatcher::IsMaxValue< A >::make_folded_const(), Halide::Internal::IRMatcher::IsMinValue< A >::make_folded_const(), Halide::Internal::IRMatcher::IsScalar< A >::make_folded_const(), Halide::Internal::IRMatcher::IsUInt< A >::make_folded_const(), Halide::Internal::IRMatcher::LanesOf< A >::make_folded_const(), Halide::Internal::IRMatcher::SelectOp< C, T, F >::make_folded_const(), Halide::Internal::IRMatcher::WildConstUInt< i >::match(), and Halide::Parameter::set_scalar().

## f32

float halide_scalar_value_t::f32

Definition at line 1752 of file HalideRuntime.h.

## f64

double halide_scalar_value_t::f64

Definition at line 1753 of file HalideRuntime.h.

Referenced by Halide::Internal::IRMatcher::fuzz_test_rule(), Halide::Internal::IRMatcher::Fold< A >::make(), Halide::Internal::IRMatcher::make_const_expr(), Halide::Internal::IRMatcher::BinOp< Op, A, B >::make_folded_const(), Halide::Internal::IRMatcher::CmpOp< Op, A, B >::make_folded_const(), and Halide::Internal::IRMatcher::WildConstFloat< i >::match().

## handle

void* halide_scalar_value_t::handle

Definition at line 1754 of file HalideRuntime.h.

## [union]

union { ... } halide_scalar_value_t::u

Referenced by Halide::Internal::IRMatcher::evaluate_predicate(), Halide::Internal::IRMatcher::fuzz_test_rule(), Halide::Internal::IRMatcher::BroadcastOp< A, B >::make(), Halide::Internal::IRMatcher::Fold< A >::make(), Halide::Internal::IRMatcher::RampOp< A, B, C >::make(), Halide::Internal::IRMatcher::SliceOp< Vec, Base, Stride, Lanes >::make(), Halide::Internal::IRMatcher::VectorReduceOp< A, B, reduce_op >::make(), Halide::Internal::IRMatcher::make_const_expr(), Halide::Internal::IRMatcher::BinOp< Op, A, B >::make_folded_const(), Halide::Internal::IRMatcher::BroadcastOp< A, B >::make_folded_const(), Halide::Internal::IRMatcher::CanProve< A, Prover >::make_folded_const(), Halide::Internal::IRMatcher::CmpOp< Op, A, B >::make_folded_const(), Halide::Internal::IRMatcher::Intrin< intrin, Args >::make_folded_const(), Halide::Internal::IRMatcher::IsFloat< A >::make_folded_const(), Halide::Internal::IRMatcher::IsInt< A >::make_folded_const(), Halide::Internal::IRMatcher::IsMaxValue< A >::make_folded_const(), Halide::Internal::IRMatcher::IsMinValue< A >::make_folded_const(), Halide::Internal::IRMatcher::IsScalar< A >::make_folded_const(), Halide::Internal::IRMatcher::IsUInt< A >::make_folded_const(), Halide::Internal::IRMatcher::LanesOf< A >::make_folded_const(), Halide::Internal::IRMatcher::SelectOp< C, T, F >::make_folded_const(), Halide::Internal::IRMatcher::WildConstFloat< i >::match(), Halide::Internal::IRMatcher::WildConstInt< i >::match(), Halide::Internal::IRMatcher::WildConstInt< i >::match(), Halide::Internal::IRMatcher::WildConstUInt< i >::match(), and Halide::Parameter::set_scalar().

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

- src/runtime/HalideRuntime.h