llvm-project/llvm/test/Transforms/SimplifyCFG
Florian Hahn a80081763c
[SimplifyCFG] Avoid shifting by a too large exponent.
TI->getBitWidth can be > 64 and in those cases the shift will be UB due
to the exponent being too large.

To fix this, cap the shift at 63. I think this should work out fine,
because TableSize is itself a 64 bit type and the maximum table size
must fit in the type. Also, if we would underestimate the size here, at
most we get an extra ZExt.

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D124608
2022-04-29 15:19:06 +01:00
..
AArch64 [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
AMDGPU [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
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 [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
PowerPC [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
RISCV [SimplifyCFG] Enable switch to lookup table for more types. 2021-08-03 15:35:16 -07:00
SPARC [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
X86 [SimplifyCFG] Avoid shifting by a too large exponent. 2022-04-29 15:19:06 +01: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 [SimplifyCFG] MergeBlockIntoPredecessor() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
2002-09-24-PHIAssertion.ll
2003-03-07-DominateProblem.ll [SimplifyCFG] MergeBlockIntoPredecessor() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
2003-08-05-InvokeCrash.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
2003-08-17-BranchFold.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
2003-08-17-BranchFoldOrdering.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
2003-08-17-FoldSwitch-dbg.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
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 [SimplifyCFG] Teach FoldCondBranchOnPHI() to preserve DomTree 2020-12-30 00:48:11 +03:00
2005-06-16-PHICrash.ll [SimplifyCFG] Teach SimplifyEqualityComparisonWithOnlyPredecessor() to preserve DomTree, part 1 2020-12-30 00:48:10 +03:00
2005-08-01-PHIUpdateFail.ll [SimplifyCFG] Teach FoldValueComparisonIntoPredecessors() to preserve DomTree, part 1 2021-01-01 03:25:22 +03:00
2005-10-02-InvokeSimplify.ll [SimplifyCFG] Teach mergeEmptyReturnBlocks() to preserve DomTree 2020-12-17 01:03:50 +03:00
2005-12-03-IncorrectPHIFold.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
2006-02-17-InfiniteUnroll.ll [SimplifyCFG] MergeBlockIntoPredecessor() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
2006-06-12-InfLoop.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
2006-08-03-Crash.ll [SimplifyCFG] Teach FoldValueComparisonIntoPredecessors() to preserve DomTree, part 1 2021-01-01 03:25:22 +03:00
2006-10-19-UncondDiv.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
2006-12-08-Ptr-ICmp-Branch.ll [SimplifyCFG] Teach FoldBranchToCommonDest() to preserve DomTree, part 1 2020-12-20 00:18:36 +03:00
2007-11-22-InvokeNoUnwind.ll [SimplifyCFG] MergeBlockIntoPredecessor() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
2007-12-21-Crash.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
2008-01-02-hoist-fp-add.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
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 [SimplifyCFG] Teach SimplifyCondBranchToCondBranch() to preserve DomTree 2020-12-30 00:48:12 +03:00
2008-09-08-MultiplePred.ll [SimplifyCFG] Teach SimplifyCondBranchToTwoReturns() to preserve DomTree, part 1 2020-12-20 00:18:35 +03:00
2008-09-17-SpeculativeHoist.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
2008-10-03-SpeculativelyExecuteBeforePHI.ll
2008-12-06-SingleEntryPhi.ll [SimplifyCFG] DeleteDeadBlock() already knows how to preserve DomTree 2020-12-18 00:37:21 +03:00
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 [SimplifyCFG] DeleteDeadBlock() already knows how to preserve DomTree 2020-12-18 00:37:21 +03:00
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 [SimplifyCFG] ConstantFoldTerminator() already knows how to preserve DomTree 2020-12-18 00:37:22 +03:00
2011-09-05-TrivialLPad.ll [SimplifyCFG] Teach simplifySingleResume() to preserve DomTree 2020-12-20 00:18:34 +03:00
BrUnwind.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
ConditionalTrappingConstantExpr.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging 2021-06-23 14:33:18 +03:00
DeadSetCC.ll [SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP 2022-02-17 12:13:55 +03:00
EmptyBlockMerge.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
EqualPHIEdgeBlockMerge.ll [SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP 2022-02-17 12:13:55 +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 [SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP 2022-02-17 12:13:55 +03:00
ForwardSwitchConditionToPHI.ll [SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP 2022-02-17 12:13:55 +03:00
HoistCode.ll [SimplifyCFG] Tail-merging all blocks with `ret` terminator 2021-06-24 13:15:39 +03:00
InfLoop.ll [SimplifyCFG] Teach SimplifyEqualityComparisonWithOnlyPredecessor() to preserve DomTree, part 2 2020-12-30 00:48:10 +03:00
PHINode.ll [SimplifyCFG] MergeBlockIntoPredecessor() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
PR9946.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
PR16069.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
PR17073.ll [SimplifyCFG] SimplifyCondBranchToTwoReturns(): really only deal with different ret blocks 2021-07-23 00:36:59 +03:00
PR25267.ll [SimplifyCFG] DeleteDeadBlock() already knows how to preserve DomTree 2020-12-18 00:37:21 +03:00
PR27615-simplify-cond-br.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
PhiBlockMerge.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
PhiBlockMerge2.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
PhiEliminate.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
PhiEliminate2.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
PhiEliminate3.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
PhiNoEliminate.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
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 [SimplifyCFG] SimplifyTerminatorOnSelect(): fix/tune DomTree updates 2021-01-04 01:02:02 +03:00
UncondBranchToHeader.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
UncondBranchToReturn.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
UnreachableEliminate.ll Revert "[SimplifyCFG] Start redesigning `FoldTwoEntryPHINode()`." 2022-02-03 12:32:50 +03:00
annotations.ll Reland "[SimplifyCFG] Update FoldBranchToCommonDest to be poison-safe" 2021-03-23 09:19:53 +09:00
assume.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
attr-convergent.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
attr-noduplicate.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
basictest.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
bbi-23595.ll Revert "[SimplifyCFG] Start redesigning `FoldTwoEntryPHINode()`." 2022-02-03 12:32:50 +03:00
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 [Test] Regenerate checks using auto-update script 2021-10-28 15:13:43 +07:00
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 [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
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
callbr-destinations.ll [llvm][test] rewrite callbr to use i rather than X constraint NFC 2022-01-11 11:31:08 -08:00
change-to-unreachable-matching-successor.ll [NFC][SimplifyCFG] Add a test with an undef cond branch to identical destinations 2021-01-08 02:15:26 +03:00
clamp.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
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
constantexprs.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
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 [SimplifyCFG] MergeBlockIntoPredecessor() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
debug-info-thread-phi.ll [SimplifyCFG] Teach FoldCondBranchOnPHI() to preserve DomTree 2020-12-30 00:48:11 +03:00
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 [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
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
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-free-cost.ll [SimplifyCFG] Ignore free instructions when computing cost for folding branch to common dest 2021-09-22 09:52:37 -07: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] `FoldBranchToCommonDest()`: allow branch-on-select 2022-03-25 16:12:17 +03:00
fold-debug-info.ll [SimplifyCFG] Teach SimplifyCondBranchToTwoReturns() to preserve DomTree, part 2 2020-12-20 00:18:36 +03:00
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
gepcost.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
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 [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
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 [SimplifyCFG] Teach HoistThenElseCodeToIf() to preserve DomTree 2020-12-30 00:48:10 +03:00
implied-and-or.ll [SimplifyCFG] MergeBlockIntoPredecessor() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
implied-cond-matching-false-dest.ll [SimplifyCFG] ConstantFoldTerminator() already knows how to preserve DomTree 2020-12-18 00:37:22 +03:00
implied-cond-matching-imm.ll [SimplifyCFG] Teach SimplifyEqualityComparisonWithOnlyPredecessor() to preserve DomTree, part 2 2020-12-30 00:48:10 +03:00
implied-cond-matching.ll [SimplifyCFG] ConstantFoldTerminator() already knows how to preserve DomTree 2020-12-18 00:37:22 +03:00
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
inline-asm-sink.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
invoke.ll Reland [SimplifyCFG] `markAliveBlocks()`: recognize that normal dest of `invoke`d `noreturn` function is `unreachable` 2022-02-05 02:58:19 +03:00
invoke_unwind.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
invoke_unwind_lifetime.ll [SimplifyCFG] Teach simplifyCommonResume() to preserve DomTree 2020-12-20 00:18:34 +03:00
iterative-simplify.ll [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep 2021-06-21 23:56:54 +03:00
jump-threading.ll [SimplifyCFG] Replace condition value when threading 2022-04-29 09:50:27 +02:00
lifetime-landingpad.ll [SimplifyCFG] Teach simplifySingleResume() to preserve DomTree 2020-12-20 00:18:34 +03:00
lifetime.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
merge-cond-stores-2.ll Revert "[SimplifyCFG] Start redesigning `FoldTwoEntryPHINode()`." 2022-02-03 12:32:50 +03:00
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-deopt-bundle-constants.ll [Test] Add test demonstating how deopt bundle constants may be merged into instruction 2022-02-15 20:28:41 +07: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 [SimplifyCFG] Teach mergeEmptyReturnBlocks() to preserve DomTree 2020-12-17 01:03:50 +03:00
multiple-phis.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
no-md-sink.ll Revert "[SimplifyCFG] Start redesigning `FoldTwoEntryPHINode()`." 2022-02-03 12:32:50 +03: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
nomerge.ll [NFC][Tests][SimplifyCFG] Trim whitespaces at the end of lines 2020-12-16 00:38:00 +03:00
noreturn-call.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
opaque-ptr.ll [SimplifyCFG][OpaquePtr] Check store type when merging conditional store 2022-02-20 11:29:54 -08:00
opt-for-fuzzing.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
phi-to-select-constexpr-icmp.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
phi-undef-loadstore.ll [SimplifyCFG] MergeBlockIntoPredecessor() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
poison-merge.ll [SimplifyCFG] avoid illegal phi with both poison and undef 2021-02-27 09:10:32 -05:00
pr33605.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
pr34131.ll [SimplifyCFG] Teach SimplifyCondBranchToCondBranch() to preserve DomTree 2020-12-30 00:48:12 +03:00
pr35774.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
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
pr48641.ll [NFC] Added testcase for PR48641 2021-09-04 10:44:39 +02: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
pr52290.ll [Test] Add test for PR52290 2021-10-25 18:25:59 +07:00
preserve-branchweights-partial.ll [SimplifyCFG] Teach FoldValueComparisonIntoPredecessors() to preserve DomTree, part 1 2021-01-01 03:25:22 +03:00
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][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP 2022-02-17 12:13:55 +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 [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
preserve-load-metadata-3.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
preserve-load-metadata.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
preserve-make-implicit-on-switch-to-br.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
preserve-store-alignment.ll Revert "[SimplifyCFG] Start redesigning `FoldTwoEntryPHINode()`." 2022-02-03 12:32:50 +03:00
rangereduce.ll [SimplifyCFG] Enable switch to lookup table for more types. 2021-08-03 15:35:16 -07: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 [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
seh-nounwind.ll [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
select-gep.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
signbit-like-value-extension.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
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 [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
speculate-math.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
speculate-store-opaque-pointer.ll [OpaquePtr] Forbid mixing typed and opaque pointers 2021-09-10 15:18:23 +02:00
speculate-store.ll [OpaquePtr] Forbid mixing typed and opaque pointers 2021-09-10 15:18:23 +02:00
speculate-vector-ops-inseltpoison.ll Precommit transform tests that have poison as insertelement's placeholder 2020-12-24 11:46:17 +09:00
speculate-vector-ops.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
speculate-with-offset.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
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 [Statepoint] Update gc.statepoint calls in tests with elementtype (NFC) 2022-02-04 14:15:41 +01:00
suppress-zero-branch-weights.ll [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging 2021-06-23 14:33:18 +03:00
switch-dead-default.ll [SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP 2022-02-17 12:13:55 +03: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 [SimplifyCFG] Teach simplifyUnreachable() to preserve DomTree 2020-12-18 00:37:22 +03:00
switch-range-to-icmp.ll [SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP 2022-02-17 12:13:55 +03:00
switch-simplify-crash.ll [SimplifyCFG] Teach eliminateDeadSwitchCases() to preserve DomTree, part 1 2021-01-01 03:25:24 +03:00
switch-to-br.ll [SimplifyCFG] MergeBlockIntoPredecessor() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
switch-to-icmp.ll [SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP 2022-02-17 12:13:55 +03:00
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] Try to fold switch with single result value and power-of-2 cases to mask+select 2022-04-15 00:10:00 +08:00
switchToSelect-domtree-preservation-edgecase.ll [SimplifyCFG] switchToSelect(): don't forget to insert DomTree edge iff needed 2021-01-15 23:35:57 +03:00
switch_create-custom-dl.ll [SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP 2022-02-17 12:13:55 +03:00
switch_create.ll [SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP 2022-02-17 12:13:55 +03: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_ub.ll [SimplifyCFG] Redirect switch cases that lead to UB into an unreachable block 2021-09-21 10:45:19 +07:00
switch_undef.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
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
tautological-conditional-branch.ll [SimplifyCFG] Preserve knowledge about guarding condition by adding assume 2021-09-08 14:05:17 +07: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 [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
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 [NFCI][SimplifyCFG] Mark all the SimplifyCFG tests that already don't invalidate DomTree as such 2020-12-17 01:03:49 +03:00
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
undef_phi.ll [Test] Add test showing missing simplifycfg opportunity for Phi with undef inputs 2021-10-28 11:23:07 +07:00
unprofitable-pr.ll [CodeMetrics] Don't require speculatability for ephemeral values 2021-10-21 20:30:01 +02:00
unreachable-cleanuppad.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
unreachable-matching-successor.ll [NFC][SimplifyCFG] Add test with an unreachable block with two identical successors 2021-01-08 02:15:25 +03:00
unreachable-selfloop.ll [SimplifyCFG] removeUnreachableBlocks() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
unreachable_assume.ll [SimplifyCFG] Teach simplifyUnreachable() to preserve DomTree 2020-12-18 00:37:22 +03:00
unsigned-multiplication-will-overflow.ll [SimplifyCFG] Teach FoldTwoEntryPHINode() to preserve DomTree 2020-12-20 00:18:33 +03:00
volatile-phioper.ll [NFC][SimplifyCFG] Autogenerate check lines in many test files 2021-04-27 22:05:42 +03:00
wc-widen-block.ll [SimplifyCFG] Thread branches on same condition in more cases (PR54980) 2022-04-29 09:44:05 +02:00
wineh-unreachable.ll [NFC][SimplifyCFG] Autogenerate checklines in a few tests 2021-07-02 22:35:24 +03:00