MimIR 0.1
MimIR is my Intermediate Representation
|
#include <mim/nest.h>
Public Types | |
using | SCC = absl::flat_hash_set<const Node*> |
Strongly Connected Component. | |
Public Member Functions | |
Getters | |
std::string | name () const |
const Nest & | nest () const |
const Node * | parent () const |
bool | is_root () const |
Def * | mut () const |
The mutable capsulated in this Node or nullptr , if it's a virtual root comprising several Nodes. | |
uint32_t | level () const |
uint32_t | loop_depth () const |
Children | |
auto | child_muts () const |
auto | child_nodes () const |
auto | child_mut2node () const |
const Node * | child (Def *mut) const |
size_t | num_children () const |
depends/controls | |
These are the dependencies across children():
| |
auto | depends () const |
auto | controls () const |
size_t | num_depends () const |
SCCs | |
SCCs for all children dependencies.
| |
const auto & | SCCs () |
const auto & | topo () const |
Topological sorting of all SCCs. | |
bool | is_recursive () const |
bool | is_mutually_recursive () const |
bool | is_directly_recursive () const |
Friends | |
class | Nest |
using mim::Nest::Node::SCC = absl::flat_hash_set<const Node*> |
|
inline |
Definition at line 54 of file nest.h.
Referenced by num_depends().
|
inline |
Definition at line 74 of file nest.h.
References is_recursive().
|
inline |
Definition at line 73 of file nest.h.
References is_recursive().
|
inline |
Definition at line 72 of file nest.h.
Referenced by is_directly_recursive(), is_mutually_recursive(), and mim::Nest::is_recursive().
|
inline |
|
inline |
Definition at line 26 of file nest.h.
Referenced by mim::Nest::lca().
|
inline |
The mutable capsulated in this Node or nullptr
, if it's a virtual root comprising several Nodes.
Definition at line 22 of file nest.h.
References is_root().
Referenced by child(), mim::plug::clos::free_defs(), name(), mim::post_order(), and mim::Scheduler::root().
|
inline |
Definition at line 17 of file nest.h.
References mut(), and mim::Def::unique_name().
|
inline |
|
inline |
Definition at line 19 of file nest.h.
Referenced by mim::Nest::lca().
|
inline |