MimIR
0.2-dev
MimIR is my Intermediate Representation
Loading...
Searching...
No Matches
tensor.cpp
Go to the documentation of this file.
1
#include "
mim/plug/tensor/tensor.h
"
2
3
#include "
mim/plugin.h
"
4
5
#include "
mim/plug/tensor/phase/fuse.h
"
6
#include "
mim/plug/tensor/phase/lower.h
"
7
#include "
mim/plug/tensor/phase/lower_map_reduce.h
"
8
9
using namespace
mim
;
10
using namespace
mim::plug
;
11
12
namespace
mim::plug::tensor
{
13
void
reg_stages
(
Flags2Stages
& stages) {
14
Stage::hook<lower_tensor, phase::Lower>
(stages);
15
Stage::hook<lower_map_reduce, phase::LowerMapReduce>
(stages);
16
Stage::hook<fuse_tensor, phase::Fuse>
(stages);
17
}
18
}
// namespace mim::plug::tensor
19
20
extern
"C"
MIM_EXPORT
Plugin
mim_get_plugin
() {
21
return
{
"tensor"
,
MIM_VERSION
,
tensor::register_normalizers
,
tensor::reg_stages
};
22
}
mim::Stage::hook
static void hook(Flags2Stages &stages)
Definition
pass.h:70
MIM_EXPORT
#define MIM_EXPORT
Definition
config.h:19
fuse.h
lower.h
lower_map_reduce.h
mim::plug::tensor
The tensor Plugin
Definition
fuse.h:5
mim::plug::tensor::reg_stages
void reg_stages(Flags2Stages &stages)
Definition
tensor.cpp:13
mim::plug::tensor::register_normalizers
void register_normalizers(Normalizers &normalizers)
mim::plug
Definition
lower_for.h:5
mim
Definition
ast.h:14
mim::Flags2Stages
absl::flat_hash_map< flags_t, std::function< std::unique_ptr< Stage >(World &)> > Flags2Stages
Maps an an axiom of a Stage to a function that creates one.
Definition
plugin.h:25
mim::mim_get_plugin
mim::Plugin mim_get_plugin()
plugin.h
MIM_VERSION
#define MIM_VERSION
Definition
plugin.h:54
mim::Plugin
Basic info and registration function pointer to be returned from a specific plugin.
Definition
plugin.h:59
tensor.h
src
mim
plug
tensor
tensor.cpp
Generated by
1.16.1