use tensorlogic_ir::TLExpr;
use super::types::{DceStats, DeadCodeEliminator};
impl DeadCodeEliminator {
pub(super) fn eliminate(&self, expr: TLExpr, stats: &mut DceStats) -> (TLExpr, bool) {
let expr = match self.elim_flow(expr, stats) {
Ok(result) => return result,
Err(unchanged) => unchanged,
};
let expr = match self.elim_ops(expr, stats) {
Ok(result) => return result,
Err(unchanged) => unchanged,
};
self.elim_ext(expr, stats)
}
}