| 2120 | }; |
| 2121 | |
| 2122 | void simplify_algebra::apply(module& m) const |
| 2123 | { |
| 2124 | // Run simplifications multiple times |
| 2125 | m.repeat_while_changes(8, [&] { |
| 2126 | match::find_matches(m, |
| 2127 | find_inner_broadcast{}, |
| 2128 | find_dot_broadcast{}, |
| 2129 | find_double_add_lit_broadcast{}, |
| 2130 | find_add_lit_broadcast{}, |
| 2131 | find_add_convs{}, |
| 2132 | find_conv_dot_horiz_fusion{}, |
| 2133 | find_mul_conv{}, |
| 2134 | find_mul_slice_conv{}, |
| 2135 | find_mul_dot{}, |
| 2136 | find_dot_slice{}, |
| 2137 | find_dot_mul{}, |
| 2138 | find_mul_add{}, |
| 2139 | find_unit_ops{}, |
| 2140 | find_neg_unit_ops{}, |
| 2141 | eliminate_zero_point{}, |
| 2142 | find_zero_ops{}, |
| 2143 | find_dot_add{}, |
| 2144 | find_conv_add{}, |
| 2145 | find_div_const{}, |
| 2146 | find_sub_const{}, |
| 2147 | find_rsqrt{}, |
| 2148 | find_concat_conv{}, |
| 2149 | find_concat_op{}, |
| 2150 | find_split_concat{}, |
| 2151 | find_splits{}, |
| 2152 | find_split_reshape{}, |
| 2153 | find_split_transpose{}); |
| 2154 | dead_code_elimination{}.apply(m); |
| 2155 | }); |
| 2156 | } |
| 2157 | |
| 2158 | } // namespace MIGRAPHX_INLINE_NS |
| 2159 | } // namespace migraphx |
nothing calls this directly
no test coverage detected