1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-24 05:23:45 +02:00
llvm-mirror/test/Transforms
Peter Collingbourne 5490ba4701 ThinLTOBitcodeWriter: Do not follow operand edges of type GlobalValue when looking for virtual functions.
Such edges may otherwise result in infinite recursion if a pointer to a vtable
is reachable from the vtable itself. This can happen in practice if a TU
defines the ABI types used to implement RTTI, and is itself compiled with RTTI.

Fixes PR32121.

llvm-svn: 296839
2017-03-02 23:10:17 +00:00
..
ADCE
AddDiscriminators Encode duplication factor from loop vectorization and loop unrolling to discriminator. 2017-02-10 21:09:07 +00:00
AlignmentFromAssumptions
ArgumentPromotion Verifier: Disallow a line number without a file in DISubprogram 2017-02-17 23:57:42 +00:00
AtomicExpand
BBVectorize Introduce -unroll-partial-threshold to separate PartialThreshold from Threshold in loop unorller. 2017-01-17 23:39:33 +00:00
BDCE
BranchFolding
CodeExtractor
CodeGenPrepare [BypassSlowDivision] Use ValueTracking to simplify run-time checks 2017-03-02 22:12:15 +00:00
ConstantHoisting [Constant Hoisting] Avoid inserting instructions before EH pads 2017-03-01 22:41:12 +00:00
ConstantMerge
ConstProp opt: Rename -default-data-layout flag to -data-layout and make it always override the layout. 2017-02-17 17:36:52 +00:00
Coroutines [coroutines] Spill the result of the invoke instruction correctly 2017-01-25 02:25:54 +00:00
CorrelatedValuePropagation Revert r282872 "CVP. Turn marking adds as no wrap on by default" 2017-02-23 22:29:00 +00:00
CountingFunctionInserter
CrossDSOCFI
DCE
DeadArgElim
DeadStoreElimination [DeadStoreElimination] Check function modref behavior before considering memory clobbered 2017-03-01 14:38:29 +00:00
EarlyCSE [EarlyCSE] Don't DSE across readnone functions that may throw 2017-01-17 20:15:47 +00:00
EliminateAvailableExternally
Float2Int
ForcedFunctionAttrs
FunctionAttrs [FunctionAttrs] try to extend nonnull-ness of arguments from a callsite back to its parent function 2017-02-13 23:10:51 +00:00
FunctionImport [ModuleSummaryAnalysis] Don't crash when referencing unnamed globals. 2017-02-22 18:53:38 +00:00
GCOVProfiling [IR] Remove the DIExpression field from DIGlobalVariable. 2016-12-20 02:09:43 +00:00
GlobalDCE [PH] Replace uses of AssertingVH from members of analysis results with 2017-01-24 12:55:57 +00:00
GlobalMerge Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
GlobalOpt Verifier: Disallow a line number without a file in DISubprogram 2017-02-17 23:57:42 +00:00
GlobalSplit
GuardWidening
GVN opt: Rename -default-data-layout flag to -data-layout and make it always override the layout. 2017-02-17 17:36:52 +00:00
GVNHoist Re-apply "[GVNHoist] Move GVNHoist to function simplification part of pipeline." 2017-03-02 16:16:47 +00:00
IndVarSimplify [ValueTracking] Don't do an unchecked shift in ComputeNumSignBits 2017-02-25 20:30:45 +00:00
InferAddressSpaces Bug 31948: Fix assertion when bitcasting constantexpr pointers 2017-02-17 00:32:19 +00:00
InferFunctionAttrs
Inline Strip debug info when inlining into a nodebug function. 2017-02-28 16:58:13 +00:00
InstCombine [InstCombine] Avoid faulty combines of select-cmp-br 2017-03-02 15:18:58 +00:00
InstMerge Remove the load hoisting code of MLSM, it is completely subsumed by GVNHoist 2017-01-24 19:55:36 +00:00
InstSimplify [InstSimplify] add nsw/nuw (xor X, signbit), signbit --> X 2017-02-18 21:59:09 +00:00
InterleavedAccess [ARM/AArch64] Support wide interleaved accesses 2017-03-02 15:11:20 +00:00
Internalize
IPConstantProp [IPCP] Don't propagate return value for naked functions. 2017-02-04 19:44:14 +00:00
IRCE [IRCE] Add a missing invariant check 2017-02-07 23:59:07 +00:00
JumpThreading [JumpThreading] Re-enable JumpThreading for guards 2017-02-17 04:21:14 +00:00
LCSSA
LICM Correct a typo, s/hosting/hoisting/ 2017-02-14 16:41:10 +00:00
LoadCombine [LoadCombine] Change test to not use instcombine. 2017-02-10 00:44:08 +00:00
LoadStoreVectorizer LoadStoreVectorizer: Split even sized illegal chains properly 2017-02-23 03:58:53 +00:00
LoopDataPrefetch
LoopDeletion [PM] Teach LoopDeletion to correctly update the LPM when loops are 2017-01-18 02:41:26 +00:00
LoopDistribute Move test of lazy BFI with ORE to a generic directory 2017-01-13 00:16:23 +00:00
LoopIdiom Fix some broken CHECK lines. 2017-01-22 20:28:56 +00:00
LoopInterchange
LoopLoadElim [PM] Port LoopLoadElimination to the new pass manager and wire it into 2017-01-27 01:32:26 +00:00
LoopPredication Loop predication expand both sides of the widened condition 2017-02-27 15:44:49 +00:00
LoopReroll
LoopRotate Revert @llvm.assume with operator bundles (r289755-r289757) 2016-12-19 08:22:17 +00:00
LoopSimplify [BasicBlockUtils] Use getFirstNonPHIOrDbg to set debugloc for instructions created in SplitBlockPredecessors 2017-02-14 21:10:40 +00:00
LoopSimplifyCFG
LoopStrengthReduce [LSR] Canonicalize formula and put recursive Reg related with current loop in ScaledReg. 2017-02-22 21:47:08 +00:00
LoopUnroll The patch fixes r296770 2017-03-02 19:41:38 +00:00
LoopUnswitch Fix a bug when unswitching on partial LIV for SwitchInst 2017-02-27 18:00:13 +00:00
LoopVectorize [ARM/AArch64] Update costs for interleaved accesses with wide types 2017-03-02 15:15:35 +00:00
LoopVersioning [LDist] Match behavior between invoking via optimization pipeline or opt -loop-distribute 2016-12-21 04:07:40 +00:00
LoopVersioningLICM
LowerAtomic
LowerExpectIntrinsic
LowerGuardIntrinsic
LowerInvoke
LowerSwitch
LowerTypeTests IR: Type ID summary extensions for WPD; thread summary into WPD pass. 2017-02-13 19:26:18 +00:00
Mem2Reg
MemCpyOpt [MemCpyOpt] Don't sink LoadInst below possible clobber. 2016-12-27 17:58:12 +00:00
MergeFunc MergeFunctions: Preserve debug info in thunks, under option -mergefunc-preserve-debug-info 2017-01-21 02:02:56 +00:00
MetaRenamer
NameAnonGlobals
NaryReassociate Revert @llvm.assume with operator bundles (r289755-r289757) 2016-12-19 08:22:17 +00:00
NewGVN [BasicAA] Take attributes into account when requesting modref info for a call site 2017-03-01 13:19:51 +00:00
ObjCARC
PartiallyInlineLibCalls Add positive test for sqrt "partial inlining". NFC. 2017-01-04 21:24:56 +00:00
PGOProfile [PGO] Directory name stripping in global identifier for static functions 2017-02-25 00:00:36 +00:00
PhaseOrdering
PlaceSafepoints
PreISelIntrinsicLowering
PruneEH
Reassociate [Reassociate] Add negated value of negative constant to the Duplicates list. 2017-02-23 18:49:03 +00:00
Reg2Mem
RewriteStatepointsForGC
SafeStack [Fuchsia] Use thread-pointer ABI slots for stack-protector and safe-stack 2017-02-24 03:10:10 +00:00
SampleProfile Add function importing info from samplepgo profile to the module summary. 2017-02-28 18:09:44 +00:00
Scalarizer
SCCP opt: Rename -default-data-layout flag to -data-layout and make it always override the layout. 2017-02-17 17:36:52 +00:00
SeparateConstOffsetFromGEP
SimplifyCFG opt: Rename -default-data-layout flag to -data-layout and make it always override the layout. 2017-02-17 17:36:52 +00:00
Sink
SLPVectorizer Revert r296575 "[SLP] Fixes the bug due to absence of in order uses of scalars which needs to be available" 2017-03-01 18:57:16 +00:00
SpeculativeExecution
SROA
StraightLineStrengthReduce
StripDeadPrototypes
StripSymbols Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
StructurizeCFG Revert "Fix PR 24415 (at least), by making our post-dominator tree behavior sane." 2017-03-02 21:08:37 +00:00
TailCallElim
ThinLTOBitcodeWriter ThinLTOBitcodeWriter: Do not follow operand edges of type GlobalValue when looking for virtual functions. 2017-03-02 23:10:17 +00:00
Util PredicateInfo: Support switch statements 2017-02-22 22:20:58 +00:00
WholeProgramDevirt WholeProgramDevirt: For VCP use a 32-bit ConstantInt for the byte offset. 2017-02-17 19:43:45 +00:00