llvm-6502/test/Transforms
Benjamin Kramer 91e37ef278 InstCombine: Add a bunch of combines of the form x | (y ^ z).
We usually catch this kind of optimization through InstSimplify's distributive
magic, but or doesn't distribute over xor in general.

"A | ~(A | B) -> A | ~B" hits 24 times on gcc.c.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126081 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-20 13:23:43 +00:00
..
ADCE
ArgumentPromotion fix PR8932, a case where arg promotion could infinitely promote. 2011-01-16 08:09:24 +00:00
BlockPlacement
BranchFolding
CodeExtractor
CodeGenPrepare temporarily revert r123526. While working on a follow-on patch I 2011-01-15 07:51:19 +00:00
ConstantMerge Don't merge two constants if we care about the address of both. 2011-01-16 17:05:09 +00:00
ConstProp When loading from a constant, fold inttoptr if the integer type and the resulting pointer type both have the same size. 2011-02-06 20:11:56 +00:00
CorrelatedValuePropagation Test for lazy value info's ability to prove the absense of NULLs in pointers. 2011-01-16 21:57:20 +00:00
DeadArgElim Teach DAE to look for functions whose arguments are unused, and change all callers to pass in an undefvalue instead. 2011-01-16 21:25:33 +00:00
DeadStoreElimination Fix PR8728, a miscompilation I recently introduced. When optimizing 2010-12-06 01:48:06 +00:00
EarlyCSE Duncan deftly points out that readnone functions aren't 2011-01-03 23:38:13 +00:00
FunctionAttrs
GlobalDCE
GlobalOpt Add unnamed_addr when we can show that address of a global is not used. 2011-01-19 16:32:21 +00:00
GVN Give GVN back the ability to perform simple conditional propagation on conditional branch values. 2010-12-21 23:54:34 +00:00
IndVarSimplify
Inline relax testcase a bit. 2011-01-14 07:46:33 +00:00
InstCombine InstCombine: Add a bunch of combines of the form x | (y ^ z). 2011-02-20 13:23:43 +00:00
InstSimplify Teach instsimplify that X+Y>=X+Z is the same as Y>=Z if neither side overflows, 2011-02-13 17:15:40 +00:00
Internalize
IPConstantProp
JumpThreading prevent jump threading from merging blocks when their address is 2011-02-18 04:43:06 +00:00
LCSSA Rename 'loopsimplify' to 'loop-simplify'. 2011-02-10 23:38:10 +00:00
LICM Rename 'loopsimplify' to 'loop-simplify'. 2011-02-10 23:38:10 +00:00
LoopDeletion
LoopIdiom rewrite the memset_pattern pattern generation stuff to accept any 2/4/8/16-byte 2011-02-19 19:56:44 +00:00
LoopRotate Do not hoist @llvm.dbg.value. Here, @llvm.dbg.value is "referring" a value that is modified inside loop. 2011-02-14 23:03:23 +00:00
LoopSimplify Rename 'loopsimplify' to 'loop-simplify'. 2011-02-10 23:38:10 +00:00
LoopStrengthReduce Teach RecursivelyDeleteDeadPHINodes to handle multiple self-references. Patch 2011-02-20 08:38:20 +00:00
LoopUnroll add a testcase for r125827 2011-02-18 05:05:01 +00:00
LoopUnswitch Factor code for testing whether replacing one value with another 2010-11-18 19:59:41 +00:00
LowerAtomic
LowerInvoke
LowerSetJmp
LowerSwitch
Mem2Reg
MemCpyOpt Actually check memcpy lengths, instead of just commenting about 2011-01-21 22:07:57 +00:00
MergeFunc When removing a function from the function set and adding it to deferred, we 2011-02-09 06:32:02 +00:00
PruneEH
Reassociate fix PR9215, preventing -reassociate from clearing nsw/nuw when 2011-02-17 01:29:24 +00:00
ScalarRepl merge all the "crash tests" into crash.ll 2011-01-24 03:37:34 +00:00
SCCP
SimplifyCFG 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
SimplifyLibCalls SimplifyLibCalls: Add missing legalize check on various printf to puts and 2011-02-12 18:19:57 +00:00
Sink
SRETPromotion
StripSymbols
TailCallElim Add a test for TCE return duplication. 2011-01-29 04:53:35 +00:00
TailDup