Fix reassociate to postpone certain instruction deletions until
authorDan Gohman <gohman@apple.com>
Thu, 10 Mar 2011 19:51:54 +0000 (19:51 +0000)
committerDan Gohman <gohman@apple.com>
Thu, 10 Mar 2011 19:51:54 +0000 (19:51 +0000)
commitfa0e6facc793d0a67e89f873e18cd35a9d7c02e0
tree9992bf46d1cb90f5a7697ac748938115857b7f13
parenta4f809d8db5222708c9f4519f48916cc919fd19f
Fix reassociate to postpone certain instruction deletions until
after it has finished all of its reassociations, because its
habit of unlinking operands and holding them in a datastructure
while working means that it's not easy to determine when an
instruction is really dead until after all its regular work is
done. rdar://9096268.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127424 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/Reassociate.cpp
test/Transforms/Reassociate/crash.ll