diff options
author | Dan Gohman <gohman@apple.com> | 2009-05-02 18:29:22 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2009-05-02 18:29:22 +0000 |
commit | ff08995589871d57a15207a24aeaa8959933c896 (patch) | |
tree | 91e55a6b4af9e506acfd955028d352acb21095da /clang/lib/Analysis/CFRefCount.cpp | |
parent | cc9123424fae101c8e26eed22f1fadcf41c83334 (diff) | |
download | bcm5719-llvm-ff08995589871d57a15207a24aeaa8959933c896.tar.gz bcm5719-llvm-ff08995589871d57a15207a24aeaa8959933c896.zip |
Previously, RecursivelyDeleteDeadInstructions provided an option
of returning a list of pointers to Values that are deleted. This was
unsafe, because the pointers in the list are, by nature of what
RecursivelyDeleteDeadInstructions does, always dangling. Replace this
with a simple callback mechanism. This may eventually be removed if
all clients can reasonably be expected to use CallbackVH.
Use this to factor out the dead-phi-cycle-elimination code from LSR
utility function, and generalize it to use the
RecursivelyDeleteTriviallyDeadInstructions utility function.
This makes LSR more aggressive about eliminating dead PHI cycles;
adjust tests to either be less trivial or to simply expect fewer
instructions.
llvm-svn: 70636
Diffstat (limited to 'clang/lib/Analysis/CFRefCount.cpp')
0 files changed, 0 insertions, 0 deletions