llvm-6502/test/Transforms
Chris Lattner 4034e14985 teach GVN to widen integer loads when they are overaligned, when doing an
wider load would allow elimination of subsequent loads, and when the wider
load is still a native integer type.  This eliminates a ton of loads on 
various benchmarks involving struct fields, though it is somewhat hobbled
by clang not being very aggressive about field alignment.

This is yet another step along the way towards resolving PR6627.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130390 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-28 07:29:08 +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 Roll r127459 back in: 2011-03-11 21:52:04 +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 Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +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 Add an obvious missing safety check to DAE::RemoveDeadArgumentsFromCallers. 2011-03-01 00:33:47 +00:00
DeadStoreElimination * The DSE code that tested for overlapping needed to take into account the fact 2011-03-30 21:37:19 +00:00
EarlyCSE Duncan deftly points out that readnone functions aren't 2011-01-03 23:38:13 +00:00
FunctionAttrs Make ModRefBehavior a lattice. Use this to clean up AliasAnalysis 2010-11-10 01:02:18 +00:00
GlobalDCE
GlobalOpt Add back a couple checks removed by r129128; the fact that an intitializer 2011-04-09 09:11:09 +00:00
GVN teach GVN to widen integer loads when they are overaligned, when doing an 2011-04-28 07:29:08 +00:00
IndVarSimplify Fixes PR9730: indvars: An asserting value handle still pointed to this value 2011-04-27 23:00:03 +00:00
Inline relax testcase a bit. 2011-01-14 07:46:33 +00:00
InstCombine Transform: "icmp eq (trunc (lshr(X, cst1)), cst" to "icmp (and X, mask), cst" 2011-04-26 20:18:20 +00:00
InstSimplify Teach ComputeMaskedBits about sub nsw. 2011-03-12 17:18:11 +00:00
Internalize Add test for r127138. 2011-03-07 21:28:14 +00:00
IPConstantProp more test cleanup 2010-09-02 22:38:56 +00:00
JumpThreading Fix an infinite alternation in JumpThreading where two transforms would repeatedly undo each other. The solution is to perform more aggressive constant folding to make one of the edges just folded away rather than trying to thread it. 2011-04-14 21:35:50 +00:00
LCSSA Do not add PHIs with no users when creating LCSSA form. Patch by Andrew Clinton. 2011-03-15 07:41:25 +00:00
LICM PR9604; try to deal with RAUW updates correctly in the AST. I'm not convinced 2011-04-09 06:55:46 +00:00
LoopDeletion Make LoopDeletion work on loops with multiple edges, as long as the incoming 2011-02-22 22:25:39 +00:00
LoopIdiom Preserve line no. info. 2011-03-07 22:43:45 +00:00
LoopRotate fix PR9523, a crash in looprotate on a non-canonical loop made out of indirectbr. 2011-04-09 07:25:58 +00:00
LoopSimplify Avoid creating canonical induction variables for non-native types. 2011-03-18 16:50:32 +00:00
LoopStrengthReduce Avoid creating canonical induction variables for non-native types. 2011-03-18 16:50:32 +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 Add an atomic lowering pass 2010-08-03 16:19:16 +00:00
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
PhaseOrdering make a couple of changes to the standard pass pipeline: 2011-04-26 20:45:33 +00:00
PruneEH
Reassociate Fix reassociate to use a worklist instead of recursing when new 2011-04-12 00:11:56 +00:00
ScalarRepl make a couple of changes to the standard pass pipeline: 2011-04-26 20:45:33 +00:00
SCCP Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
SimplifyCFG 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
SimplifyLibCalls Preserve line number information while simplifying libcalls. 2011-03-09 21:27:52 +00:00
Sink Make BasicAliasAnalysis a normal AliasAnalysis implementation which 2010-10-18 18:04:47 +00:00
StripSymbols DIGlobalVariable can be used to encode debug info for globals that are directly folded into a constant by FE. 2010-08-25 18:52:02 +00:00
TailCallElim Add a test for TCE return duplication. 2011-01-29 04:53:35 +00:00
TailDup The output of opt -stats must be sent to stderr. Patch by NAKAMURA Takumi! 2010-09-01 18:32:56 +00:00