MimIR 0.1
MimIR is my Intermediate Representation
|
#include <mim/analyses/schedule.h>
Public Member Functions | |
Construction | |
Scheduler ()=default | |
Scheduler (const Scope &) | |
Scheduler (const Scheduler &)=delete | |
Scheduler (Scheduler &&other) noexcept | |
Scheduler & | operator= (Scheduler other) noexcept |
Getters | |
const Scope & | scope () const |
const F_CFG & | cfg () const |
const CFNode * | cfg (Def *mut) const |
const DomTree & | domtree () const |
const Uses & | uses (const Def *def) const |
Compute Schedules | |
Def * | early (const Def *) |
Def * | late (const Def *) |
Def * | smart (const Def *) |
Friends | |
void | swap (Scheduler &s1, Scheduler &s2) noexcept |
Schedule Mutabales | |
Order of Mutables within a Scope. | |
using | Schedule = std::vector<Def*> |
static Schedule | schedule (const Scope &) |
Definition at line 10 of file schedule.h.
using mim::Scheduler::Schedule = std::vector<Def*> |
Definition at line 47 of file schedule.h.
|
default |
|
explicit |
Definition at line 14 of file schedule.cpp.
References mim::assert_emplace(), cfg(), mim::Def::isa_mut(), scope(), and mim::Def::type().
|
delete |
|
inlinenoexcept |
Definition at line 17 of file schedule.h.
References swap.
|
inline |
Definition at line 27 of file schedule.h.
Referenced by Scheduler().
|
inline |
Definition at line 29 of file schedule.h.
Definition at line 49 of file schedule.cpp.
References mim::Def::dep_const(), mim::Def::extended_ops(), and mim::Def::isa_mut().
Definition at line 65 of file schedule.cpp.
References mim::Def::dep_const(), and mim::Def::isa_mut().
Definition at line 21 of file schedule.h.
References swap.
|
static |
Definition at line 112 of file schedule.cpp.
References mim::Scope::f_cfg(), and mim::CFG< bool >::reverse_post_order().
Referenced by mim::ll::Emitter::finalize(), and mim::Emitter< Value, Type, BB, Child >::visit().
|
inline |
Definition at line 26 of file schedule.h.
Referenced by Scheduler().
Definition at line 84 of file schedule.cpp.
Definition at line 30 of file schedule.h.
Definition at line 51 of file schedule.h.
Referenced by operator=(), and Scheduler().