llvm/test/Transforms
Jiangning Liu d5db8765d6 Implement global merge optimization for global variables.
This commit implements two command line switches -global-merge-on-external
and -global-merge-aligned, and both of them are false by default, so this
optimization is disabled by default for all targets.

For ARM64, some back-end behaviors need to be tuned to get this optimization
further enabled.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208934 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-15 23:45:42 +00:00
..
ADCE
AddDiscriminators Fix bug 19437 - Only add discriminators for DWARF 4 and above. 2014-04-17 22:33:50 +00:00
ArgumentPromotion IR: Conservatively verify inalloca arguments 2014-04-30 17:22:00 +00:00
AtomicExpandLoadLinked/ARM Atomics: promote ARM's IR-based atomics pass to CodeGen. 2014-04-17 18:22:47 +00:00
BBVectorize Allow vectorization of bit intrinsics in BB Vectorizer. 2014-04-25 03:33:48 +00:00
BranchFolding
CodeExtractor
CodeGenPrepare
ConstantHoisting Move test from r207969 to another folder and rename it. 2014-05-05 18:10:15 +00:00
ConstantMerge
ConstProp Teach the constant folder to look through bitcast constant expressions 2014-05-15 09:56:28 +00:00
CorrelatedValuePropagation
DeadArgElim
DeadStoreElimination
DebugIR
EarlyCSE
FunctionAttrs
GCOVProfiling
GlobalDCE Convert test to FileCheck. 2014-05-13 00:07:46 +00:00
GlobalMerge Implement global merge optimization for global variables. 2014-05-15 23:45:42 +00:00
GlobalOpt IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
GVN [GVN] Pass the phi-translated address of a load instead of the untranslated 2014-05-02 17:59:17 +00:00
IndVarSimplify
Inline Don't insert lifetime.end markers between a musttail call and ret 2014-05-15 21:10:46 +00:00
InstCombine Reverting r208848, reason: build failure: sanitizer-x86_64-linux-bootstrap/builds/3399 2014-05-15 08:22:55 +00:00
InstSimplify InstSimplify: Optimize signed icmp of -(zext V) 2014-05-14 20:16:28 +00:00
Internalize Convert test to FileCheck. 2014-05-13 00:31:31 +00:00
IPConstantProp
JumpThreading
LCSSA
LICM
LoopDeletion
LoopIdiom
LoopReroll
LoopRotate
LoopSimplify
LoopStrengthReduce [LSR] Add llc testcase for r207271/r207569. 2014-05-02 23:49:01 +00:00
LoopUnroll Move late partial-unrolling thresholds into the processor definitions 2014-05-08 09:14:44 +00:00
LoopUnswitch
LoopVectorize [Test] Trim unnecessary .c and .cpp from config.suffix in lit.local.cfg 2014-05-12 19:57:31 +00:00
LowerAtomic
LowerExpectIntrinsic
LowerInvoke
LowerSwitch
Mem2Reg
MemCpyOpt Treat lifetime.start'd memory like we treat freshly alloca'd memory. Patch by Björn Steinbrink! 2014-03-26 23:45:15 +00:00
MergeFunc IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
MetaRenamer
ObjCARC
PhaseOrdering
PruneEH
Reassociate
Reg2Mem
SampleProfile
Scalarizer
ScalarRepl
SCCP
SeparateConstOffsetFromGEP/NVPTX Add an optimization that does CSE in a group of similar GEPs. 2014-05-01 18:38:36 +00:00
SimplifyCFG Add ExtractValue instruction to SimplifyCFG's ComputeSpeculationCost 2014-05-09 17:02:46 +00:00
Sink
SLPVectorizer SLPVectorizer: When sorting by domination for CSE don't assert on unreachable code. 2014-05-09 23:28:49 +00:00
SROA
StripSymbols
StructurizeCFG
TailCallElim Improve 'tail' call marking in TRE. A bootstrap of clang goes from 375k calls marked tail in the IR to 470k, however this improvement does not carry into an improvement of the call/jmp ratio on x86. The most common pattern is a tail call + br to a block with nothing but a 'ret'. 2014-05-05 23:59:03 +00:00
TailDup