tvm
Public Types | Public Member Functions | Public Attributes | List of all members
tvm::tirx::ScopeIdDefVerifier Class Reference

#include <exec_scope.h>

Collaboration diagram for tvm::tirx::ScopeIdDefVerifier:

Public Types

enum class  Mode { kRelaxed , kStrict }
 Verification mode. More...
 
using ScopeIdSet = std::unordered_map< ScopeBinding, ScopeIdDef >
 

Public Member Functions

bool Verify (const ffi::Array< ScopeIdDef > &defs, Mode mode=Mode::kStrict)
 Verify the scope id definitions are well formed. More...
 

Public Attributes

ScopeIdSet id_set
 The resolved scope id set; id_set[binding] is the best-known def for that binding (extents filled in from closure when possible). More...
 

Member Typedef Documentation

◆ ScopeIdSet

Member Enumeration Documentation

◆ Mode

Verification mode.

  • kRelaxed: tolerate deferred (extent=None) ScopeIdDefs. Used for partial programs in the well-formedness check at PrimFunc construction time.
  • kStrict: every original ScopeIdDef must end with a resolved extent (either explicit at construction, or inferred via closure). Used at LowerTIRx entry where downstream resolve/codegen needs concrete values.
Enumerator
kRelaxed 
kStrict 

Member Function Documentation

◆ Verify()

bool tvm::tirx::ScopeIdDefVerifier::Verify ( const ffi::Array< ScopeIdDef > &  defs,
Mode  mode = Mode::kStrict 
)

Verify the scope id definitions are well formed.

Member Data Documentation

◆ id_set

ScopeIdSet tvm::tirx::ScopeIdDefVerifier::id_set

The resolved scope id set; id_set[binding] is the best-known def for that binding (extents filled in from closure when possible).


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