Add an asserting ValueHandle to the block simplification code which will
authorChandler Carruth <chandlerc@gmail.com>
Sun, 25 Mar 2012 03:29:25 +0000 (03:29 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Sun, 25 Mar 2012 03:29:25 +0000 (03:29 +0000)
commitacdae3e25a03e4e08039cb18f50b7788f71c0b2e
tree474664950af5922599157c122cbe9c84b011f5bd
parenteede6c9075a3a872e0ea00bbd71ab6fa88b677cd
Add an asserting ValueHandle to the block simplification code which will
fire if anything ever invalidates the assumption of a terminator
instruction being unchanged throughout the routine.

I've convinced myself that the current definition of simplification
precludes such a transformation, so I think getting some asserts
coverage that we don't violate this agreement is sufficient to make this
code safe for the foreseeable future.

Comments to the contrary or other suggestions are of course welcome. =]
The bots are now happy with this code though, so it appears the bug here
has indeed been fixed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153401 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Utils/Local.cpp