llvm-project/llvm/test/Transforms
Peter Collingbourne 7a1e5bbe4e Make WholeProgramDevirt understand ConstStruct vtables.
Based on a patch by LemonBoy!

Differential Revision: https://reviews.llvm.org/D26581

llvm-svn: 289162
2016-12-09 00:33:27 +00:00
..
ADCE
AddDiscriminators Introduce updateDiscriminator interface to DILocation to make it cleaner assigning discriminators. 2016-10-26 15:48:45 +00:00
AlignmentFromAssumptions
ArgumentPromotion
AtomicExpand
BBVectorize [ValueTracking] An improvement to IR ValueTracking on Non-negative Integers 2016-10-12 16:18:43 +00:00
BDCE [BDCE] Skip metadata while replacing uses. 2016-12-07 21:47:32 +00:00
BranchFolding
CodeExtractor CodeExtractor : Add ability to preserve profile data. 2016-08-02 02:15:45 +00:00
CodeGenPrepare AMDGPU: Implement isCheapAddrSpaceCast 2016-12-02 18:12:53 +00:00
ConstProp Don't remove side effecting instructions due to ConstantFoldInstruction 2016-07-22 04:54:44 +00:00
ConstantHoisting This implements a more optimal algorithm for selecting a base constant in 2016-07-14 07:44:20 +00:00
ConstantMerge
Coroutines [coroutines] Store an address of destroy OR cleanup part in the coroutine frame. 2016-10-08 00:22:50 +00:00
CorrelatedValuePropagation [CVP] Remove use of removed flag (-cvp-dont-process-adds) from the test 2016-11-29 16:43:30 +00:00
CountingFunctionInserter Add a counter-function insertion pass 2016-09-01 09:42:39 +00:00
CrossDSOCFI [PM] Port CrossDSOCFI to the new pass manager. 2016-07-09 03:25:35 +00:00
DCE llvm/test/Transforms/DCE/calls-errno.ll: Suppress checking @pow(+0,-1). 2016-11-04 18:50:45 +00:00
DeadArgElim DeadArgElim: Don't mark swifterror arguments as unused 2016-09-21 15:29:08 +00:00
DeadStoreElimination [DSE] Don't remove stores made live by a call which unwinds. 2016-08-12 01:09:53 +00:00
EarlyCSE [EarlyCSE] Make MemorySSA memory dependency check more aggressive. 2016-10-25 16:18:47 +00:00
EliminateAvailableExternally
Float2Int [PM] Port float2int to the new pass manager 2016-06-24 23:32:02 +00:00
ForcedFunctionAttrs
FunctionAttrs IR, X86: Understand !absolute_symbol metadata on global variables. 2016-12-08 19:01:00 +00:00
FunctionImport [llvm] Remove redundant --check-prefix=CHECK from tests 2016-10-24 18:57:55 +00:00
GCOVProfiling DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
GVN When GVN removes a redundant load, it should not modify the debug location of the dominating load. 2016-12-07 12:31:36 +00:00
GVNHoist [GVNHoist] Invalidate MemDep when an instruction is moved. 2016-12-07 19:55:59 +00:00
GlobalDCE
GlobalMerge Teach llvm::StripDebugInfo() about global variable !dbg attachments. 2016-10-10 17:53:33 +00:00
GlobalOpt [GlobalOpt] Dead Eliminate declarations 2016-09-15 20:26:27 +00:00
GlobalSplit [GlobalSplit] Port to the new pass manager. 2016-11-21 00:28:23 +00:00
GuardWidening
IPConstantProp
IRCE [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
IndVarSimplify [IndVars] Change the order to compute WidenAddRec in widenIVUse. 2016-11-15 17:34:52 +00:00
InferFunctionAttrs [InferAttributes] Don't access parameters that don't exist. 2016-09-20 23:10:31 +00:00
Inline [DIExpression] Introduce a dedicated DW_OP_LLVM_fragment operation 2016-12-05 18:04:47 +00:00
InstCombine [InstCombine] add tests for umin+icmp; NFC 2016-12-08 23:44:58 +00:00
InstMerge
InstSimplify [InstSimplify] Add "X / 1.0" to SimplifyFDivInst. 2016-12-08 23:27:40 +00:00
InterleavedAccess/X86 Add a pass to optimize patterns of vectorized interleaved memory accesses for 2016-10-14 18:20:41 +00:00
Internalize
JumpThreading Revert "[JumpThreading] Unfold selects that depend on the same condition" 2016-11-15 15:42:23 +00:00
LCSSA Revert "Revert r275883 and r275891. They seem to cause PR28608." 2016-07-20 01:55:27 +00:00
LICM Enable Loop Sink pass for functions that has profile. 2016-11-09 00:58:19 +00:00
LoadCombine
LoadStoreVectorizer [LoadStoreVectorizer] Enable vectorization of stores in the presence of an aliasing load 2016-11-23 17:43:15 +00:00
LoopDataPrefetch [PM] Port LoopDataPrefetch AArch64 tests to new pass manager 2016-08-22 12:59:58 +00:00
LoopDeletion [PM] Port Dead Loop Deletion Pass to the new PM 2016-07-14 18:28:29 +00:00
LoopDistribute [BPI] Add new LazyBPI analysis 2016-07-28 23:31:12 +00:00
LoopIdiom Target independent codesize heuristics for Loop Idiom Recognition 2016-08-11 18:28:33 +00:00
LoopInterchange [LoopInterchange] Track all dependencies, not just anti dependencies. 2016-09-21 19:16:47 +00:00
LoopLoadElim [LLE] Don't hoist conditionally executed loads 2016-06-28 04:02:47 +00:00
LoopReroll [LoopReroll] Make root-finding more aggressive. 2016-11-21 22:35:34 +00:00
LoopRotate
LoopSimplify [LoopSimplify] Preserve LCSSA when removing edges from unreachable blocks. 2016-11-18 21:01:12 +00:00
LoopSimplifyCFG
LoopStrengthReduce Revert r286999 which caused buildbot test failures. Some testcases need to be made target specific. 2016-11-15 19:42:05 +00:00
LoopUnroll [LoopUnroll] Implement profile-based loop peeling 2016-11-30 21:13:57 +00:00
LoopUnswitch [Loop Unswitch] Patch to selective unswitch only the reachable branch instructions. 2016-11-25 14:07:44 +00:00
LoopVectorize [LV] Scalarize operands of predicated instructions 2016-12-07 15:03:32 +00:00
LoopVersioning [LAA] Prevent invalid IR for loop-invariant bound in loop body 2016-12-05 21:25:03 +00:00
LoopVersioningLICM [Loop Vectorizer] Fixed memory confilict checks. 2016-08-28 08:53:53 +00:00
LowerAtomic
LowerExpectIntrinsic [Profile] handle select instruction in 'expect' lowering 2016-09-02 22:03:40 +00:00
LowerGuardIntrinsic [PM] Port LowerGuardIntrinsic to the new PM. 2016-07-28 22:08:41 +00:00
LowerInvoke [PM] Port LowerInvoke to the new pass manager 2016-08-12 17:28:27 +00:00
LowerSwitch
LowerTypeTests CFI-icall on Thumb 2016-12-08 00:32:26 +00:00
Mem2Reg
MemCpyOpt [MemCpyOpt] Don't emit IR in an unspecified order 2016-11-07 17:47:28 +00:00
MergeFunc
MetaRenamer
NameAnonGlobals [ThinLTO] Ensure anonymous globals renamed even at -O0 2016-09-17 20:40:16 +00:00
NaryReassociate [PM] Port NaryReassociate to the new PM 2016-07-21 22:28:52 +00:00
ObjCARC [ObjCARC] Traverse chain downwards to replace uses of argument passed to 2016-09-13 23:43:11 +00:00
PGOProfile [PGO] Fix PGO use ICE when there are unreachable BBs 2016-12-02 19:10:29 +00:00
PartiallyInlineLibCalls
PhaseOrdering
PlaceSafepoints [PlaceSafepoints] Don't call undef in test case; NFC 2016-06-25 01:40:54 +00:00
PreISelIntrinsicLowering [PM] Port PreISelIntrinsicLowering to the new PM 2016-06-24 20:13:42 +00:00
PruneEH [PruneEH] Be correct in the face IPO 2016-10-03 19:35:30 +00:00
Reassociate Fixed the lost FastMathFlags in Reassociate optimization. 2016-11-22 20:23:04 +00:00
Reg2Mem
RewriteStatepointsForGC [RS4GC] Strengthen coverage: add more tests 2016-10-07 20:34:00 +00:00
SCCP [SCCP] Make sure SCCP and ConstantFolding agree on undef >> a. 2016-12-08 22:28:53 +00:00
SLPVectorizer [SLP] Fix for PR6246: vectorization for scalar ops on vector elements. 2016-12-08 11:57:51 +00:00
SROA [DIExpression] Introduce a dedicated DW_OP_LLVM_fragment operation 2016-12-05 18:04:47 +00:00
SafeStack [safestack] Use non-thread-local unsafe stack pointer for Contiki OS 2016-10-14 17:56:00 +00:00
SampleProfile Before sample pgo annotation, do not inline a function that has no debug info. (NFC) 2016-11-22 22:50:01 +00:00
Scalarizer Scalarizer: Support scalarizing intrinsics 2016-07-25 20:02:54 +00:00
SeparateConstOffsetFromGEP [NVPTX] Enable the load-store vectorizer on nvptx. 2016-07-20 22:11:36 +00:00
SimplifyCFG [SimplifyCFG] auto-generate better checks; NFC 2016-11-25 21:12:39 +00:00
Sink Add a testcase for r275581 2016-07-19 17:52:41 +00:00
SpeculativeExecution SpeculativeExecution: Allow speculating more inst types 2016-10-28 20:00:33 +00:00
StraightLineStrengthReduce [SLSR] Call getPointerSizeInBits with the correct address space. 2016-07-11 18:13:28 +00:00
StripDeadPrototypes
StripSymbols [opt] Strip coverage if debug info is not present. 2016-10-17 20:05:35 +00:00
StructurizeCFG [StructurizeCFG] Fix infinite loop in rebuildSSA. 2016-11-29 21:49:02 +00:00
TailCallElim Avoid tail recursion elimination across calls with operand bundles 2016-11-07 21:01:49 +00:00
Util [DIExpression] Introduce a dedicated DW_OP_LLVM_fragment operation 2016-12-05 18:04:47 +00:00
WholeProgramDevirt Make WholeProgramDevirt understand ConstStruct vtables. 2016-12-09 00:33:27 +00:00