Halide 18.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
halide_type_t Struct Reference

A runtime tag for a type in the halide type system. More...

#include <HalideRuntime.h>

Public Attributes

uint8_t code
 The basic type code: signed integer, unsigned integer, or floating point.
 
uint8_t bits
 The number of bits of precision of a single scalar value of this type.
 
uint16_t lanes
 How many elements in a vector.
 

Detailed Description

A runtime tag for a type in the halide type system.

Can be ints, unsigned ints, or floats of various bit-widths (the 'bits' field). Can also be vectors of the same (by setting the 'lanes' field to something larger than one). This struct should be exactly 32-bits in size.

Definition at line 500 of file HalideRuntime.h.

Member Data Documentation

◆ code

uint8_t halide_type_t::code

The basic type code: signed integer, unsigned integer, or floating point.

Definition at line 507 of file HalideRuntime.h.

Referenced by Halide::Type::code(), and Halide::Internal::IRMatcher::Intrin< Args >::make_folded_const().

◆ bits

uint8_t halide_type_t::bits

The number of bits of precision of a single scalar value of this type.

Definition at line 512 of file HalideRuntime.h.

Referenced by Halide::Type::bits(), and Halide::Type::Type().

◆ lanes

uint16_t halide_type_t::lanes

How many elements in a vector.

This is 1 for scalar types.

Definition at line 516 of file HalideRuntime.h.

Referenced by Halide::Internal::IRMatcher::fuzz_test_rule(), Halide::Type::lanes(), Halide::Internal::IRMatcher::SelectOp< C, T, F >::make_folded_const(), and Halide::Type::Type().


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