llvm-6502/lib/Transforms/Utils
Duncan Sands 2cfbf018a9 If the phi node was used by an unreachable instruction that ends up using
itself without going via a phi node then we could return false here in
spite of making a change.  Also, tweak the comment because this method
can (and always could) return true without deleting the original phi node.
For example, if the phi node was used by a read-only invoke instruction
which is used by another phi node phi2 which is only used by and only uses
the invoke, then phi2 would be deleted but not the invoke instruction and
not the original phi node.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126129 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-21 17:32:05 +00:00
..
AddrModeMatcher.cpp Change all self assignments X=X to (void)X, so that we can turn on a 2010-12-23 00:58:24 +00:00
BasicBlockUtils.cpp Re-apply r124518 with fix. Watch out for invalidated iterator. 2011-01-29 04:46:23 +00:00
BasicInliner.cpp simplify 2010-07-28 15:52:43 +00:00
BreakCriticalEdges.cpp Remove code for updating dominance frontiers and some outdated references to 2011-01-18 04:11:31 +00:00
BuildLibCalls.cpp BuildLibCalls: Nuke EmitMemCpy, EmitMemMove and EmitMemSet. They are dead and superseded by IRBuilder. 2010-12-27 00:25:32 +00:00
CloneFunction.cpp Revamp the ValueMapper interfaces in a couple ways: 2011-01-08 08:15:20 +00:00
CloneLoop.cpp Remove code for updating dominance frontiers and some outdated references to 2011-01-18 04:11:31 +00:00
CloneModule.cpp Revamp the ValueMapper interfaces in a couple ways: 2011-01-08 08:15:20 +00:00
CMakeLists.txt Add a new convenience pass for testing InstructionSimplify. Previously 2010-12-20 20:54:37 +00:00
CodeExtractor.cpp typoes 2010-09-10 22:25:58 +00:00
DemoteRegToStack.cpp Change all self assignments X=X to (void)X, so that we can turn on a 2010-12-23 00:58:24 +00:00
InlineFunction.cpp switch the inliner alignment enforcement stuff to use the 2010-12-25 20:42:38 +00:00
InstructionNamer.cpp Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which 2010-10-19 17:21:58 +00:00
LCSSA.cpp split dom frontier handling stuff out to its own DominanceFrontier header, 2011-01-02 22:09:33 +00:00
Local.cpp If the phi node was used by an unreachable instruction that ends up using 2011-02-21 17:32:05 +00:00
LoopSimplify.cpp Rename 'loopsimplify' to 'loop-simplify'. 2011-02-10 23:38:10 +00:00
LoopUnroll.cpp Don't unroll loops whose header block's address is taken. 2011-02-18 04:25:21 +00:00
LowerInvoke.cpp Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which 2010-10-19 17:21:58 +00:00
LowerSwitch.cpp Switch attribute macros to use 'LLVM_' as a prefix. We retain the old names 2010-10-23 08:10:43 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00
Mem2Reg.cpp Remove outdated references to dominance frontiers. 2011-01-18 03:53:26 +00:00
PromoteMemoryToRegister.cpp Convert two std::vectors to SmallVectors for a 3.4% speedup running -scalarrepl 2011-01-23 08:03:04 +00:00
SimplifyCFG.cpp SimplifyCFG: Track the number of used icmps when turning a icmp chain into a switch. If we used only one icmp, don't turn it into a switch. 2011-02-07 22:37:28 +00:00
SimplifyInstructions.cpp Speed up instsimplify by about 10-15% by not bothering to retry 2011-01-03 10:50:04 +00:00
SSAUpdater.cpp fix PR9017, a bug where we'd assert when promoting in unreachable 2011-01-24 03:29:07 +00:00
UnifyFunctionExitNodes.cpp Now with fewer extraneous semicolons! 2010-10-07 22:25:06 +00:00
Utils.cpp Add a new convenience pass for testing InstructionSimplify. Previously 2010-12-20 20:54:37 +00:00
ValueMapper.cpp fix PR9015, a crash linking recursive metadata. 2011-01-24 03:18:24 +00:00