Halide
Halide::Internal::IRVisitor Class Reference

A base class for algorithms that need to recursively walk over the IR. More...

#include <IRVisitor.h>

Inherited by Halide::Internal::Closure, Halide::Internal::CodeGen_LLVM, Halide::Internal::FindAllCalls, Halide::Internal::IRGraphVisitor, and Halide::Internal::IRPrinter.

Public Member Functions

 IRVisitor ()=default
 
virtual ~IRVisitor ()=default
 

Protected Member Functions

virtual void visit (const IntImm *)
 
virtual void visit (const UIntImm *)
 
virtual void visit (const FloatImm *)
 
virtual void visit (const StringImm *)
 
virtual void visit (const Cast *)
 
virtual void visit (const Reinterpret *)
 
virtual void visit (const Variable *)
 
virtual void visit (const Add *)
 
virtual void visit (const Sub *)
 
virtual void visit (const Mul *)
 
virtual void visit (const Div *)
 
virtual void visit (const Mod *)
 
virtual void visit (const Min *)
 
virtual void visit (const Max *)
 
virtual void visit (const EQ *)
 
virtual void visit (const NE *)
 
virtual void visit (const LT *)
 
virtual void visit (const LE *)
 
virtual void visit (const GT *)
 
virtual void visit (const GE *)
 
virtual void visit (const And *)
 
virtual void visit (const Or *)
 
virtual void visit (const Not *)
 
virtual void visit (const Select *)
 
virtual void visit (const Load *)
 
virtual void visit (const Ramp *)
 
virtual void visit (const Broadcast *)
 
virtual void visit (const Call *)
 
virtual void visit (const Let *)
 
virtual void visit (const LetStmt *)
 
virtual void visit (const AssertStmt *)
 
virtual void visit (const ProducerConsumer *)
 
virtual void visit (const For *)
 
virtual void visit (const Store *)
 
virtual void visit (const Provide *)
 
virtual void visit (const Allocate *)
 
virtual void visit (const Free *)
 
virtual void visit (const Realize *)
 
virtual void visit (const Block *)
 
virtual void visit (const IfThenElse *)
 
virtual void visit (const Evaluate *)
 
virtual void visit (const Shuffle *)
 
virtual void visit (const VectorReduce *)
 
virtual void visit (const Prefetch *)
 
virtual void visit (const Fork *)
 
virtual void visit (const Acquire *)
 
virtual void visit (const Atomic *)
 

Detailed Description

A base class for algorithms that need to recursively walk over the IR.

The default implementations just recursively walk over the children. Override the ones you care about.

Definition at line 19 of file IRVisitor.h.

Constructor & Destructor Documentation

◆ IRVisitor()

Halide::Internal::IRVisitor::IRVisitor ( )
default

◆ ~IRVisitor()

virtual Halide::Internal::IRVisitor::~IRVisitor ( )
virtualdefault

Member Function Documentation

◆ visit() [1/47]

virtual void Halide::Internal::IRVisitor::visit ( const IntImm )
protectedvirtual

◆ visit() [2/47]

virtual void Halide::Internal::IRVisitor::visit ( const UIntImm )
protectedvirtual

◆ visit() [3/47]

virtual void Halide::Internal::IRVisitor::visit ( const FloatImm )
protectedvirtual

◆ visit() [4/47]

virtual void Halide::Internal::IRVisitor::visit ( const StringImm )
protectedvirtual

◆ visit() [5/47]

virtual void Halide::Internal::IRVisitor::visit ( const Cast )
protectedvirtual

◆ visit() [6/47]

virtual void Halide::Internal::IRVisitor::visit ( const Reinterpret )
protectedvirtual

◆ visit() [7/47]

virtual void Halide::Internal::IRVisitor::visit ( const Variable )
protectedvirtual

◆ visit() [8/47]

virtual void Halide::Internal::IRVisitor::visit ( const Add )
protectedvirtual

◆ visit() [9/47]

virtual void Halide::Internal::IRVisitor::visit ( const Sub )
protectedvirtual

◆ visit() [10/47]

virtual void Halide::Internal::IRVisitor::visit ( const Mul )
protectedvirtual

◆ visit() [11/47]

virtual void Halide::Internal::IRVisitor::visit ( const Div )
protectedvirtual

◆ visit() [12/47]

virtual void Halide::Internal::IRVisitor::visit ( const Mod )
protectedvirtual

◆ visit() [13/47]

virtual void Halide::Internal::IRVisitor::visit ( const Min )
protectedvirtual

◆ visit() [14/47]

virtual void Halide::Internal::IRVisitor::visit ( const Max )
protectedvirtual

◆ visit() [15/47]

virtual void Halide::Internal::IRVisitor::visit ( const EQ )
protectedvirtual

◆ visit() [16/47]

virtual void Halide::Internal::IRVisitor::visit ( const NE )
protectedvirtual

◆ visit() [17/47]

virtual void Halide::Internal::IRVisitor::visit ( const LT )
protectedvirtual

◆ visit() [18/47]

virtual void Halide::Internal::IRVisitor::visit ( const LE )
protectedvirtual

◆ visit() [19/47]

virtual void Halide::Internal::IRVisitor::visit ( const GT )
protectedvirtual

◆ visit() [20/47]

virtual void Halide::Internal::IRVisitor::visit ( const GE )
protectedvirtual

◆ visit() [21/47]

virtual void Halide::Internal::IRVisitor::visit ( const And )
protectedvirtual

◆ visit() [22/47]

virtual void Halide::Internal::IRVisitor::visit ( const Or )
protectedvirtual

◆ visit() [23/47]

virtual void Halide::Internal::IRVisitor::visit ( const Not )
protectedvirtual

◆ visit() [24/47]

virtual void Halide::Internal::IRVisitor::visit ( const Select )
protectedvirtual

◆ visit() [25/47]

virtual void Halide::Internal::IRVisitor::visit ( const Load )
protectedvirtual

◆ visit() [26/47]

virtual void Halide::Internal::IRVisitor::visit ( const Ramp )
protectedvirtual

◆ visit() [27/47]

virtual void Halide::Internal::IRVisitor::visit ( const Broadcast )
protectedvirtual

◆ visit() [28/47]

◆ visit() [29/47]

virtual void Halide::Internal::IRVisitor::visit ( const Let )
protectedvirtual

◆ visit() [30/47]

virtual void Halide::Internal::IRVisitor::visit ( const LetStmt )
protectedvirtual

◆ visit() [31/47]

virtual void Halide::Internal::IRVisitor::visit ( const AssertStmt )
protectedvirtual

◆ visit() [32/47]

virtual void Halide::Internal::IRVisitor::visit ( const ProducerConsumer )
protectedvirtual

◆ visit() [33/47]

◆ visit() [34/47]

virtual void Halide::Internal::IRVisitor::visit ( const Store )
protectedvirtual

◆ visit() [35/47]

virtual void Halide::Internal::IRVisitor::visit ( const Provide )
protectedvirtual

◆ visit() [36/47]

◆ visit() [37/47]

virtual void Halide::Internal::IRVisitor::visit ( const Free )
protectedvirtual

◆ visit() [38/47]

virtual void Halide::Internal::IRVisitor::visit ( const Realize )
protectedvirtual

◆ visit() [39/47]

virtual void Halide::Internal::IRVisitor::visit ( const Block )
protectedvirtual

◆ visit() [40/47]

virtual void Halide::Internal::IRVisitor::visit ( const IfThenElse )
protectedvirtual

◆ visit() [41/47]

virtual void Halide::Internal::IRVisitor::visit ( const Evaluate )
protectedvirtual

◆ visit() [42/47]

virtual void Halide::Internal::IRVisitor::visit ( const Shuffle )
protectedvirtual

◆ visit() [43/47]

virtual void Halide::Internal::IRVisitor::visit ( const VectorReduce )
protectedvirtual

◆ visit() [44/47]

virtual void Halide::Internal::IRVisitor::visit ( const Prefetch )
protectedvirtual

◆ visit() [45/47]

virtual void Halide::Internal::IRVisitor::visit ( const Fork )
protectedvirtual

◆ visit() [46/47]

virtual void Halide::Internal::IRVisitor::visit ( const Acquire )
protectedvirtual

◆ visit() [47/47]

virtual void Halide::Internal::IRVisitor::visit ( const Atomic )
protectedvirtual

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