Go to the source code of this file.
Namespaces | |
| namespace | mim::plug::buffer |
| The buffer Plugin | |
| namespace | mim |
| namespace | mim::plug |
Macros | |
| #define | MIM_buffer_NORMALIZER_IMPL |
Enumerations | |
<tt>buffer.alloc</tt> | |
| enum class | mim::plug::buffer::alloc : flags_t |
<tt>buffer.init</tt> | |
| enum class | mim::plug::buffer::init : flags_t |
<tt>buffer.lit</tt> | |
| enum class | mim::plug::buffer::lit : flags_t |
<tt>buffer.copy</tt> | |
| enum class | mim::plug::buffer::copy : flags_t |
<tt>buffer.free</tt> | |
| enum class | mim::plug::buffer::free : flags_t |
<tt>buffer.lower_ptr</tt> | |
| enum class | mim::plug::buffer::lower_ptr : flags_t |
Functions | |
| void | mim::plug::buffer::register_normalizers (Normalizers &normalizers) |
Variables | |
| static constexpr plugin_t | mim::plug::buffer::Plugin_Id = 0xd61c71930000000 |
<tt>buffer.Buf</tt> | |
| enum class | mim::plug::buffer::Buf : flags_t |
| 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> | |
| enum class | mim::plug::buffer::read : flags_t |
| const Def * | mim::plug::buffer::normalize_read (const Def *type, const Def *, const Def *arg) |
| read (constant v) idx ↦ v. | |
<tt>buffer.write</tt> | |
| enum class | mim::plug::buffer::write : flags_t |
| const Def * | mim::plug::buffer::normalize_write (const Def *, const Def *, const Def *) |
<tt>buffer.shape</tt> | |
| enum class | mim::plug::buffer::shape : flags_t |
| 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. | |
| #define MIM_buffer_NORMALIZER_IMPL |