Halide 19.0.0
Halide compiler and libraries
|
Methods to test Exprs and Stmts for equality of value. More...
#include "Expr.h"
Go to the source code of this file.
Classes | |
struct | Halide::Internal::IRDeepCompare |
A compare struct built around less_than, for use as the comparison object in a std::map or std::set. More... | |
struct | Halide::Internal::IRGraphDeepCompare |
A compare struct built around graph_less_than, for use as the comparison object in a std::map or std::set. More... | |
Namespaces | |
namespace | Halide |
This file defines the class FunctionDAG, which is our representation of a Halide pipeline, and contains methods to using Halide's bounds tools to query properties of it. | |
namespace | Halide::Internal |
Functions | |
bool | Halide::Internal::equal_impl (const IRNode &a, const IRNode &b) |
bool | Halide::Internal::graph_equal_impl (const IRNode &a, const IRNode &b) |
bool | Halide::Internal::less_than_impl (const IRNode &a, const IRNode &b) |
bool | Halide::Internal::graph_less_than_impl (const IRNode &a, const IRNode &b) |
HALIDE_ALWAYS_INLINE bool | Halide::Internal::equal (const Expr &a, int b) |
Compare an Expr to an int literal. | |
HALIDE_ALWAYS_INLINE bool | Halide::Internal::equal (const IRNode &a, const IRNode &b) |
Check if two defined Stmts or Exprs are equal. | |
HALIDE_ALWAYS_INLINE bool | Halide::Internal::equal (const IRHandle &a, const IRHandle &b) |
Check if two possible-undefined Stmts or Exprs are equal. | |
HALIDE_ALWAYS_INLINE bool | Halide::Internal::graph_equal (const IRNode &a, const IRNode &b) |
Check if two defined Stmts or Exprs are equal. | |
HALIDE_ALWAYS_INLINE bool | Halide::Internal::graph_equal (const IRHandle &a, const IRHandle &b) |
Check if two possibly-undefined Stmts or Exprs are equal. | |
HALIDE_ALWAYS_INLINE bool | Halide::Internal::less_than (const IRNode &a, const IRNode &b) |
Check if two defined Stmts or Exprs are in a lexicographic order. | |
HALIDE_ALWAYS_INLINE bool | Halide::Internal::less_than (const IRHandle &a, const IRHandle &b) |
Check if two possibly-undefined Stmts or Exprs are in a lexicographic order. | |
HALIDE_ALWAYS_INLINE bool | Halide::Internal::graph_less_than (const IRNode &a, const IRNode &b) |
Check if two defined Stmts or Exprs are in a lexicographic order. | |
HALIDE_ALWAYS_INLINE bool | Halide::Internal::graph_less_than (const IRHandle &a, const IRHandle &b) |
Check if two possibly-undefined Stmts or Exprs are in a lexicographic order. | |
void | Halide::Internal::ir_equality_test () |
Methods to test Exprs and Stmts for equality of value.
These methods traverse the entire IR tree. For equality of reference, use Expr::same_as. If you're comparing non-CSE'd Exprs, use graph_equal or graph_less_than, which is safe for nasty graphs of IR nodes.
Definition in file IREquality.h.