Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix a bug in the unreachable block elim pass. Dropping all references on a | Chris Lattner | 2004-07-06 | 1 | -4/+11 |
| | | | | | | | | basic block clear()'s all of the operands lists, including phis. This caused removePredecessor to get confused later. Because of this, we just nuke (without prejudice) PHI nodes in unreachable blocks. llvm-svn: 14635 | ||||
* | Add a trivially simple pass to delete unreachable blocks from the CFG. This | Chris Lattner | 2004-07-02 | 1 | -0/+68 |
pass is required to paper over problems in the code generator (primarily live variables and its clients) which doesn't really have any well defined semantics for unreachable code. The proper solution to this problem is to have instruction selectors not select blocks that are unreachable. Until we have a instruction selection framework available for use, however, we can't expect all instruction selector writers to do this. Until then, this pass should be used. llvm-svn: 14563 |