MimIR
MimIR is my Intermediate Representation
Loading...
Searching...
No Matches
lower_map_reduce.cpp File Reference
#include "mim/plug/tensor/phase/lower_map_reduce.h"
#include "mim/def.h"
#include "mim/lam.h"
#include "mim/util/types.h"
#include "mim/plug/affine/affine.h"
#include "mim/plug/core/core.h"
#include "mim/plug/direct/direct.h"
#include "mim/plug/tensor/tensor.h"
#include "absl/container/flat_hash_map.h"
Include dependency graph for lower_map_reduce.cpp:

Go to the source code of this file.

Namespaces

namespace  mim
namespace  mim::plug
namespace  mim::plug::tensor
 The tensor Plugin
namespace  mim::plug::tensor::phase

Functions

static std::pair< Lam *, const Def * > mim::plug::tensor::phase::counting_for (const Def *bound, const Def *acc, const Def *exit, Sym name)
static std::tuple< Vector< u64 >, Vector< u64 >, absl::flat_hash_map< u64, const Def * >, Vector< u64 > > mim::plug::tensor::phase::extract_indices (const u64 n_nat, const u64 nis_nat, const Def *S, const Def *Ris, const Def *Sis, const Def *subs)
static std::tuple< const Def *, const Def *, absl::flat_hash_map< u64, const Def * >, Lam * > mim::plug::tensor::phase::create_outer_loop (Lam *fun, const Vector< u64 > &out_indices, const absl::flat_hash_map< u64, const Def * > &dims)