Halide 22.0.0 Halide compiler and libraries

Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
Halide::Internal::Cast Struct Reference

The actual IR nodes begin here. More...

`#include <IR.h>`

Inheritance diagram for Halide::Internal::Cast:

## Public Member Functions
bool | is_reinterpret () const
| Check if the cast is equivalent to a reinterpret. More...
Public Member Functions inherited from Halide::Internal::ExprNode< Cast >
void | accept (IRVisitor *v) const override
| We use the visitor pattern to traverse IR nodes throughout the compiler, so we have a virtual accept method which accepts visitors. More...
Expr | mutate_expr (IRMutator *v) const override
| ExprNode ()
| ~ExprNode () override=default
Public Member Functions inherited from Halide::Internal::BaseExprNode
| BaseExprNode (IRNodeType t)
virtual Expr | mutate_expr (IRMutator *v) const =0
Public Member Functions inherited from Halide::Internal::IRNode
virtual void | accept (IRVisitor *v) const =0
| We use the visitor pattern to traverse IR nodes throughout the compiler, so we have a virtual accept method which accepts visitors. More...
| IRNode (IRNodeType t)
virtual | ~IRNode ()=default

## Static Public Member Functions
static Expr | make (Type t, Expr v)

## Public Attributes
Expr | value
Public Attributes inherited from Halide::Internal::BaseExprNode
Type | type
Public Attributes inherited from Halide::Internal::IRNode
RefCount | ref_count
| These classes are all managed with intrusive reference counting, so we also track a reference count. More...
IRNodeType | node_type
| Each IR node subclass has a unique identifier. More...

## Static Public Attributes
static const IRNodeType | _node_type = IRNodeType::Cast

## Detailed Description

The actual IR nodes begin here.

Remember that all the Expr nodes also have a public "type" property Cast a node from one type to another. Can't change vector widths.

Definition at line 30 of file IR.h.

## Member Function Documentation

## ◆ make()

static Expr Halide::Internal::Cast::make | ( | Type | t,
|  | Expr | v
| ) |  |
| static

Referenced by Halide::Param< T >::set_max_value(), and Halide::Param< T >::set_min_value().

## ◆ is_reinterpret()

bool Halide::Internal::Cast::is_reinterpret | ( |  | ) | const
| inline

Check if the cast is equivalent to a reinterpret.

Definition at line 38 of file IR.h.

References Halide::Type::bits(), Halide::Type::is_int_or_uint(), Halide::Internal::BaseExprNode::type, Halide::Expr::type(), and value.

## Member Data Documentation

## ◆ value

Expr Halide::Internal::Cast::value

Definition at line 31 of file IR.h.

Referenced by is_reinterpret(), Halide::Internal::IRMatcher::CastOp< A >::match(), and Halide::Internal::IRMatcher::WidenOp< A >::match().

## ◆ _node_type

const IRNodeType Halide::Internal::Cast::_node_type = IRNodeType::Cast
| static

Definition at line 35 of file IR.h.

Referenced by Halide::Internal::IRMatcher::CastOp< A >::match(), and Halide::Internal::IRMatcher::WidenOp< A >::match().

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

- src/IR.h