tvm
|
Statement rewriter for relax.DataflowBlock. More...
#include <binding_rewrite.h>
Public Member Functions | |
void | ReplaceAllUses (Var old_var, Var new_var) |
Replace all uses of old_var with new_var. More... | |
void | Add (Binding binding) |
Insert a Binding statement. More... | |
void | Add (String var_name, Expr expr, bool is_dfvar=false) |
Insert an expression as VarBinding with variable name. More... | |
void | Add (Expr expr, bool is_dfvar=false) |
Insert an expression as VarBinding with automatic variable name. More... | |
void | RemoveUnused (Var unused, bool allow_undef=false) |
Remove the definition statement of an unused variable. More... | |
void | RemoveAllUnused () |
Remove the definition statements of all unused variables. More... | |
DataflowBlock | MutatedDataflowBlock () |
The rewritten dataflow block. More... | |
Function | MutatedFunc () |
The rewritten function. More... | |
IRModule | MutateIRModule (IRModule irmod) |
The rewritten IRModule. More... | |
void | VisitAttrs (AttrVisitor *v) |
Visit attributes. More... | |
TVM_DECLARE_FINAL_OBJECT_INFO (DataflowBlockRewriteNode, Object) | |
Public Member Functions inherited from tvm::runtime::Object | |
uint32_t | type_index () const |
std::string | GetTypeKey () const |
size_t | GetTypeKeyHash () const |
template<typename TargetType > | |
bool | IsInstance () const |
bool | unique () const |
Object () | |
Object (const Object &other) | |
Object (Object &&other) | |
Object & | operator= (const Object &other) |
Object & | operator= (Object &&other) |
Static Public Attributes | |
static constexpr const char * | _type_key = "relax.DataflowBlockRewrite" |
Static Public Attributes inherited from tvm::runtime::Object | |
static constexpr const char * | _type_key = "runtime.Object" |
static constexpr bool | _type_final = false |
static constexpr uint32_t | _type_child_slots = 0 |
static constexpr bool | _type_child_slots_can_overflow = true |
static constexpr bool | _type_has_method_visit_attrs = true |
static constexpr bool | _type_has_method_sequal_reduce = false |
static constexpr bool | _type_has_method_shash_reduce = false |
static constexpr uint32_t | _type_index = TypeIndex::kDynamic |
Protected Attributes | |
DataflowBlock | dfb_ |
The rewritten dataflow block. More... | |
Optional< Function > | root_fn_ |
The rewritten function. More... | |
const FunctionNode * | original_fn_ptr_ |
Pointer to the original function. More... | |
Map< Var, Array< Var > > | to_users_ |
Map from variable to its users. More... | |
Array< Var > | fn_outputs_ |
Variables required by function outputs. More... | |
Protected Attributes inherited from tvm::runtime::Object | |
uint32_t | type_index_ {0} |
Type index(tag) that indicates the type of the object. More... | |
RefCounterType | ref_counter_ {0} |
The internal reference counter. More... | |
FDeleter | deleter_ = nullptr |
deleter of this object to enable customized allocation. If the deleter is nullptr, no deletion will be performed. The creator of the object must always set the deleter field properly. More... | |
Friends | |
class | DataflowBlockRewrite |
Additional Inherited Members | |
Public Types inherited from tvm::runtime::Object | |
typedef void(* | FDeleter) (Object *self) |
Object deleter. More... | |
using | RefCounterType = std::atomic< int32_t > |
Static Public Member Functions inherited from tvm::runtime::Object | |
static std::string | TypeIndex2Key (uint32_t tindex) |
Get the type key of the corresponding index from runtime. More... | |
static size_t | TypeIndex2KeyHash (uint32_t tindex) |
Get the type key hash of the corresponding index from runtime. More... | |
static uint32_t | TypeKey2Index (const std::string &key) |
Get the type index of the corresponding key from runtime. More... | |
static uint32_t | _GetOrAllocRuntimeTypeIndex () |
static uint32_t | RuntimeTypeIndex () |
Protected Member Functions inherited from tvm::runtime::Object | |
void | IncRef () |
developer function, increases reference counter. More... | |
void | DecRef () |
developer function, decrease reference counter. More... | |
Static Protected Member Functions inherited from tvm::runtime::Object | |
static uint32_t | GetOrAllocRuntimeTypeIndex (const std::string &key, uint32_t static_tindex, uint32_t parent_tindex, uint32_t type_child_slots, bool type_child_slots_can_overflow) |
Get the type index using type key. More... | |
Statement rewriter for relax.DataflowBlock.
|
inline |
Insert an expression as VarBinding with automatic variable name.
|
inline |
Insert an expression as VarBinding with variable name.
|
inline |
The rewritten dataflow block.
|
inline |
The rewritten function.
The rewritten IRModule.
void tvm::relax::DataflowBlockRewriteNode::RemoveAllUnused | ( | ) |
Remove the definition statements of all unused variables.
void tvm::relax::DataflowBlockRewriteNode::RemoveUnused | ( | Var | unused, |
bool | allow_undef = false |
||
) |
Remove the definition statement of an unused variable.
Replace all uses of old_var with new_var.
tvm::relax::DataflowBlockRewriteNode::TVM_DECLARE_FINAL_OBJECT_INFO | ( | DataflowBlockRewriteNode | , |
Object | |||
) |
|
inline |
Visit attributes.
|
friend |
|
staticconstexpr |
|
protected |
The rewritten dataflow block.
Variables required by function outputs.
|
protected |
Pointer to the original function.
Map from variable to its users.