1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00
llvm-mirror/test/Transforms/SimplifyCFG
Roman Lebedev bedf13b1a7 [SimplifyCFG] performBranchToCommonDestFolding(): require block-closed SSA form for bonus instructions (PR51125)
I can't seem to wrap my head around the proper fix here,
we should be fine without this requirement, iff we can form this form,
but the naive attempt (https://reviews.llvm.org/D106317) has failed.
So just to unblock the release, put up a restriction.

Fixes https://bugs.llvm.org/show_bug.cgi?id=51125

(cherry picked from commit 909cba969981032c5740774ca84a34b7f76b909b)
2021-09-10 09:02:26 -07:00
..
AArch64
AMDGPU
ARM [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
Hexagon [SimplifyCFG] SwitchToLookupTable(): don't increase ret count 2021-07-26 23:29:55 +03:00
Mips
PowerPC [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
RISCV
SPARC
X86 [SimplifyCFG] SwitchToLookupTable(): don't increase ret count 2021-07-26 23:29:55 +03:00
1elt-ptr-vec-alignment-crash.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
2002-05-21-PHIElimination.ll
2002-09-24-PHIAssertion.ll
2003-03-07-DominateProblem.ll
2003-08-05-InvokeCrash.ll
2003-08-17-BranchFold.ll
2003-08-17-BranchFoldOrdering.ll
2003-08-17-FoldSwitch-dbg.ll
2003-08-17-FoldSwitch.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize ret block tail-merging 2021-06-23 14:33:18 +03:00
2004-12-10-SimplifyCFGCrash.ll
2005-06-16-PHICrash.ll
2005-08-01-PHIUpdateFail.ll
2005-10-02-InvokeSimplify.ll
2005-12-03-IncorrectPHIFold.ll
2006-02-17-InfiniteUnroll.ll
2006-06-12-InfLoop.ll
2006-08-03-Crash.ll
2006-10-19-UncondDiv.ll
2006-12-08-Ptr-ICmp-Branch.ll
2007-11-22-InvokeNoUnwind.ll
2007-12-21-Crash.ll
2008-01-02-hoist-fp-add.ll
2008-05-16-PHIBlockMerge.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
2008-07-13-InfLoopMiscompile.ll
2008-09-08-MultiplePred.ll
2008-09-17-SpeculativeHoist.ll
2008-10-03-SpeculativelyExecuteBeforePHI.ll
2008-12-06-SingleEntryPhi.ll
2008-12-16-DCECond.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
2009-01-18-PHIPropCrash.ll
2009-05-12-externweak.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
2011-03-08-UnreachableUse.ll
2011-09-05-TrivialLPad.ll
annotations.ll Reland "[SimplifyCFG] Update FoldBranchToCommonDest to be poison-safe" 2021-03-23 09:19:53 +09:00
assume.ll
attr-convergent.ll
attr-noduplicate.ll
basictest.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
bbi-23595.ll
branch-cond-merge.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
branch-cond-prop.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
branch-fold-dbg.ll
branch-fold-test.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
branch-fold-three.ll
branch-fold-threshold.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
branch-fold.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
branch-phi-thread.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
BrUnwind.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
callbr-destinations.ll
change-to-unreachable-matching-successor.ll
clamp.ll
cleanup-phis.ll [SimplifyCFG] Use make_early_inc_range() while deleting instructions 2021-05-26 11:43:11 -07:00
common-code-hoisting.ll [SimplifyCFG] Allow hoisting terminators only with HoistCommonInsts=false. 2021-04-13 10:33:35 +01:00
common-dest-folding.ll Reland "[SimplifyCFG] Update FoldBranchToCommonDest to be poison-safe" 2021-03-23 09:19:53 +09:00
commondest-loopid.ll [SimplifyCFG] Preserve metadata when unconditionalizing branches (same target). 2021-04-26 17:23:01 -05:00
ConditionalTrappingConstantExpr.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize ret block tail-merging 2021-06-23 14:33:18 +03:00
constantexprs.ll
convergent.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
dbginfo.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
dce-cond-after-folding-terminator.ll
DeadSetCC.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
debug-info-thread-phi.ll
div-rem-pairs.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
drop-debug-loc-when-speculating.ll
duplicate-landingpad.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
duplicate-phis.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
empty-catchpad.ll [NFC][SimplifyCFG] Autogenerate checklines in a few tests 2021-07-02 22:35:24 +03:00
EmptyBlockMerge.ll
EqualPHIEdgeBlockMerge.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
extract-cost.ll [SimplifyCFG] SimplifyCondBranchToTwoReturns(): really only deal with different ret blocks 2021-07-23 00:36:59 +03:00
fold-branch-to-common-dest-two-preds-cost.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
fold-branch-to-common-dest.ll [SimplifyCFG] performBranchToCommonDestFolding(): require block-closed SSA form for bonus instructions (PR51125) 2021-09-10 09:02:26 -07:00
fold-debug-info.ll
fold-debug-location.ll Reland "[SimplifyCFG] Update FoldBranchToCommonDest to be poison-safe" 2021-03-23 09:19:53 +09:00
fold-two-entry-phi-node-with-one-block-profmd.ll [SimplifyCFG] Don't speculatively execute BB[s] if they are predictably not taken 2021-07-26 02:55:15 +03:00
fold-two-entry-phi-node-with-two-blocks-profmd.ll [SimplifyCFG] Don't speculatively execute BB[s] if they are predictably not taken 2021-07-26 02:55:15 +03:00
FoldValueComparisonIntoPredecessors-domtree-preservation-edgecase-2.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
FoldValueComparisonIntoPredecessors-domtree-preservation-edgecase.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize ret block tail-merging 2021-06-23 14:33:18 +03:00
FoldValueComparisonIntoPredecessors-no-new-successors.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize ret block tail-merging 2021-06-23 14:33:18 +03:00
ForwardSwitchConditionToPHI.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
gepcost.ll
guards.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
hoist-common-code.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
hoist-dbgvalue-inlined.ll
hoist-dbgvalue.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize ret block tail-merging 2021-06-23 14:33:18 +03:00
hoist-from-addresstaken-block.ll [SimplifyCFG] FoldTwoEntryPHINode(): don't fold if either block has it's address taken 2021-06-20 12:37:14 +03:00
hoist-with-range.ll
HoistCode.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
implied-and-or.ll
implied-cond-matching-false-dest.ll
implied-cond-matching-imm.ll
implied-cond-matching.ll
implied-cond.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
indirectbr.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
InfLoop.ll
inline-asm-sink.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
invoke_unwind_lifetime.ll
invoke_unwind.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
invoke.ll [Local] Do not introduce a new llvm.trap before unreachable 2021-07-26 23:33:36 -05:00
iterative-simplify.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
lifetime-landingpad.ll
lifetime.ll
merge-cond-stores-2.ll
merge-cond-stores.ll Reland "[InstCombine] Add simplification of two logical and/ors" 2021-03-23 16:24:50 +09:00
merge-default.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
merge-duplicate-conditional-ret-val.ll [SimplifyCFG] Drop support for duplicating ret's into uncond predecessors 2021-07-26 23:29:21 +03:00
merge-empty-return-blocks.ll
multiple-phis.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
no_speculative_loads_with_asan.ll [NFC][SimplifyCFG] Autogenerate check lines in few more tests 2021-04-28 00:35:44 +03:00
no_speculative_loads_with_tsan.ll [NFC][SimplifyCFG] Autogenerate check lines in few more tests 2021-04-28 00:35:44 +03:00
no-md-sink.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
nomerge.ll
noreturn-call.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
opt-for-fuzzing.ll
phi-to-select-constexpr-icmp.ll
phi-undef-loadstore.ll
PhiBlockMerge2.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
PhiBlockMerge.ll
PhiEliminate2.ll
PhiEliminate3.ll
PhiEliminate.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
PHINode.ll
PhiNoEliminate.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
poison-merge.ll
pr33605.ll
pr34131.ll
pr35774.ll
pr39807.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
pr46638.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
pr48778-sdiv-speculation.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize ret block tail-merging 2021-06-23 14:33:18 +03:00
pr50060-constantfold-loopid.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
PR9946.ll
PR16069.ll
PR17073.ll [SimplifyCFG] SimplifyCondBranchToTwoReturns(): really only deal with different ret blocks 2021-07-23 00:36:59 +03:00
PR25267.ll
PR27615-simplify-cond-br.ll
preserve-branchweights-partial.ll
preserve-branchweights-switch-create.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
preserve-branchweights.ll [SimplifyCFG] Fold branch to common dest: if branch is unpredictable, prefer to speculate 2021-07-26 02:57:19 +03:00
preserve-llvm-loop-metadata.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
preserve-load-metadata-2.ll
preserve-load-metadata-3.ll
preserve-load-metadata.ll
preserve-make-implicit-on-switch-to-br.ll
preserve-store-alignment.ll [NFC][SimplifyCFG] Autogenerate check lines in few more tests 2021-04-28 00:35:44 +03:00
rangereduce.ll [SimplifyCFG] SwitchToLookupTable(): don't increase ret count 2021-07-26 23:29:55 +03:00
return-merge.ll [SimplifyCFG] Drop support for duplicating ret's into uncond predecessors 2021-07-26 23:29:21 +03:00
safe-abs.ll
seh-nounwind.ll
select-gep.ll
signbit-like-value-extension.ll
SimplifyEqualityComparisonWithOnlyPredecessor-domtree-preservation-edgecase.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize ret block tail-merging 2021-06-23 14:33:18 +03:00
SimplifyTerminatorOnSelect-domtree-preservation-edgecase.ll
simplifyUnreachable-degenerate-conditional-branch-with-matching-destinations.ll [SimplifyCFG] simplifyUnreachable(): erase instructions iff they are guaranteed to transfer execution to unreachable 2021-07-03 10:45:44 +03:00
sink-inf-loop.ll [SimplifyCFG] avoid sinking insts within an infinite-loop 2021-03-12 08:04:57 -05:00
speculate-call.ll Strip undef implying attributes when moving calls 2021-07-27 10:57:05 -04:00
speculate-dbgvalue.ll
speculate-math.ll
speculate-store.ll [SimplifyCFG] Improve store speculation check 2021-07-26 15:01:00 +02:00
speculate-vector-ops-inseltpoison.ll
speculate-vector-ops.ll
speculate-with-offset.ll
speculatively-execute-block-profmd.ll [SimplifyCFG] Don't speculatively execute BB if it's predictably not taken 2021-07-26 02:55:14 +03:00
statepoint-invoke-unwind.ll
suppress-zero-branch-weights.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize ret block tail-merging 2021-06-23 14:33:18 +03:00
switch_create-custom-dl.ll [SimplifyCFG] Fix SimplifyBranchOnICmpChain to be undef/poison safe. 2021-07-13 15:35:18 +09:00
switch_create.ll [SimplifyCFG] Fix SimplifyBranchOnICmpChain to be undef/poison safe. 2021-07-13 15:35:18 +09:00
switch_msan.ll [SimplifyCFG] Fix SimplifyBranchOnICmpChain to be undef/poison safe. 2021-07-13 15:35:18 +09:00
switch_switch_fold.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
switch_thread.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
switch_undef.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
switch-dead-default.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
switch-masked-bits.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize ret block tail-merging 2021-06-23 14:33:18 +03:00
switch-on-const-select.ll [SimplifyCFG] Tail-merging all blocks with ret terminator 2021-06-24 13:15:39 +03:00
switch-profmd.ll
switch-range-to-icmp.ll [SimplifyCFG] simplifyUnreachable(): erase instructions iff they are guaranteed to transfer execution to unreachable 2021-07-03 10:45:44 +03:00
switch-simplify-crash.ll
switch-to-br.ll
switch-to-icmp.ll
switch-to-select-multiple-edge-per-block-phi.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
switch-to-select-two-case.ll [SimplifyCFG] Handle two equal cases in switch to select 2021-04-04 17:27:28 +02:00
switchToSelect-domtree-preservation-edgecase.ll
tail-merge-assert.ll [NFC][SimplifyCFG] Precommit SimplifyCFG tests from D29428 2021-04-28 00:35:44 +03:00
tail-merge-noreturn.ll [NFC][SimplifyCFG] Precommit SimplifyCFG tests from D29428 2021-04-28 00:35:44 +03:00
tail-merge-resume.ll [SimplifyCFG] Tail-merging all blocks with resume terminator 2021-06-24 21:25:06 +03:00
trap-debugloc.ll [Local] Do not introduce a new llvm.trap before unreachable 2021-07-26 23:33:36 -05:00
trap-no-null-opt-debugloc.ll
trapping-load-unreachable.ll [Local] Do not introduce a new llvm.trap before unreachable 2021-07-26 23:33:36 -05:00
two-entry-phi-fold-crash.ll
two-entry-phi-node.ll [SimplifyCFG] FoldTwoEntryPHINode(): bailout on inverted logical and/or (PR51149) 2021-07-22 22:19:34 +03:00
two-entry-phi-return.ll [SimplifyCFG] avoid crash on degenerate loop 2021-06-11 09:37:06 -04:00
UncondBranchToHeader.ll
UncondBranchToReturn.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
unprofitable-pr.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
unreachable_assume.ll
unreachable-cleanuppad.ll
unreachable-matching-successor.ll
unreachable-selfloop.ll
UnreachableEliminate.ll [SimplifyCFG] Look for control flow changes instead of side effects. 2021-05-03 13:32:22 -07:00
unsigned-multiplication-will-overflow.ll
volatile-phioper.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
wc-widen-block.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
wineh-unreachable.ll [NFC][SimplifyCFG] Autogenerate checklines in a few tests 2021-07-02 22:35:24 +03:00