Namespaces | |
| namespace | phase |
Enumerations | |
<tt>affine.For</tt> | |
| enum class | For : flags_t |
<tt>affine.Index</tt> | |
| enum class | Index : flags_t |
<tt>affine.lit</tt> | |
| enum class | lit : flags_t |
<tt>affine.semiop</tt> | |
| enum class | semiop : flags_t { mul = 0x871ca3c60000300 , ceildiv = 0x871ca3c60000301 , floordiv = 0x871ca3c60000302 , rem = 0x871ca3c60000303 } |
<tt>affine.op</tt> | |
| enum class | op : flags_t { add = 0x871ca3c60000400 , sub = 0x871ca3c60000401 , neg = 0x871ca3c60000402 , mul = 0x871ca3c60000403 } |
<tt>affine.map</tt> | |
| enum class | map : flags_t |
<tt>affine.id</tt> | |
| enum class | id : flags_t |
<tt>affine.linearize</tt> | |
| enum class | linearize : flags_t |
<tt>affine.delinearize</tt> | |
| enum class | delinearize : flags_t |
<tt>affine.lower_for</tt> | |
| enum class | lower_for : flags_t |
<tt>affine.lower_index</tt> | |
| enum class | lower_index : flags_t |
Functions | |
| std::pair< Lam *, const Def * > | counting_for (const Def *bound, const Def *acc, const Def *exit, Sym name) |
affine.For (0, bound, 1, acc) over a fresh body: Cn [I64, acc_t, Cn acc_t] named name. | |
| DefVec | counting_nest (Lam *&cur, const Def *&exit, const Def *&acc, Defs dims, std::string_view name) |
Nests one counting loop per bound of dims inside cur, threading cur, exit and acc down to the innermost body;. | |
Variables | |
| static constexpr plugin_t | Plugin_Id = 0x871ca3c60000000 |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
inline |
affine.For (0, bound, 1, acc) over a fresh body: Cn [I64, acc_t, Cn acc_t] named name.
Definition at line 14 of file affine.h.
References counting_for(), mim::Def::type(), and mim::Def::world().
Referenced by counting_for(), and counting_nest().
|
inline |
Nests one counting loop per bound of dims inside cur, threading cur, exit and acc down to the innermost body;.
Definition at line 24 of file affine.h.
References counting_for(), counting_nest(), mim::Lam::set(), and mim::Def::world().
Referenced by mim::plug::btensor::build_pointwise(), and counting_nest().