Halide 18.0.0
Halide compiler and libraries
|
IR nodes are passed around opaque handles to them. More...
#include <Expr.h>
Additional Inherited Members | |
![]() | |
const IRNode * | ptr |
IR nodes are passed around opaque handles to them.
This is a base class for those handles. It manages the reference count, and dispatches visitors.
|
default |
|
inline |
|
inline |
Dispatch to the correct visitor method for this node.
E.g. if this node is actually an Add node, then this will call IRVisitor::visit(const Add *)
Definition at line 192 of file Expr.h.
References Halide::Internal::IRNode::accept(), and Halide::Internal::IntrusivePtr< const IRNode >::ptr.
Referenced by Halide::SimdOpCheckTest::check_one().
Downcast this ir node to its actual type (e.g.
Add, or Select). This returns nullptr if the node is not of the requested type. Example usage:
if (const Add *add = node->as<Add>()) { // This is an add node }
Definition at line 205 of file Expr.h.
References Halide::Internal::IRNode::node_type, and Halide::Internal::IntrusivePtr< const IRNode >::ptr.
Referenced by Halide::Internal::Call::as_intrinsic(), Halide::Internal::equal(), Halide::Internal::HexagonAlignmentAnalyzer::is_aligned_impl(), and Halide::Internal::Simplify::should_commute().
|
inline |
Definition at line 212 of file Expr.h.
References Halide::Internal::IRNode::node_type, and Halide::Internal::IntrusivePtr< const IRNode >::ptr.
Referenced by Halide::Internal::Simplify::should_commute().