Passes#
2025-01-15
6 min read time
pass#
- 
struct pass#
- An interface for applying a transformation to the instructions in a - program
dead_code_elimination#
- 
struct dead_code_elimination#
- Remove instructions where the output is not used. 
eliminate_common_subexpression#
- 
struct eliminate_common_subexpression#
- Remove identical instructions. 
eliminate_concat#
eliminate_contiguous#
eliminate_identity#
- 
struct eliminate_identity#
- Remove identity instructions. Currently when used as the last pass, it will preserve the semantics of previous program state, therefore dead code elimination should not be used afterwards. 
eliminate_pad#
- 
struct eliminate_pad#
- Remove pads if they can be written as an attribute to another op (im2col, convolution, pooling) 
propagate_constant#
rewrite_rnn#
- 
struct rewrite_rnn#
- Rewrite rnn to gemm and add. 
schedule#
- 
struct schedule#
- Schedule instructions for concurrent execution 
simplify_algebra#
- 
struct simplify_algebra#
- Simplify many algebraic instructions to more efficient versions.