pub fn substitute_symbol(&mut self, target: &Symbol, with: &Symbol) {
        for statement in self.statements.iter_mut() {
            statement.substitute_symbol(target, with)
        }

        for child in self.terminator.children_mut() {
            if child == target {
                *child = with.clone();
            }
        }
    }
Substitutes the symbol `target` with the symbol `with` in this basic block.

This does not substitute the output.
weld/src/sir/mod.rs