compact: Don't try to kill the same edge twice (#48343)
In IR like:
```
goto if not true
goto if not true
```
our implementation of `kill_edge!` goes through recursively
to kill all newly unreachable blocks. However, it was still
attempting to schedule the newly unreachable block. Then,
when it got to the next GotoIfNot, it wsa again attempting
to kill the same edge, which would fail, because the edge
had already been removed from the CFG. Fix that by
telling IncrementalCompact not to attempt scheduling
any blocks that were newly discovered to be dead.