llvm-6502/test/Transforms
Dan Gohman 2276a7bc8e Teach instcombine's visitLoad to scan back several instructions
to find opportunities for store-to-load forwarding or load CSE,
in the same way that visitStore scans back to do DSE. Also, define
a new helper function for testing whether the addresses of two
memory accesses are known to have the same value, and use it in
both visitStore and visitLoad.

These two changes allow instcombine to eliminate loads in code
produced by front-ends that frequently emit obviously redundant
addressing for memory references.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57608 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 23:19:35 +00:00
..
ADCE
AddReadAttrs Ignore loads from and stores to local memory (i.e. allocas) 2008-10-04 13:24:24 +00:00
ArgumentPromotion
BlockPlacement Rationalize the names of passes that print information: 2008-09-23 12:47:39 +00:00
BranchFolding
CodeExtractor
CondProp
ConstantMerge
ConstProp
DeadArgElim Support inreg, zext and sext as return value attributes. 2008-09-29 20:49:50 +00:00
DeadStoreElimination
GlobalDCE
GlobalOpt Resolve aliases, when possible 2008-09-09 19:04:59 +00:00
GVN
GVNPRE
IndVarsSimplify Allow the construction of SCEVs with SCEVCouldNotCompute operands, by 2008-10-04 11:19:07 +00:00
Inline Implement function notes as function attributes. 2008-09-26 23:51:19 +00:00
InstCombine Teach instcombine's visitLoad to scan back several instructions 2008-10-15 23:19:35 +00:00
Internalize
IPConstantProp
JumpThreading
LCSSA
LICM
LoopDeletion
LoopIndexSplit Check loop exit predicate properly while eliminating one iteration loop. 2008-10-10 22:02:57 +00:00
LoopRotate
LoopSimplify
LoopStrengthReduce Remove. 2008-09-09 21:41:34 +00:00
LoopUnroll
LoopUnswitch
LowerInvoke
LowerSetJmp
LowerSwitch
Mem2Reg
MemCpyOpt
PredicateSimplifier
PruneEH Rationalize the names of passes that print information: 2008-09-23 12:47:39 +00:00
RaiseAllocations
Reassociate
ScalarRepl Allow scalarrepl to treat an all-zero GEP just as bitcast. 2008-10-06 16:23:31 +00:00
SCCP
SimplifyCFG Nick Lewycky's patch. 2008-10-03 18:57:37 +00:00
SimplifyLibCalls
SRETPromotion
StripSymbols
TailCallElim
TailDup