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 | 93efe961e210974ab27c5e90bc6c50c580417267 (patch) | |
tree | 9f9a8cd11e9dfce8900d1a030300eed0ffca00a0 /lib/Transforms/IPO/StripSymbols.cpp | |
parent | 94623027b198bb1571c392afd3ac3cc487ce39d7 (diff) | |
download | external_llvm-93efe961e210974ab27c5e90bc6c50c580417267.zip external_llvm-93efe961e210974ab27c5e90bc6c50c580417267.tar.gz external_llvm-93efe961e210974ab27c5e90bc6c50c580417267.tar.bz2 |
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70636 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/IPO/StripSymbols.cpp')
0 files changed, 0 insertions, 0 deletions