llvm-project/llvm/test/Transforms/SimplifyCFG
Hans Wennborg 4ab4a8e63a Fix PR10103: Less code for enum type translation.
In cases such as the attached test, where the case value for a switch
destination is used in a phi node that follows the destination, it
might be better to replace that value with the condition value of the
switch, so that more blocks can be folded away with
TryToSimplifyUncondBranchFromEmptyBlock because there are less
conflicts in the phi node.

llvm-svn: 133344
2011-06-18 10:28:47 +00:00
..
2002-05-05-EmptyBlockMerge.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2002-05-21-PHIElimination.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2002-06-24-PHINode.ll fix a bunch of spurious failures for people whose home directory 2009-09-11 17:02:12 +00:00
2002-09-24-PHIAssertion.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2003-03-07-DominateProblem.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2003-08-05-InvokeCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2003-08-05-MishandleInvoke.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2003-08-17-BranchFold.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2003-08-17-BranchFoldOrdering.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2003-08-17-FoldSwitch-dbg.ll Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
2003-08-17-FoldSwitch.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2004-12-10-SimplifyCFGCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2005-06-16-PHICrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2005-08-01-PHIUpdateFail.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2005-08-03-PHIFactorCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2005-10-02-InvokeSimplify.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2005-12-03-IncorrectPHIFold.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-02-17-InfiniteUnroll.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-06-12-InfLoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-08-03-Crash.ll Improve the bail-out predicate to really only kick in when phi 2011-04-26 17:41:02 +00:00
2006-10-19-UncondDiv.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-10-29-InvokeCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-12-08-Ptr-ICmp-Branch.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-11-22-InvokeNoUnwind.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-12-21-Crash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-01-02-hoist-fp-add.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-05-16-PHIBlockMerge.ll Fix mistyped CHECK lines. 2011-03-09 22:07:31 +00:00
2008-07-13-InfLoopMiscompile.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-09-08-MultiplePred.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-09-17-SpeculativeHoist.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-10-03-SpeculativelyExecuteBeforePHI.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-12-06-SingleEntryPhi.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-12-16-DCECond.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-01-18-PHIPropCrash.ll Optimize test more. 2009-11-10 21:02:18 +00:00
2009-01-19-UnconditionalTrappingConstantExpr.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-03-05-Speculative-Hoist-Dbg.ll Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
2009-05-12-externweak.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-06-15-InvokeCrash.ll Floating-point add, sub, and mul are now spelled fadd, fsub, and fmul, 2010-03-02 01:11:08 +00:00
2010-03-30-InvokeCrash.ll testcase for r99914, provided by baldrick! 2010-03-31 20:37:13 +00:00
2010-10-24-OnlyUnwindInEntry.ll Fix PR8445: a block with no predecessors may be the entry block, in which case 2010-10-24 12:23:30 +00:00
2011-03-08-UnreachableUse.ll PR9420; an instruction before an unreachable is guaranteed not to have any 2011-03-09 00:48:33 +00:00
BrUnwind.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
DeadSetCC.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
EqualPHIEdgeBlockMerge.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
ForwardSwitchConditionToPHI.ll Fix PR10103: Less code for enum type translation. 2011-06-18 10:28:47 +00:00
HoistCode.ll fix a bunch of spurious failures for people whose home directory 2009-09-11 17:02:12 +00:00
MagicPointer.ll Re-apply r124518 with fix. Watch out for invalidated iterator. 2011-01-29 04:46:23 +00:00
PR9946.ll Add test for PR9946. 2011-05-19 02:35:26 +00:00
PhiBlockMerge.ll SimplifyCFG: Add CostRemaining parameter to DominatesMergePoint 2011-04-29 18:47:31 +00:00
PhiBlockMerge2.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
PhiEliminate.ll - Insert new instructions before DomBlock's terminator, 2010-12-14 08:46:09 +00:00
PhiEliminate2.ll SimplifyCFG: Add Trunc, ZExt and SExt to the list of cheap instructions for phi node folding 2011-04-29 18:47:25 +00:00
PhiEliminate3.ll SimplifyCFG: Expose phi node folding cost threshold as command line parameter 2011-04-29 18:47:38 +00:00
PhiNoEliminate.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
SpeculativeExec.ll fix a bunch of spurious failures for people whose home directory 2009-09-11 17:02:12 +00:00
UncondBranchToReturn.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
UnreachableEliminate.ll PR9450: Make switch optimization in SimplifyCFG not dependent on the ordering 2011-03-15 02:23:35 +00:00
basictest.ll Re-apply r124518 with fix. Watch out for invalidated iterator. 2011-01-29 04:46:23 +00:00
branch-branch-dbginfo.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
branch-cond-merge.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
branch-cond-prop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
branch-fold-dbg.ll Do not let debug info interfer with branch folding. 2011-04-07 23:11:25 +00:00
branch-fold-test.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
branch-fold.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
branch-phi-thread.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
branch_fold_dbg.ll Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
dbginfo.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
dce-cond-after-folding-terminator.ll Add a parameter to ConstantFoldTerminator() that callers can use to ask it to also clean up the condition of any conditional terminator it folds to be unconditional, if that turns the condition into dead code. This just means it calls RecursivelyDeleteTriviallyDeadInstructions() in strategic spots. It defaults to the old behavior. 2011-05-22 16:24:18 +00:00
dg.exp sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
duplicate-phis.ll fix two bogus tests that the asmparser now rejects. 2009-12-30 05:54:51 +00:00
hoist-common-code.dbg.ll Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
hoist-common-code.ll fix a bunch of spurious failures for people whose home directory 2009-09-11 17:02:12 +00:00
hoist-dbgvalue.ll While hoisting common code from if/else, hoist debug info intrinsics if they match. 2011-04-07 17:27:36 +00:00
indirectbr.ll If the block that we're threading through is jumped to by an indirect branch, 2011-06-04 09:42:04 +00:00
invoke_unwind.ll make these tests a bit less fragile 2010-12-13 05:10:30 +00:00
iterative-simplify.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
noreturn-call.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
return-merge.ll fix a bunch of spurious failures for people whose home directory 2009-09-11 17:02:12 +00:00
select-gep.ll Revert "SimplifyCFG: GEPs with just one non-constant index are also cheap." 2011-02-25 10:33:33 +00:00
speculate-with-offset.ll Factor out Instruction::isSafeToSpeculativelyExecute's code for 2010-11-11 21:23:25 +00:00
switch-masked-bits.ll SimplifyCFG: Use ComputeMaskedBits to prune dead cases from switch instructions. 2011-05-14 15:57:25 +00:00
switch-on-const-select.ll Teach SimplifyCFG that (switch (select cond, X, Y)) is better expressed as a branch. 2011-02-28 09:44:07 +00:00
switch-simplify-crash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
switch-to-icmp.ll 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
switch_create.ll 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
switch_formation.dbg.ll 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
switch_switch_fold.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
switch_switch_fold_dbginfo.ll Fix PR10103: Less code for enum type translation. 2011-06-18 10:28:47 +00:00
switch_thread.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
trap-debugloc.ll Simplify cfg inserts a call to trap when unreachable code is detected. Assign DebugLoc to this new trap instruction. 2011-04-27 17:59:27 +00:00
trapping-load-unreachable.ll Test case for r105914. 2010-06-13 16:16:54 +00:00
two-entry-phi-return.dbg.ll Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
two-entry-phi-return.ll fix a bunch of spurious failures for people whose home directory 2009-09-11 17:02:12 +00:00