llvm-6502/test/Transforms
Chris Lattner fddcf47a24 make jump threading recursively simplify expressions instead of doing it
just one level deep.  On the testcase we go from getting this:

F1:                                               ; preds = %T2
  %F = and i1 true, %cond                         ; <i1> [#uses=1]
  br i1 %F, label %X, label %Y

to a fully threaded:

F1:                                               ; preds = %T2
  br label %Y


This changes gets us to the point where we're forming (too many) switch 
instructions on doug's strswitch testcase.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86646 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-10 01:57:31 +00:00
..
ABCD Revert my previous patch to ABCD and fix things the right way. There are two problems addressed 2009-11-09 00:44:44 +00:00
ADCE Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
ArgumentPromotion Make opt default to not adding a target data string and update tests that depend on target data to supply it within the test 2009-11-03 15:29:06 +00:00
BlockPlacement Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
BranchFolding Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
CodeExtractor Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
CodeGenPrepare Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
CondProp Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
ConstantMerge Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
ConstProp Convert a few tests to FileCheck for PR5307. 2009-10-26 22:52:03 +00:00
DeadArgElim Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
DeadStoreElimination remove empty files. 2009-11-07 18:03:32 +00:00
FunctionAttrs Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
GlobalDCE Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
GlobalOpt Re-commit r86077 now that r86290 fixes the 179.art and 175.vpr ARM regressions. 2009-11-07 00:16:28 +00:00
GVN Default-addressspace null pointers don't alias anything. This allows 2009-11-09 19:29:11 +00:00
IndVarSimplify Make opt default to not adding a target data string and update tests that depend on target data to supply it within the test 2009-11-03 15:29:06 +00:00
Inline Make opt default to not adding a target data string and update tests that depend on target data to supply it within the test 2009-11-03 15:29:06 +00:00
InstCombine if a 'with overflow' intrinsic just has the normal result used, simplify 2009-11-09 07:07:56 +00:00
Internalize Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
IPConstantProp Constant propagating byval pointer is safe if function is readonly. 2009-09-24 18:33:42 +00:00
JumpThreading make jump threading recursively simplify expressions instead of doing it 2009-11-10 01:57:31 +00:00
LCSSA Trim a bunch of unneeded code from this testcase. 2009-11-10 01:33:08 +00:00
LICM Convert a few tests to FileCheck for PR5307. 2009-10-26 22:52:03 +00:00
LoopDeletion Make LoopDeletion check the maximum backedge taken count, rather than the 2009-10-23 17:10:01 +00:00
LoopIndexSplit Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
LoopRotate Make these tests more interesting by using 2009-10-24 23:23:04 +00:00
LoopSimplify The introduction of indirectbr meant the introduction of 2009-11-05 21:14:46 +00:00
LoopStrengthReduce Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
LoopUnroll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
LoopUnswitch Move the dominator verification code out of special code embedded within 2009-09-28 00:27:48 +00:00
LowerInvoke Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
LowerSetJmp Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
LowerSwitch Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
Mem2Reg fix a bug exposed by moving SRoA earlier which caused a crash building kc++ 2009-11-02 04:37:17 +00:00
MemCpyOpt Make opt default to not adding a target data string and update tests that depend on target data to supply it within the test 2009-11-03 15:29:06 +00:00
MergeFunc Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
PruneEH Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
Reassociate Convert more tests to avoid llvm-as. 2009-09-11 18:36:27 +00:00
ScalarRepl Make opt default to not adding a target data string and update tests that depend on target data to supply it within the test 2009-11-03 15:29:06 +00:00
SCCP reimplement multiple return value handling in IPSCCP, making it 2009-11-03 23:40:48 +00:00
SimplifyCFG Revert r85667. LoopUnroll currently can't call utility functions which 2009-10-31 17:33:01 +00:00
SimplifyLibCalls Teach SimplifyLibCalls to fold memcmp calls with constant arguments. 2009-11-05 17:44:22 +00:00
SRETPromotion Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
SSI Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
StripSymbols Update test. 2009-09-09 02:41:50 +00:00
TailCallElim Improve tail call elimination to handle the switch statement. 2009-11-07 21:10:15 +00:00
TailDup Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00