MimIR
MimIR is my Intermediate Representation
Loading...
Searching...
No Matches
normalizers.cpp File Reference
#include <mim/axm.h>
#include <mim/tuple.h>
#include <mim/world.h>
#include "mim/plug/buffer/buffer.h"
Include dependency graph for normalizers.cpp:

Go to the source code of this file.

Namespaces

namespace  mim
namespace  mim::plug
namespace  mim::plug::buffer
 The buffer Plugin

Functions

<tt>buffer.Buf</tt>
const Def * mim::plug::buffer::normalize_Buf (const Def *, const Def *callee, const Def *arg)
 Buf (r, s, T) with literal size-1 axes in s ↦ Buf (r', s', T) with those axes dropped.
<tt>buffer.read</tt>
const Def * mim::plug::buffer::normalize_read (const Def *type, const Def *, const Def *arg)
 read (constant v) idx ↦ v.
<tt>buffer.write</tt>
const Def * mim::plug::buffer::normalize_write (const Def *, const Def *, const Def *)
<tt>buffer.shape</tt>
const Def * mim::plug::buffer::normalize_shape (const Def *type, const Def *callee, const Def *arg)
 shape (r, s, T) (buf, i) ↦ s#i; the logical shape, since the type of buf has its size-1 axes folded away.