|
Halide 22.0.0
Halide compiler and libraries
|
A base class for algorithms that walk recursively over the IR without visiting the same node twice. More...
#include <IRVisitor.h>
Protected Member Functions | |
| virtual void | include (const Expr &) |
| By default these methods add the node to the visited set, and return whether or not it was already there. More... | |
| virtual void | include (const Stmt &) |
| void | visit (const IntImm *) override |
| These methods should call 'include' on the children to only visit them if they haven't been visited already. More... | |
| void | visit (const UIntImm *) override |
| void | visit (const FloatImm *) override |
| void | visit (const StringImm *) override |
| void | visit (const Cast *) override |
| void | visit (const Reinterpret *) override |
| void | visit (const Add *) override |
| void | visit (const Sub *) override |
| void | visit (const Mul *) override |
| void | visit (const Div *) override |
| void | visit (const Mod *) override |
| void | visit (const Min *) override |
| void | visit (const Max *) override |
| void | visit (const EQ *) override |
| void | visit (const NE *) override |
| void | visit (const LT *) override |
| void | visit (const LE *) override |
| void | visit (const GT *) override |
| void | visit (const GE *) override |
| void | visit (const And *) override |
| void | visit (const Or *) override |
| void | visit (const Not *) override |
| void | visit (const Select *) override |
| void | visit (const Load *) override |
| void | visit (const Ramp *) override |
| void | visit (const Broadcast *) override |
| void | visit (const Let *) override |
| void | visit (const LetStmt *) override |
| void | visit (const AssertStmt *) override |
| void | visit (const ProducerConsumer *) override |
| void | visit (const Store *) override |
| void | visit (const Provide *) override |
| void | visit (const Allocate *) override |
| void | visit (const Free *) override |
| void | visit (const Realize *) override |
| void | visit (const Block *) override |
| void | visit (const Fork *) override |
| void | visit (const IfThenElse *) override |
| void | visit (const Evaluate *) override |
| void | visit (const Call *) override |
| void | visit (const Variable *) override |
| void | visit (const For *) override |
| void | visit (const Acquire *) override |
| void | visit (const Shuffle *) override |
| void | visit (const Prefetch *) override |
| void | visit (const HoistedStorage *) override |
| void | visit (const Atomic *) override |
| void | visit (const VectorReduce *) override |
| 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 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 Let *) |
| virtual void | visit (const LetStmt *) |
| virtual void | visit (const AssertStmt *) |
| virtual void | visit (const ProducerConsumer *) |
| 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 Fork *) |
| virtual void | visit (const IfThenElse *) |
| virtual void | visit (const Evaluate *) |
| virtual void | visit (const Call *) |
| virtual void | visit (const Variable *) |
| virtual void | visit (const For *) |
| virtual void | visit (const Acquire *) |
| virtual void | visit (const Shuffle *) |
| virtual void | visit (const Prefetch *) |
| virtual void | visit (const HoistedStorage *) |
| virtual void | visit (const Atomic *) |
| virtual void | visit (const VectorReduce *) |
Additional Inherited Members | |
Public Member Functions inherited from Halide::Internal::IRVisitor | |
| IRVisitor ()=default | |
| virtual | ~IRVisitor ()=default |
A base class for algorithms that walk recursively over the IR without visiting the same node twice.
This is for passes that are capable of interpreting the IR as a DAG instead of a tree.
Definition at line 272 of file IRVisitor.h.
|
protectedvirtual |
By default these methods add the node to the visited set, and return whether or not it was already there.
If it wasn't there, it delegates to the appropriate visit method. You can override them if you like.
|
protectedvirtual |
|
overrideprotectedvirtual |
These methods should call 'include' on the children to only visit them if they haven't been visited already.
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.
|
overrideprotectedvirtual |
Reimplemented from Halide::Internal::IRVisitor.