llvm-6502/test/Transforms
Dan Gohman 5c89b5240c Re-apply r80926, with fixes: keep the domtree informed of new blocks
that get created during loop unswitching, and fix SplitBlockPredecessors'
LCSSA updating code to create new PHIs instead of trying to just move
existing ones.

Also, optimize Loop::verifyLoop, since it gets called a lot. Use
searches on a sorted list of blocks instead of calling the "contains"
function, as is done in other places in the Loop class, since "contains"
does a linear search. Also, don't call verifyLoop from LoopSimplify or
LCSSA, as the PassManager is already calling verifyLoop as part of
LoopInfo's verifyAnalysis.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81221 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-08 15:45:00 +00:00
..
ADCE Allow readonly functions to unwind exceptions. Teach 2009-05-06 06:49:50 +00:00
ArgumentPromotion Change CallGraphNode to maintain it's Function as an AssertingVH 2009-09-01 06:31:31 +00:00
BlockPlacement Rationalize the names of passes that print information: 2008-09-23 12:47:39 +00:00
BranchFolding
CodeExtractor sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
CodeGenPrepare reenable test 2008-11-24 21:27:20 +00:00
CondProp Optimize conditional branch on i1 phis with non-constant inputs. 2009-04-14 23:40:03 +00:00
ConstantMerge Eliminate uses of %prcontext. 2009-09-05 11:35:16 +00:00
ConstProp Eliminate some Tclisms. 2009-09-05 11:34:46 +00:00
DeadArgElim aha, DAE does have to think about PHI nodes. Many thanks to "Dr Evil" (aka Duncan) 2009-03-18 16:48:45 +00:00
DeadStoreElimination fix PR4815: some cases where DeleteDeadInstruction can delete 2009-09-02 06:31:02 +00:00
FunctionAttrs Revert r70876 and add a testcase (@c7) showing the problem: 2009-05-07 18:08:34 +00:00
GlobalDCE While replacing an MDNode elment, properly update MDNode's operand list. 2009-09-04 21:32:05 +00:00
GlobalOpt Add a testcase for the GlobalOpt inbounds fix. 2009-09-07 23:04:59 +00:00
GVN Eliminate uses of %prcontext. 2009-09-05 11:35:16 +00:00
GVNPRE Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
IndMemRem Actually run the test in this directory. 2009-01-25 08:05:07 +00:00
IndVarSimplify Eliminate uses of %prcontext. 2009-09-05 11:35:16 +00:00
Inline Eliminate uses of %prcontext. 2009-09-05 11:35:16 +00:00
InstCombine instcombine transforms vector loads that are only used by 2009-09-08 03:44:51 +00:00
Internalize Teach the internalize pass to also internalize 2009-01-05 21:24:45 +00:00
IPConstantProp Modify some ipconstprop tests to also test with invokes. 2008-06-19 09:27:44 +00:00
JumpThreading make jump threading handle lexically identical compare instructions 2009-06-19 16:27:56 +00:00
LCSSA Quote another '%S' in a test. 2009-09-05 12:38:44 +00:00
LICM rename test 2009-08-30 22:14:17 +00:00
LoopDeletion don't spew tons of stuff to the output. This testcase is *not* for 2008-12-03 06:41:50 +00:00
LoopIndexSplit Fix PR3913, patch by Jakub Staszak! 2009-08-28 00:43:14 +00:00
LoopRotate Testcase for PR2639. 2009-04-23 04:30:52 +00:00
LoopSimplify Teach LoopSimplify how to merge multiple loop exits into a single exit, 2009-06-27 21:30:38 +00:00
LoopStrengthReduce tighten test. 2009-09-07 22:15:23 +00:00
LoopUnroll remove a test that depends on -debug. 2009-03-13 20:31:48 +00:00
LoopUnswitch Re-apply r80926, with fixes: keep the domtree informed of new blocks 2009-09-08 15:45:00 +00:00
LowerInvoke sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
LowerSetJmp sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
LowerSwitch sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
Mem2Reg Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
MemCpyOpt Fix PR4882, by making MemCpyOpt not dereference removed stores to get the 2009-09-08 00:27:14 +00:00
MergeFunc Given two identical weak functions, produce one internal function and two weak 2009-06-12 15:56:56 +00:00
PredicateSimplifier sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
PruneEH Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
RaiseAllocations sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
Reassociate Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
ScalarRepl Don't crash trying to promote VLAs. 2009-08-17 05:37:31 +00:00
SCCP Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
SimplifyCFG Reapply 79977. 2009-08-28 23:24:31 +00:00
SimplifyLibCalls Eliminate uses of %prcontext. 2009-09-05 11:35:16 +00:00
SRETPromotion Add a basic test for the SRETPromotion pass. 2008-08-07 15:55:18 +00:00
SSI Fix up PHI nodes correctly in the presence of unreachable BBs, part two. Also 2009-08-19 07:16:57 +00:00
StripSymbols sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
TailCallElim tweak test, add PR# 2009-09-07 22:14:41 +00:00
TailDup Remove obsolete -f flags. 2009-08-25 15:38:29 +00:00