1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/test/Transforms
Sameer Sahasrabuddhe d13ab42a5a StructurizeCFG: simplify phi nodes when possible
After structurization, some phi nodes can have a single incoming edge
and can be simplified away. This change runs a simplify query on all
phis that are either modified or added by the structurizer. This also
moves some phis closer to their use as a side benefit.

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D75500
2020-03-05 10:33:15 +05:30
..
ADCE
AddDiscriminators
AggressiveInstCombine [AggressiveInstCombine] Add test with baseline CHECKs for aggressive inst combine for ICmp instruction. 2020-02-12 15:09:38 +02:00
AlignmentFromAssumptions
ArgumentPromotion
AtomicExpand
Attributor [Attributor] Use AssumptionCache in AANonNullFloating::initialize 2020-02-25 13:00:03 +09:00
BDCE
BlockExtractor Revert "Revert "Reland "[Support] make report_fatal_error abort instead of exit""" 2020-02-13 10:16:06 -08:00
BranchFolding
CalledValuePropagation
CallSiteSplitting
CanonicalizeAliases
CodeExtractor [LoopExtractor] Convert LoopExtractor from LoopPass to ModulePass 2020-02-09 12:25:21 +02:00
CodeGenPrepare Recommit "[PatternMatch] Match XOR variant of unsigned-add overflow check." 2020-02-23 18:33:18 +00:00
ConstantHoisting
ConstantMerge
ConstProp [ConstProp] Add test for bitcast to gep fold; NFC 2020-03-04 18:27:20 +01:00
Coroutines [Coroutines] Use dbg.declare for frame variables 2020-03-03 17:13:46 -05:00
CorrelatedValuePropagation [CVP] Simplify cmp of local phi node 2020-02-26 20:36:41 +01:00
CrossDSOCFI
DCE
DeadArgElim [NFC] Fix trivial typos in comments 2020-01-06 10:50:26 +00:00
DeadStoreElimination Fix DSE miscompile when store is clobbered across loop iterations 2020-02-27 14:43:01 -08:00
DivRemPairs
EarlyCSE Let EarlyCSE fold equivalent freeze instructions 2020-02-28 20:35:20 +09:00
EliminateAvailableExternally
EntryExitInstrumenter
ExpandMemCmp
Float2Int
ForcedFunctionAttrs
FunctionAttrs
FunctionImport Revert "Revert "Reland "[Support] make report_fatal_error abort instead of exit""" 2020-02-13 10:16:06 -08:00
GCOVProfiling Revert "Revert "Reland "[Support] make report_fatal_error abort instead of exit""" 2020-02-13 10:16:06 -08:00
GlobalDCE [WPD/VFE] Always emit vcall_visibility metadata for -fwhole-program-vtables 2020-01-23 11:36:01 -08:00
GlobalMerge
GlobalOpt [Transforms][GlobalSRA] huge array causes long compilation time and huge memory usage. 2020-01-04 16:42:38 +03:00
GlobalSplit [WPD/VFE] Always emit vcall_visibility metadata for -fwhole-program-vtables 2020-01-23 11:36:01 -08:00
GuardWidening
GVN [GVN] Fold equivalent freeze instructions 2020-03-01 07:32:05 +09:00
GVNHoist
GVNSink
HardwareLoops
HotColdSplit [HotColdSplit] Mark entire function cold when entry block is cold 2020-02-17 15:57:50 -08:00
IndirectBrExpand
IndVarSimplify [IndVars] Fix sort comparator. 2020-02-27 17:25:18 -08:00
InferAddressSpaces
InferFunctionAttrs
Inline Devirtualize a call on alloca without waiting for post inline cleanup and next DevirtSCCRepeatedPass iteration. 2020-02-28 09:43:32 -08:00
InstCombine [InstCombine] Use IRBuilder to create bitcast 2020-03-04 18:28:38 +01:00
InstMerge
InstNamer
InstSimplify [InstSimplify] Constant fold icmp of gep 2020-03-04 23:16:52 +01:00
InterleavedAccess
Internalize
IPConstantProp [SCCP] Do not mark unknown loads as overdefined. 2020-02-20 22:48:58 +01:00
IRCE [IRCE] Use SCEVExpander to modify loop bound 2020-02-06 12:44:43 +03:00
JumpThreading [JumpThreading] Skip unconditional PredBB when threading jumps through two basic blocks 2020-02-18 11:01:46 -08:00
LCSSA [SSAUpdater] Don't call ValueIsRAUWd upon single use replacement 2020-01-23 15:53:53 +07:00
LICM [LICM] Allow freeze to hoist/sink out of a loop 2020-03-03 12:29:39 +09:00
LoadStoreVectorizer AMDGPU: Don't report 2-byte alignment as fast 2020-02-11 18:35:00 -05:00
LoopDataPrefetch
LoopDeletion
LoopDistribute
LoopFusion [LoopFusion] Move instructions from FC1.GuardBlock to FC0.GuardBlock and 2020-01-30 18:02:22 +00:00
LoopIdiom
LoopInstSimplify
LoopInterchange [DA] Delinearization of fixed-size multi-dimensional arrays 2020-02-27 10:29:01 -05:00
LoopLoadElim
LoopPredication [BasicBlock] fix looping in getPostdominatingDeoptimizeCall 2020-01-17 15:40:02 +03:00
LoopReroll
LoopRotate [LoopRotate] add ability to repeat loop rotation until non-deoptimizing exit is found 2020-01-23 15:56:24 +03:00
LoopSimplify [LoopSimplify] Regenerate test checks; NFC 2020-01-11 11:02:24 +01:00
LoopSimplifyCFG
LoopStrengthReduce
LoopTransformWarning
LoopUnroll [Loop Peeling] Add possibility to enable peeling on loop nests. 2020-03-02 08:37:11 -08:00
LoopUnrollAndJam [llvm] Make new pass manager's OptimizationLevel a class 2020-01-16 09:00:56 -08:00
LoopUnswitch
LoopVectorize [ARM] Change all tests from "thumbv8.1-m.main" to "thumbv8.1m.main". NFC 2020-03-04 13:47:35 +00:00
LoopVersioning
LoopVersioningLICM
LowerAtomic
LowerConstantIntrinsics
LowerExpectIntrinsic
LowerGuardIntrinsic
LowerInvoke
LowerMatrixIntrinsics [Matrix] Mark matrix memory intrinsics as argmemonly/write|read mem. 2020-02-04 12:32:45 +00:00
LowerSwitch
LowerTypeTests
LowerWidenableCondition
MakeGuardsExplicit
Mem2Reg
MemCpyOpt [Transform][MemCpyOpt] Add missing DebugLoc to %tmpbitcast 2020-02-28 15:20:51 +00:00
MergeFunc [NewPM] Port MergeFunctions pass 2020-01-14 20:55:41 +01:00
MergeICmps
MetaRenamer
NameAnonGlobals
NaryReassociate
NewGVN
ObjCARC [ObjC][ARC] Don't move a retain call living outside a loop into the loop 2020-02-25 13:00:10 -08:00
OpenMP [OpenMP][Opt] Combine struct ident_t* during deduplication 2020-02-25 14:07:14 -08:00
PartiallyInlineLibCalls
PGOProfile [PGO] Attach appropriate funclet operand bundles to value profiling instrumentation calls 2020-01-24 11:20:53 -08:00
PhaseOrdering [PassManager] adjust VectorCombine placement 2020-03-04 11:10:49 -05:00
PlaceSafepoints
PreISelIntrinsicLowering
PruneEH
Reassociate Remove BinaryOperator::CreateFNeg 2020-02-27 09:06:03 -08:00
Reg2Mem
RewriteStatepointsForGC
SafeStack
SampleProfile Fix test for profile remapper 2020-02-18 17:58:32 -08:00
ScalarizeMaskedMemIntrin/X86
Scalarizer
SCCP [SCCP] Do not mark unknown loads as overdefined. 2020-02-20 22:48:58 +01:00
SeparateConstOffsetFromGEP [SeparateConstOffsetFromGEP] Fix: sext(a) + sext(b) -> sext(a + b) matches add and sub instructions with one another 2020-01-17 12:22:52 -05:00
SimpleLoopUnswitch Revert "[SimpleLoopUnswitch] Fix introduction of UB when hoisted condition may be undef or poison" 2020-02-28 11:10:46 +09:00
SimplifyCFG [InstCombine] DCE instructions earlier 2020-02-27 18:45:59 +01:00
Sink
SLPVectorizer [SLP]Update test checks, NFC. 2020-02-28 13:25:44 -05:00
SpeculateAroundPHIs
SpeculativeExecution
SROA SROA: Don't drop atomic load/store alignments (PR45010) 2020-02-28 10:38:40 +01:00
StraightLineStrengthReduce
StripDeadPrototypes
StripSymbols
StructurizeCFG StructurizeCFG: simplify phi nodes when possible 2020-03-05 10:33:15 +05:30
SyntheticCountsPropagation
TailCallElim
ThinLTOBitcodeWriter
TypePromotion/ARM
Util [DebugInfo] Avoid generating duplicate llvm.dbg.value 2020-03-03 09:56:45 +05:30
VectorCombine/X86 [VectorCombine] Fix assert on compare extract index 2020-02-28 10:37:08 -08:00
WholeProgramDevirt Revert "Restore "[WPD/LowerTypeTests] Delay lowering/removal of type tests until after ICP"" 2020-03-02 14:02:13 -08:00