MimIR 0.1
MimIR is my Intermediate Representation
Loading...
Searching...
No Matches
mim::ll Namespace Reference

Classes

struct  BB
class  Emitter

Functions

void emit (World &, std::ostream &)
int compile (World &, std::string name)
int compile (World &, std::string ll, std::string out)
int compile_and_run (World &, std::string name, std::string args={})
static std::optional< std::pair< nat_t, const Def * > > is_simd (const Def *type)
static std::optional< std::pair< nat_t, const Def * > > is_simd_aggregate (const std::vector< const Def * > types)
static const Deffind_common_simd_src (const App *app)

Function Documentation

◆ compile() [1/2]

int mim::ll::compile ( World & world,
std::string ll,
std::string out )

Definition at line 27 of file ll.cpp.

References emit(), mim::fmt(), and mim::sys::system().

◆ compile() [2/2]

int mim::ll::compile ( World & world,
std::string name )

Definition at line 18 of file ll.cpp.

References compile().

Referenced by compile(), and compile_and_run().

◆ compile_and_run()

int mim::ll::compile_and_run ( World & world,
std::string name,
std::string args = {} )

Definition at line 35 of file ll.cpp.

References compile(), mim::error(), and mim::sys::run().

◆ emit()

void mim::ll::emit ( World & world,
std::ostream & ostream )

Definition at line 13 of file ll.cpp.

References mim::Phase::run().

Referenced by compile(), and mim_get_plugin().

◆ find_common_simd_src()

const Def * mim::ll::find_common_simd_src ( const App * app)
inlinestatic

Definition at line 179 of file ll.h.

References is_simd(), and mim::Axm::isa().

Referenced by mim::ll::Emitter::emit_epilogue().

◆ is_simd()

std::optional< std::pair< nat_t, const Def * > > mim::ll::is_simd ( const Def * type)
inlinestatic

◆ is_simd_aggregate()

std::optional< std::pair< nat_t, const Def * > > mim::ll::is_simd_aggregate ( const std::vector< const Def * > types)
inlinestatic

Definition at line 170 of file ll.h.

References mim::Axm::isa(), and mim::Idx::isa().

Referenced by mim::ll::Emitter::emit_epilogue().