-
Notifications
You must be signed in to change notification settings - Fork 3.7k
Description
This issue is to track progress for padded layout transformations
-
New TIR Op,
tir::builtin::assume([TIR] Add tir::builtin::assume #12267) -
New lowering transform, remove
tir::builtin::assume([TIR] Add tir::builtin::assume #12267) -
New TIR Op,
tir::builtin::undef([TIR] Add tir::builtin::undef #12266) -
New lowering transform, remove
tir::builtin::undef([TIR] Add tir::builtin::undef #12266) -
Enhancements to
transform_layout-
tir.schedule.transform_layout, rewrite loop structure if possible, mimicking TE functionality. (Implemented for padded transforms in [TIR] Implement API for padded layout transformations #12720, still to implement for un-padded transforms) - Insert pad value into generated TIR, using
tir::if_then_else,builtin::assume, andbuiltin::undef([TIR] Implement API for padded layout transformations #12720)
-
-
New utility, reorder loops according to buffer layout
Should be implemented as wrapper function around
Schedule.transform_block_layout. -
Enhancement, DomainTouched
Must track a predicate for which this touch occurs, and any known values for this touch.
-
Enhancement, Remove No Op
Should identify writes that are later overwritten or deallocated without affecting the observable outputs.
-
Enhancement, Simplify ([TIR][Analysis][Arith] Implement basic data-flow analysis #13130)
Should remove conditional statements that are provable using known contents of a buffer.
-
New transform, Hoist Expression. ([TIR] HoistExpression, generalization of HoistIfThenElse #11592)
-
New primitive, remove branching through overcompute
-
New primitive, remove overcompute through branching