From cee313d288a4faf0355d76fb6e0e927e211d08a5 Mon Sep 17 00:00:00 2001 From: Eric Christopher Date: Wed, 17 Apr 2019 04:52:47 +0000 Subject: [PATCH] Revert "Temporarily Revert "Add basic loop fusion pass."" The reversion apparently deleted the test/Transforms directory. Will be re-reverting again. llvm-svn: 358552 --- llvm/include/llvm/InitializePasses.h | 1 + llvm/include/llvm/Transforms/Scalar.h | 6 + .../include/llvm/Transforms/Scalar/LoopFuse.h | 30 + llvm/lib/Passes/PassBuilder.cpp | 1 + llvm/lib/Passes/PassRegistry.def | 1 + llvm/lib/Transforms/Scalar/CMakeLists.txt | 1 + llvm/lib/Transforms/Scalar/LoopFuse.cpp | 1212 ++++ llvm/lib/Transforms/Scalar/Scalar.cpp | 1 + .../ADCE/2002-01-31-UseStuckAround.ll | 11 + .../Transforms/ADCE/2002-05-22-PHITest.ll | 16 + .../ADCE/2002-05-23-ZeroArgPHITest.ll | 35 + .../ADCE/2002-05-28-Crash-distilled.ll | 19 + llvm/test/Transforms/ADCE/2002-05-28-Crash.ll | 56 + .../ADCE/2002-07-17-AssertionFailure.ll | 14 + .../ADCE/2002-07-17-PHIAssertion.ll | 50 + .../Transforms/ADCE/2002-07-29-Segfault.ll | 10 + .../ADCE/2003-01-22-PredecessorProblem.ll | 30 + .../ADCE/2003-04-25-PHIPostDominateProblem.ll | 37 + .../Transforms/ADCE/2003-06-11-InvalidCFG.ll | 29 + .../ADCE/2003-06-24-BadSuccessor.ll | 94 + .../ADCE/2003-06-24-BasicFunctionality.ll | 44 + .../ADCE/2003-09-10-UnwindInstFail.ll | 22 + .../ADCE/2003-09-15-InfLoopCrash.ll | 10 + .../2003-11-16-MissingPostDominanceInfo.ll | 20 + .../ADCE/2004-05-04-UnreachableBlock.ll | 17 + .../ADCE/2005-02-17-PHI-Invoke-Crash.ll | 52 + llvm/test/Transforms/ADCE/2016-09-06.ll | 55 + .../ADCE/2017-08-21-DomTree-deletions.ll | 24 + llvm/test/Transforms/ADCE/basictest.ll | 18 + llvm/test/Transforms/ADCE/basictest1.ll | 102 + llvm/test/Transforms/ADCE/basictest2.ll | 102 + llvm/test/Transforms/ADCE/dce_pure_call.ll | 8 + llvm/test/Transforms/ADCE/dce_pure_invoke.ll | 19 + .../Transforms/ADCE/debug-info-intrinsic.ll | 100 + .../delete-profiling-calls-to-constant.ll | 19 + .../Transforms/ADCE/domtree-DoubleDeletion.ll | 39 + .../Transforms/ADCE/unreachable-function.ll | 5 + llvm/test/Transforms/ADCE/unreachable.ll | 18 + .../Transforms/AddDiscriminators/basic.ll | 62 + .../AddDiscriminators/call-nested.ll | 50 + .../test/Transforms/AddDiscriminators/call.ll | 54 + .../dbg-declare-discriminator.ll | 33 + .../Transforms/AddDiscriminators/diamond.ll | 72 + .../AddDiscriminators/first-only.ll | 83 + .../Transforms/AddDiscriminators/inlined.ll | 83 + .../Transforms/AddDiscriminators/invoke.ll | 134 + .../AddDiscriminators/memcpy-discriminator.ll | 104 + .../Transforms/AddDiscriminators/multiple.ll | 72 + .../AddDiscriminators/no-discriminators.ll | 76 + .../Transforms/AddDiscriminators/oneline.ll | 101 + .../AggressiveInstCombine/masked-cmp.ll | 235 + .../AggressiveInstCombine/rotate.ll | 476 ++ .../AggressiveInstCombine/trunc_const_expr.ll | 110 + .../AggressiveInstCombine/trunc_multi_uses.ll | 270 + .../trunc_unreachable_bb.ll | 48 + .../AlignmentFromAssumptions/simple.ll | 216 + .../AlignmentFromAssumptions/simple32.ll | 216 + .../AlignmentFromAssumptions/start-unk.ll | 155 + .../2008-02-01-ReturnAttrs.ll | 19 + .../2008-07-02-array-indexing.ll | 30 + .../ArgumentPromotion/2008-09-07-CGUpdate.ll | 12 + .../2008-09-08-CGUpdateSelfEdge.ll | 25 + .../ArgumentPromotion/X86/attributes.ll | 53 + .../ArgumentPromotion/X86/lit.local.cfg | 3 + .../X86/min-legal-vector-width.ll | 184 + .../ArgumentPromotion/aggregate-promote.ll | 31 + .../Transforms/ArgumentPromotion/attrs.ll | 52 + .../Transforms/ArgumentPromotion/basictest.ll | 29 + .../Transforms/ArgumentPromotion/byval-2.ll | 32 + .../Transforms/ArgumentPromotion/byval.ll | 50 + .../Transforms/ArgumentPromotion/chained.ll | 27 + .../ArgumentPromotion/control-flow.ll | 27 + .../ArgumentPromotion/control-flow2.ll | 24 + .../Transforms/ArgumentPromotion/crash.ll | 73 + llvm/test/Transforms/ArgumentPromotion/dbg.ll | 49 + .../test/Transforms/ArgumentPromotion/fp80.ll | 59 + .../Transforms/ArgumentPromotion/inalloca.ll | 50 + .../ArgumentPromotion/invalidation.ll | 50 + .../Transforms/ArgumentPromotion/musttail.ll | 45 + .../ArgumentPromotion/naked_functions.ll | 23 + .../nonzero-address-spaces.ll | 24 + .../Transforms/ArgumentPromotion/pr27568.ll | 33 + .../Transforms/ArgumentPromotion/pr3085.ll | 1944 ++++++ .../Transforms/ArgumentPromotion/pr32917.ll | 23 + .../pr33641_remove_arg_dbgvalue.ll | 38 + .../Transforms/ArgumentPromotion/profile.ll | 23 + .../ArgumentPromotion/reserve-tbaa.ll | 53 + .../test/Transforms/ArgumentPromotion/sret.ll | 29 + .../test/Transforms/ArgumentPromotion/tail.ll | 23 + .../Transforms/ArgumentPromotion/variadic.ll | 29 + .../AtomicExpand/AArch64/atomicrmw-fp.ll | 47 + .../AArch64/expand-atomicrmw-xchg-fp.ll | 57 + .../AtomicExpand/AArch64/lit.local.cfg | 3 + .../AMDGPU/expand-atomic-rmw-fadd.ll | 264 + .../AMDGPU/expand-atomic-rmw-fsub.ll | 201 + .../AMDGPU/expand-atomic-rmw-nand.ll | 60 + .../AtomicExpand/AMDGPU/lit.local.cfg | 2 + .../AtomicExpand/ARM/atomic-expansion-v7.ll | 440 ++ .../AtomicExpand/ARM/atomic-expansion-v8.ll | 242 + .../AtomicExpand/ARM/atomicrmw-fp.ll | 51 + .../AtomicExpand/ARM/cmpxchg-weak.ll | 155 + .../Transforms/AtomicExpand/ARM/lit.local.cfg | 3 + .../AtomicExpand/Hexagon/atomicrmw-fp.ll | 47 + .../AtomicExpand/Hexagon/lit.local.cfg | 2 + .../AtomicExpand/Mips/atomicrmw-fp.ll | 51 + .../AtomicExpand/Mips/lit.local.cfg | 2 + .../AtomicExpand/RISCV/atomicrmw-fp.ll | 59 + .../AtomicExpand/RISCV/lit.local.cfg | 5 + .../Transforms/AtomicExpand/SPARC/libcalls.ll | 257 + .../AtomicExpand/SPARC/lit.local.cfg | 2 + .../Transforms/AtomicExpand/SPARC/partword.ll | 191 + .../AtomicExpand/X86/expand-atomic-libcall.ll | 34 + .../X86/expand-atomic-non-integer.ll | 167 + .../AtomicExpand/X86/expand-atomic-rmw-fp.ll | 112 + .../X86/expand-atomic-rmw-initial-load.ll | 11 + .../AtomicExpand/X86/expand-atomic-xchg-fp.ll | 42 + .../Transforms/AtomicExpand/X86/lit.local.cfg | 2 + llvm/test/Transforms/BDCE/basic.ll | 397 ++ llvm/test/Transforms/BDCE/dbg-multipleuses.ll | 47 + llvm/test/Transforms/BDCE/dce-pure.ll | 34 + llvm/test/Transforms/BDCE/dead-uses.ll | 103 + llvm/test/Transforms/BDCE/dead-void-ro.ll | 18 + .../Transforms/BDCE/invalidate-assumptions.ll | 95 + llvm/test/Transforms/BDCE/order.ll | 37 + llvm/test/Transforms/BDCE/pr26587.ll | 46 + llvm/test/Transforms/BDCE/vectors.ll | 102 + .../BlockExtractor/extract-blocks.ll | 43 + .../BlockExtractor/invalid-block.ll | 9 + .../BlockExtractor/invalid-function.ll | 9 + .../2007-10-19-InlineAsmDirectives.ll | 23 + .../callsite-instructions-before-call.ll | 253 + .../callsite-no-or-structure.ll | 139 + .../callsite-no-splitting.ll | 42 + .../CallSiteSplitting/callsite-split-debug.ll | 56 + .../callsite-split-or-phi.ll | 588 ++ .../callsite-split-preserve-debug.ll | 85 + .../CallSiteSplitting/callsite-split.ll | 119 + .../test/Transforms/CallSiteSplitting/lpad.ll | 40 + .../Transforms/CallSiteSplitting/musttail.ll | 104 + .../CallSiteSplitting/split-loop.ll | 90 + .../simple-arguments.ll | 83 + .../CalledValuePropagation/simple-memory.ll | 62 + .../CalledValuePropagation/simple-select.ll | 39 + .../CanonicalizeAliases/canonicalize.ll | 37 + .../2004-03-13-LoopExtractorCrash.ll | 75 + .../2004-03-14-DominanceProblem.ll | 33 + .../2004-03-14-NoSwitchSupport.ll | 28 + .../CodeExtractor/2004-03-17-MissedLiveIns.ll | 47 + .../2004-03-17-UpdatePHIsOutsideRegion.ll | 23 + .../2004-03-18-InvokeHandling.ll | 198 + .../2004-08-12-BlockExtractPHI.ll | 26 + .../CodeExtractor/2004-11-12-InvokeExtract.ll | 18 + .../CodeExtractor/BlockAddressReference.ll | 36 + .../BlockAddressSelfReference.ll | 50 + .../CodeExtractor/ExtractedFnEntryCount.ll | 33 + .../CodeExtractor/MultipleExitBranchProb.ll | 34 + .../CodeExtractor/PartialInlineAlloca.ll | 68 + .../CodeExtractor/PartialInlineAlloca2.ll | 65 + .../CodeExtractor/PartialInlineAlloca4.ll | 70 + .../CodeExtractor/PartialInlineAlloca5.ll | 66 + .../CodeExtractor/PartialInlineAnd.ll | 56 + .../CodeExtractor/PartialInlineAndOr.ll | 63 + .../CodeExtractor/PartialInlineAttributes.ll | 85 + .../CodeExtractor/PartialInlineCallRef.ll | 56 + .../CodeExtractor/PartialInlineDebug.ll | 106 + .../PartialInlineEntryPHICost.ll | 40 + .../CodeExtractor/PartialInlineEntryUpdate.ll | 41 + .../CodeExtractor/PartialInlineHighCost.ll | 107 + .../PartialInlineInvokeProducesOutVal.ll | 51 + .../CodeExtractor/PartialInlineLiveAcross.ll | 61 + .../CodeExtractor/PartialInlineNoInline.ll | 45 + .../CodeExtractor/PartialInlineNoLiveOut.ll | 62 + .../CodeExtractor/PartialInlineNotViable.ll | 63 + .../CodeExtractor/PartialInlineORECrash.ll | 170 + .../CodeExtractor/PartialInlineOptRemark.ll | 138 + .../CodeExtractor/PartialInlineOr.ll | 97 + .../CodeExtractor/PartialInlineOrAnd.ll | 71 + .../PartialInlinePGOMultiRegion.ll | 169 + .../CodeExtractor/PartialInlinePGORegion.ll | 120 + .../CodeExtractor/PartialInlineVarArg.ll | 107 + .../PartialInlineVarArgsDebug.ll | 68 + .../CodeExtractor/SingleCondition.ll | 23 + .../X86/InheritTargetAttributes.ll | 40 + .../CodeExtractor/X86/lit.local.cfg | 3 + llvm/test/Transforms/CodeExtractor/cost.ll | 64 + .../Transforms/CodeExtractor/cost_meta.ll | 41 + .../CodeExtractor/extract-assume.ll | 29 + .../Transforms/CodeExtractor/inline_eh.ll | 52 + .../Transforms/CodeExtractor/inline_eh_1.ll | 56 + .../Transforms/CodeExtractor/live_shrink.ll | 67 + .../CodeExtractor/live_shrink_gep.ll | 66 + .../CodeExtractor/live_shrink_hoist.ll | 70 + .../CodeExtractor/live_shrink_multiple.ll | 66 + .../CodeExtractor/live_shrink_unsafe.ll | 94 + .../CodeExtractor/unreachable-block.ll | 36 + .../CodeGenPrepare/2008-11-24-RAUW-Self.ll | 511 ++ .../CodeGenPrepare/AArch64/free-zext.ll | 82 + .../AArch64/large-offset-gep.ll | 182 + .../CodeGenPrepare/AArch64/lit.local.cfg | 3 + .../AArch64/sink-free-instructions.ll | 236 + .../AArch64/trunc-weird-user.ll | 36 + .../CodeGenPrepare/AArch64/widen_switch.ll | 95 + .../CodeGenPrepare/AMDGPU/lit.local.cfg | 3 + .../AMDGPU/no-sink-addrspacecast.ll | 49 + .../AMDGPU/sink-addrspacecast.ll | 121 + .../ARM/bitreverse-recognize.ll | 37 + .../CodeGenPrepare/ARM/large-offset-gep.ll | 157 + .../CodeGenPrepare/ARM/lit.local.cfg | 3 + .../CodeGenPrepare/ARM/memory-intrinsics.ll | 43 + .../CodeGenPrepare/ARM/overflow-intrinsics.ll | 56 + .../CodeGenPrepare/ARM/sink-addrmode.ll | 420 ++ .../ARM/sink-free-instructions.ll | 232 + .../Transforms/CodeGenPrepare/ARM/splitgep.ll | 40 + .../CodeGenPrepare/ARM/tailcall-dup.ll | 77 + .../CodeGenPrepare/Mips/lit.local.cfg | 2 + .../Transforms/CodeGenPrepare/Mips/pr35209.ll | 64 + .../bypass-slow-div-constant-numerator.ll | 35 + .../NVPTX/bypass-slow-div-not-exact.ll | 16 + .../NVPTX/bypass-slow-div-special-cases.ll | 216 + .../CodeGenPrepare/NVPTX/bypass-slow-div.ll | 106 + .../NVPTX/dont-sink-nop-addrspacecast.ll | 21 + .../CodeGenPrepare/NVPTX/lit.local.cfg | 2 + .../CodeGenPrepare/X86/catchpad-phi-cast.ll | 117 + .../CodeGenPrepare/X86/computedgoto.ll | 294 + .../CodeGenPrepare/X86/cttz-ctlz.ll | 56 + .../CodeGenPrepare/X86/ext-logicop.ll | 128 + .../CodeGenPrepare/X86/extend-sink-hoist.ll | 64 + .../CodeGenPrepare/X86/fcmp-sinking.ll | 29 + .../CodeGenPrepare/X86/lit.local.cfg | 3 + .../X86/memset_chk-simplify-nobuiltin.ll | 18 + .../CodeGenPrepare/X86/multi-extension.ll | 25 + .../CodeGenPrepare/X86/optimizeSelect-DT.ll | 34 + .../CodeGenPrepare/X86/overflow-intrinsics.ll | 519 ++ .../Transforms/CodeGenPrepare/X86/pr27536.ll | 32 + .../Transforms/CodeGenPrepare/X86/pr35658.ll | 21 + .../Transforms/CodeGenPrepare/X86/select.ll | 205 + .../CodeGenPrepare/X86/sink-addrmode-base.ll | 543 ++ .../X86/sink-addrmode-select.ll | 34 + .../X86/sink-addrmode-two-phi.ll | 27 + .../CodeGenPrepare/X86/sink-addrmode.ll | 280 + .../CodeGenPrepare/X86/sink-addrspacecast.ll | 39 + .../CodeGenPrepare/X86/widen_switch.ll | 103 + .../CodeGenPrepare/X86/x86-shuffle-sink.ll | 180 + llvm/test/Transforms/CodeGenPrepare/basic.ll | 86 + .../CodeGenPrepare/bitreverse-hang.ll | 53 + .../CodeGenPrepare/builtin-condition.ll | 123 + .../CodeGenPrepare/crash-on-large-allocas.ll | 16 + .../Transforms/CodeGenPrepare/dom-tree.ll | 41 + .../CodeGenPrepare/gep-unmerging.ll | 60 + .../CodeGenPrepare/invariant.group.ll | 40 + .../Transforms/CodeGenPrepare/nonintegral.ll | 68 + .../CodeGenPrepare/section-samplepgo.ll | 57 + .../test/Transforms/CodeGenPrepare/section.ll | 84 + .../CodeGenPrepare/sink-shift-and-trunc.ll | 110 + .../CodeGenPrepare/skip-merging-case-block.ll | 200 + .../CodeGenPrepare/split-indirect-loop.ll | 37 + .../CodeGenPrepare/statepoint-relocate.ll | 149 + .../CodeGenPrepare/widenable-condition.ll | 93 + .../2002-05-03-DivideByZeroException.ll | 15 + .../ConstProp/2002-05-03-NotOperator.ll | 19 + .../ConstProp/2002-09-03-SetCC-Bools.ll | 20 + .../ConstProp/2003-05-12-DivideError.ll | 15 + .../ConstProp/2005-01-28-SetCCGEP.ll | 10 + .../ConstProp/2006-11-30-vector-cast.ll | 10 + .../ConstProp/2006-12-01-TruncBoolBug.ll | 7 + .../ConstProp/2006-12-01-bool-casts.ll | 15 + .../ConstProp/2007-02-05-BitCast.ll | 7 + .../Transforms/ConstProp/2007-02-23-sdiv.ll | 5 + .../ConstProp/2008-07-07-VectorCompare.ll | 28 + .../2009-06-20-constexpr-zero-lhs.ll | 11 + .../ConstProp/2009-09-01-GEP-Crash.ll | 24 + .../Transforms/ConstProp/InsertElement.ll | 32 + llvm/test/Transforms/ConstProp/avx512.ll | 490 ++ llvm/test/Transforms/ConstProp/basictest.ll | 53 + llvm/test/Transforms/ConstProp/bitcast.ll | 73 + llvm/test/Transforms/ConstProp/bswap.ll | 41 + .../Transforms/ConstProp/calls-math-finite.ll | 149 + llvm/test/Transforms/ConstProp/calls.ll | 206 + llvm/test/Transforms/ConstProp/cast.ll | 40 + .../Transforms/ConstProp/constant-expr.ll | 111 + .../Transforms/ConstProp/convert-from-fp16.ll | 97 + llvm/test/Transforms/ConstProp/div-zero.ll | 12 + .../test/Transforms/ConstProp/extractvalue.ll | 67 + .../Transforms/ConstProp/float-to-ptr-cast.ll | 15 + llvm/test/Transforms/ConstProp/insertvalue.ll | 86 + llvm/test/Transforms/ConstProp/loads.ll | 310 + llvm/test/Transforms/ConstProp/logicaltest.ll | 35 + .../test/Transforms/ConstProp/overflow-ops.ll | 250 + llvm/test/Transforms/ConstProp/phi.ll | 17 + llvm/test/Transforms/ConstProp/remtest.ll | 24 + llvm/test/Transforms/ConstProp/shift.ll | 69 + llvm/test/Transforms/ConstProp/sse.ll | 208 + llvm/test/Transforms/ConstProp/trunc_vec.ll | 9 + .../ConstantHoisting/AArch64/const-addr.ll | 23 + .../AArch64/const-hoist-gep.ll | 44 + .../AArch64/large-immediate.ll | 27 + .../ConstantHoisting/AArch64/lit.local.cfg | 2 + .../ConstantHoisting/ARM/bad-cases.ll | 140 + .../ARM/const-addr-no-neg-offset.ll | 101 + .../ConstantHoisting/ARM/const-hoist-gep.ll | 42 + .../ConstantHoisting/ARM/gep-struct-index.ll | 37 + .../ConstantHoisting/ARM/insertvalue.ll | 31 + .../ARM/is-legal-addressing-imm.ll | 120 + .../ConstantHoisting/ARM/lit.local.cfg | 2 + .../ARM/same-offset-multi-types.ll | 44 + .../PowerPC/const-base-addr.ll | 23 + .../ConstantHoisting/PowerPC/lit.local.cfg | 3 + .../ConstantHoisting/PowerPC/masks.ll | 66 + .../ConstantHoisting/X86/bad-cases.ll | 127 + .../ConstantHoisting/X86/cast-inst.ll | 30 + .../ConstantHoisting/X86/const-base-addr.ll | 24 + .../X86/dbg-dominatingblock.ll | 55 + .../X86/dbg-samebasicblock.ll | 41 + .../X86/delete-dead-cast-inst.ll | 22 + .../Transforms/ConstantHoisting/X86/ehpad.ll | 70 + .../ConstantHoisting/X86/large-immediate.ll | 36 + .../ConstantHoisting/X86/lit.local.cfg | 3 + .../Transforms/ConstantHoisting/X86/phi.ll | 117 + .../ConstantHoisting/X86/stackmap.ll | 17 + .../ConstantMerge/2002-09-23-CPR-Update.ll | 13 + .../2003-10-28-MergeExternalConstants.ll | 7 + .../ConstantMerge/2011-01-15-EitherOrder.ll | 18 + llvm/test/Transforms/ConstantMerge/align.ll | 28 + .../Transforms/ConstantMerge/dont-merge.ll | 82 + .../Transforms/ConstantMerge/merge-both.ll | 41 + .../Transforms/ConstantMerge/merge-dbg.ll | 32 + .../Transforms/ConstantMerge/unnamed-addr.ll | 40 + llvm/test/Transforms/Coroutines/ArgAddr.ll | 67 + .../Transforms/Coroutines/coro-catchswitch.ll | 88 + .../Transforms/Coroutines/coro-cleanup.ll | 18 + llvm/test/Transforms/Coroutines/coro-debug.ll | 142 + llvm/test/Transforms/Coroutines/coro-early.ll | 60 + .../Coroutines/coro-eh-aware-edge-split.ll | 218 + llvm/test/Transforms/Coroutines/coro-elide.ll | 112 + .../Coroutines/coro-frame-unreachable.ll | 50 + llvm/test/Transforms/Coroutines/coro-frame.ll | 66 + .../Transforms/Coroutines/coro-heap-elide.ll | 160 + .../Transforms/Coroutines/coro-materialize.ll | 52 + .../Transforms/Coroutines/coro-padding.ll | 61 + .../Coroutines/coro-spill-after-phi.ll | 60 + .../Coroutines/coro-spill-corobegin.ll | 69 + .../Transforms/Coroutines/coro-split-00.ll | 79 + .../Transforms/Coroutines/coro-split-01.ll | 56 + .../Transforms/Coroutines/coro-split-02.ll | 57 + .../Transforms/Coroutines/coro-split-alloc.ll | 64 + .../Transforms/Coroutines/coro-split-dbg.ll | 119 + .../Transforms/Coroutines/coro-split-eh.ll | 145 + .../Coroutines/coro-split-hidden.ll | 81 + .../Coroutines/coro-split-musttail.ll | 60 + llvm/test/Transforms/Coroutines/ex0.ll | 59 + llvm/test/Transforms/Coroutines/ex1.ll | 54 + llvm/test/Transforms/Coroutines/ex2.ll | 63 + llvm/test/Transforms/Coroutines/ex3.ll | 60 + llvm/test/Transforms/Coroutines/ex4.ll | 71 + llvm/test/Transforms/Coroutines/ex5.ll | 73 + llvm/test/Transforms/Coroutines/no-suspend.ll | 380 ++ .../Transforms/Coroutines/phi-coro-end.ll | 48 + .../Transforms/Coroutines/restart-trigger.ll | 43 + llvm/test/Transforms/Coroutines/smoketest.ll | 25 + .../2010-09-02-Trunc.ll | 25 + .../2010-09-26-MergeConstantRange.ll | 82 + .../CorrelatedValuePropagation/add.ll | 332 + .../CorrelatedValuePropagation/alloca.ll | 49 + .../CorrelatedValuePropagation/ashr.ll | 105 + .../CorrelatedValuePropagation/basic.ll | 725 +++ .../CorrelatedValuePropagation/conflict.ll | 75 + .../CorrelatedValuePropagation/crash.ll | 202 + .../CorrelatedValuePropagation/deopt.ll | 142 + .../CorrelatedValuePropagation/guards.ll | 112 + .../CorrelatedValuePropagation/icmp.ll | 245 + .../CorrelatedValuePropagation/non-null.ll | 336 + .../overflow_predicate.ll | 726 +++ .../CorrelatedValuePropagation/overflows.ll | 717 +++ .../phi-common-val.ll | 125 + .../CorrelatedValuePropagation/pointer.ll | 35 + .../CorrelatedValuePropagation/pr35807.ll | 66 + .../CorrelatedValuePropagation/range.ll | 917 +++ .../CorrelatedValuePropagation/sdiv.ll | 97 + .../CorrelatedValuePropagation/select.ll | 218 + .../CorrelatedValuePropagation/srem.ll | 44 + .../CorrelatedValuePropagation/udiv.ll | 101 + .../CorrelatedValuePropagation/urem.ll | 101 + llvm/test/Transforms/CrossDSOCFI/basic.ll | 81 + .../Transforms/CrossDSOCFI/cfi_functions.ll | 23 + llvm/test/Transforms/CrossDSOCFI/thumb.ll | 22 + llvm/test/Transforms/DCE/basic.ll | 15 + llvm/test/Transforms/DCE/calls-errno.ll | 99 + llvm/test/Transforms/DCE/guards.ll | 11 + llvm/test/Transforms/DCE/int_sideeffect.ll | 12 + .../DeadArgElim/2006-06-27-struct-ret.ll | 11 + .../DeadArgElim/2007-02-07-FuncRename.ll | 11 + .../DeadArgElim/2007-10-18-VarargsReturn.ll | 12 + .../DeadArgElim/2007-12-20-ParamAttrs.ll | 20 + .../2008-01-16-VarargsParamAttrs.ll | 31 + .../DeadArgElim/2008-06-23-DeadAfterLive.ll | 23 + .../DeadArgElim/2009-03-17-MRE-Invoke.ll | 32 + .../DeadArgElim/2010-04-30-DbgInfo.ll | 78 + .../2013-05-17-VarargsAndBlockAddress.ll | 25 + .../test/Transforms/DeadArgElim/aggregates.ll | 186 + llvm/test/Transforms/DeadArgElim/allocsize.ll | 18 + llvm/test/Transforms/DeadArgElim/basictest.ll | 36 + .../Transforms/DeadArgElim/call_profile.ll | 22 + llvm/test/Transforms/DeadArgElim/canon.ll | 24 + llvm/test/Transforms/DeadArgElim/comdat.ll | 14 + .../DeadArgElim/dbginfo-preserve-dbgloc.ll | 135 + .../dbginfo-update-dbgval-local.ll | 67 + .../DeadArgElim/dbginfo-update-dbgval.ll | 86 + llvm/test/Transforms/DeadArgElim/dbginfo.ll | 70 + .../Transforms/DeadArgElim/dead_vaargs.ll | 36 + .../Transforms/DeadArgElim/deadexternal.ll | 67 + .../test/Transforms/DeadArgElim/deadretval.ll | 18 + .../Transforms/DeadArgElim/deadretval2.ll | 59 + .../Transforms/DeadArgElim/func_metadata.ll | 67 + llvm/test/Transforms/DeadArgElim/funclet.ll | 29 + llvm/test/Transforms/DeadArgElim/keepalive.ll | 47 + llvm/test/Transforms/DeadArgElim/linkage.ll | 21 + .../Transforms/DeadArgElim/multdeadretval.ll | 68 + .../Transforms/DeadArgElim/musttail-caller.ll | 16 + .../Transforms/DeadArgElim/naked_functions.ll | 31 + .../DeadArgElim/nonzero-address-spaces.ll | 20 + .../Transforms/DeadArgElim/operandbundle.ll | 12 + llvm/test/Transforms/DeadArgElim/returned.ll | 55 + .../Transforms/DeadArgElim/variadic_safety.ll | 38 + .../2011-03-25-DSEMiscompile.ll | 23 + .../2011-09-06-EndOfFunction.ll | 23 + .../DeadStoreElimination/2011-09-06-MemCpy.ll | 85 + .../2016-07-17-UseAfterFree.ll | 32 + .../OverwriteStoreBegin.ll | 393 ++ .../DeadStoreElimination/OverwriteStoreEnd.ll | 390 ++ .../DeadStoreElimination/PartialStore.ll | 87 + .../X86/gather-null-pointer.ll | 21 + .../Transforms/DeadStoreElimination/atomic.ll | 132 + .../DeadStoreElimination/calloc-store.ll | 65 + .../combined-partial-overwrites.ll | 239 + .../DeadStoreElimination/const-pointers.ll | 40 + .../Transforms/DeadStoreElimination/crash.ll | 74 + .../DeadStoreElimination/cs-cs-aliasing.ll | 74 + .../DeadStoreElimination/debuginfo.ll | 31 + .../DeadStoreElimination/dominate.ll | 25 + .../Transforms/DeadStoreElimination/fence.ll | 96 + .../Transforms/DeadStoreElimination/free.ll | 70 + .../DeadStoreElimination/inst-limits.ll | 261 + .../DeadStoreElimination/int_sideeffect.ll | 15 + .../DeadStoreElimination/invariant.start.ll | 34 + .../launder.invariant.group.ll | 65 + .../DeadStoreElimination/libcalls.ll | 70 + .../DeadStoreElimination/lifetime.ll | 37 + .../mda-with-dbg-values.ll | 72 + .../DeadStoreElimination/memintrinsics.ll | 97 + .../memset-missing-debugloc.ll | 89 + .../merge-stores-big-endian.ll | 173 + .../DeadStoreElimination/merge-stores.ll | 237 + .../DeadStoreElimination/no-targetdata.ll | 21 + .../DeadStoreElimination/operand-bundles.ll | 55 + .../DeadStoreElimination/pr11390.ll | 38 + .../Transforms/DeadStoreElimination/simple.ll | 897 +++ .../DeadStoreElimination/tail-byval.ll | 23 + .../DivRemPairs/PowerPC/div-rem-pairs.ll | 303 + .../DivRemPairs/PowerPC/lit.local.cfg | 3 + .../DivRemPairs/X86/div-rem-pairs.ll | 297 + .../Transforms/DivRemPairs/X86/lit.local.cfg | 3 + .../Transforms/EarlyCSE/AArch64/intrinsics.ll | 234 + .../test/Transforms/EarlyCSE/AArch64/ldstN.ll | 19 + .../Transforms/EarlyCSE/AArch64/lit.local.cfg | 5 + .../Transforms/EarlyCSE/AMDGPU/lit.local.cfg | 5 + .../Transforms/EarlyCSE/AMDGPU/memrealtime.ll | 43 + llvm/test/Transforms/EarlyCSE/and_or.ll | 144 + llvm/test/Transforms/EarlyCSE/atomics.ll | 260 + llvm/test/Transforms/EarlyCSE/basic.ll | 293 + llvm/test/Transforms/EarlyCSE/commute.ll | 546 ++ llvm/test/Transforms/EarlyCSE/conditional.ll | 108 + .../Transforms/EarlyCSE/const-speculation.ll | 39 + .../Transforms/EarlyCSE/debug-info-undef.ll | 69 + .../test/Transforms/EarlyCSE/debuginfo-dce.ll | 64 + llvm/test/Transforms/EarlyCSE/edge.ll | 174 + llvm/test/Transforms/EarlyCSE/fence.ll | 87 + llvm/test/Transforms/EarlyCSE/flags.ll | 19 + .../test/Transforms/EarlyCSE/floatingpoint.ll | 15 + .../EarlyCSE/globalsaa-memoryssa.ll | 25 + llvm/test/Transforms/EarlyCSE/guards.ll | 528 ++ .../Transforms/EarlyCSE/instsimplify-dom.ll | 20 + .../Transforms/EarlyCSE/int_sideeffect.ll | 27 + llvm/test/Transforms/EarlyCSE/intrinsics.ll | 36 + .../Transforms/EarlyCSE/invariant-loads.ll | 158 + .../Transforms/EarlyCSE/invariant.start.ll | 290 + llvm/test/Transforms/EarlyCSE/memoryssa.ll | 150 + llvm/test/Transforms/EarlyCSE/pr33406.ll | 26 + .../Transforms/EarlyCSE/preserve_memoryssa.ll | 137 + llvm/test/Transforms/EarlyCSE/read-reg.ll | 35 + .../Transforms/EarlyCSE/readnone-mayunwind.ll | 15 + .../visibility.ll | 11 + .../EntryExitInstrumenter/debug-info.ll | 43 + .../EntryExitInstrumenter/mcount.ll | 114 + .../Transforms/ExpandMemCmp/X86/lit.local.cfg | 3 + .../Transforms/ExpandMemCmp/X86/memcmp.ll | 1219 ++++ llvm/test/Transforms/Float2Int/basic.ll | 267 + .../Transforms/Float2Int/float2int-optnone.ll | 17 + llvm/test/Transforms/Float2Int/toolarge.ll | 16 + .../Transforms/ForcedFunctionAttrs/forced.ll | 12 + .../FunctionAttrs/2008-09-03-Mutual.ll | 18 + .../FunctionAttrs/2008-09-03-ReadNone.ll | 32 + .../FunctionAttrs/2008-09-03-ReadOnly.ll | 14 + .../FunctionAttrs/2008-09-13-VolatileRead.ll | 12 + .../FunctionAttrs/2008-12-29-Constant.ll | 12 + .../FunctionAttrs/2009-01-02-LocalStores.ll | 24 + .../FunctionAttrs/2010-10-30-volatile.ll | 14 + llvm/test/Transforms/FunctionAttrs/assume.ll | 5 + llvm/test/Transforms/FunctionAttrs/atomic.ll | 24 + .../Transforms/FunctionAttrs/comdat-ipo.ll | 17 + .../Transforms/FunctionAttrs/convergent.ll | 110 + .../FunctionAttrs/incompatible_fn_attrs.ll | 32 + .../FunctionAttrs/int_sideeffect.ll | 29 + .../FunctionAttrs/naked_functions.ll | 25 + .../Transforms/FunctionAttrs/nocapture.ll | 257 + .../FunctionAttrs/nonnull-global.ll | 11 + llvm/test/Transforms/FunctionAttrs/nonnull.ll | 240 + .../Transforms/FunctionAttrs/norecurse.ll | 91 + .../FunctionAttrs/operand-bundles-scc.ll | 17 + .../FunctionAttrs/optnone-simple.ll | 135 + llvm/test/Transforms/FunctionAttrs/optnone.ll | 25 + .../out-of-bounds-iterator-bug.ll | 31 + .../Transforms/FunctionAttrs/readattrs.ll | 115 + .../test/Transforms/FunctionAttrs/readnone.ll | 14 + .../test/Transforms/FunctionAttrs/returned.ll | 31 + .../Inputs/adjustable_threshold.ll | 37 + .../FunctionImport/Inputs/comdat.ll | 10 + .../FunctionImport/Inputs/funcimport.ll | 165 + .../FunctionImport/Inputs/funcimport_alias.ll | 7 + .../Inputs/funcimport_cutoff.ll | 9 + .../FunctionImport/Inputs/funcimport_debug.ll | 26 + .../Inputs/funcimport_forcecold.ll | 4 + .../Inputs/funcimport_resolved1.ll | 34 + .../Inputs/funcimport_resolved2.ll | 6 + .../FunctionImport/Inputs/funcimport_var2.ll | 10 + .../Inputs/hotness_based_import.ll | 81 + .../FunctionImport/Inputs/import_stats.ll | 16 + .../FunctionImport/Inputs/inlineasm.ll | 11 + .../FunctionImport/Inputs/not-prevailing.ll | 6 + .../FunctionImport/adjustable_threshold.ll | 31 + llvm/test/Transforms/FunctionImport/comdat.ll | 32 + .../Transforms/FunctionImport/funcimport.ll | 162 + .../FunctionImport/funcimport_alias.ll | 25 + .../FunctionImport/funcimport_cutoff.ll | 49 + .../FunctionImport/funcimport_debug.ll | 53 + .../FunctionImport/funcimport_forcecold.ll | 36 + .../funcimport_forcecold_samplepgo.ll | 37 + .../FunctionImport/funcimport_resolved.ll | 52 + .../FunctionImport/funcimport_var.ll | 27 + .../FunctionImport/hotness_based_import.ll | 137 + .../Transforms/FunctionImport/import_stats.ll | 71 + .../Transforms/FunctionImport/inlineasm.ll | 19 + .../FunctionImport/not-prevailing.ll | 18 + .../GCOVProfiling/function-numbering.ll | 123 + .../Transforms/GCOVProfiling/global-ctor.ll | 60 + .../test/Transforms/GCOVProfiling/linezero.ll | 145 + .../Transforms/GCOVProfiling/linkagename.ll | 31 + llvm/test/Transforms/GCOVProfiling/modules.ll | 13 + .../Transforms/GCOVProfiling/return-block.ll | 84 + .../GCOVProfiling/three-element-mdnode.ll | 28 + llvm/test/Transforms/GCOVProfiling/version.ll | 38 + .../GVN/2007-07-25-DominatedLoop.ll | 86 + .../Transforms/GVN/2007-07-25-InfiniteLoop.ll | 15 + llvm/test/Transforms/GVN/2007-07-25-Loop.ll | 15 + .../Transforms/GVN/2007-07-25-NestedLoop.ll | 38 + .../GVN/2007-07-25-SinglePredecessor.ll | 29 + .../GVN/2007-07-26-InterlockingLoops.ll | 40 + .../Transforms/GVN/2007-07-26-NonRedundant.ll | 16 + .../Transforms/GVN/2007-07-26-PhiErasure.ll | 44 + .../Transforms/GVN/2007-07-30-PredIDom.ll | 274 + .../Transforms/GVN/2007-07-31-NoDomInherit.ll | 314 + .../Transforms/GVN/2007-07-31-RedundantPhi.ll | 23 + .../Transforms/GVN/2008-02-12-UndefLoad.ll | 21 + llvm/test/Transforms/GVN/2008-02-13-NewPHI.ll | 22 + .../Transforms/GVN/2008-07-02-Unreachable.ll | 36 + .../Transforms/GVN/2008-12-09-SelfRemove.ll | 38 + .../Transforms/GVN/2008-12-12-RLE-Crash.ll | 35 + .../GVN/2008-12-14-rle-reanalyze.ll | 18 + .../Transforms/GVN/2008-12-15-CacheVisited.ll | 28 + .../GVN/2009-01-21-SortInvalidation.ll | 55 + .../GVN/2009-01-22-SortInvalidation.ll | 100 + .../Transforms/GVN/2009-03-10-PREOnVoid.ll | 110 + .../GVN/2009-07-13-MemDepSortFail.ll | 67 + .../GVN/2009-11-12-MemDepMallocBitCast.ll | 15 + .../GVN/2010-03-31-RedundantPHIs.ll | 42 + llvm/test/Transforms/GVN/2010-05-08-OneBit.ll | 67 + .../Transforms/GVN/2010-11-13-Simplify.ll | 15 + .../Transforms/GVN/2011-04-27-phioperands.ll | 106 + .../GVN/2011-07-07-MatchIntrinsicExtract.ll | 85 + .../Transforms/GVN/2011-09-07-TypeIdFor.ll | 81 + .../Transforms/GVN/2012-05-22-PreCrash.ll | 33 + .../GVN/2016-08-30-MaskedScatterGather.ll | 42 + llvm/test/Transforms/GVN/MemdepMiscompile.ll | 54 + .../GVN/PRE/2009-02-17-LoadPRECrash.ll | 193 + .../GVN/PRE/2009-06-17-InvalidPRE.ll | 73 + .../2011-06-01-NonLocalMemdepMiscompile.ll | 60 + .../GVN/PRE/2017-06-28-pre-load-dbgloc.ll | 79 + .../GVN/PRE/2017-10-16-LoadPRECrash.ll | 39 + .../2018-06-08-pre-load-dbgloc-no-null-opt.ll | 82 + llvm/test/Transforms/GVN/PRE/atomic.ll | 503 ++ .../test/Transforms/GVN/PRE/invariant-load.ll | 136 + llvm/test/Transforms/GVN/PRE/load-metadata.ll | 24 + .../test/Transforms/GVN/PRE/load-pre-align.ll | 44 + llvm/test/Transforms/GVN/PRE/load-pre-licm.ll | 207 + .../Transforms/GVN/PRE/load-pre-nonlocal.ll | 112 + llvm/test/Transforms/GVN/PRE/local-pre.ll | 147 + .../Transforms/GVN/PRE/lpre-call-wrap-2.ll | 40 + .../test/Transforms/GVN/PRE/lpre-call-wrap.ll | 55 + llvm/test/Transforms/GVN/PRE/nonintegral.ll | 39 + .../Transforms/GVN/PRE/phi-translate-2.ll | 220 + llvm/test/Transforms/GVN/PRE/phi-translate.ll | 56 + llvm/test/Transforms/GVN/PRE/pre-after-rle.ll | 84 + llvm/test/Transforms/GVN/PRE/pre-basic-add.ll | 32 + llvm/test/Transforms/GVN/PRE/pre-gep-load.ll | 130 + llvm/test/Transforms/GVN/PRE/pre-jt-add.ll | 36 + .../Transforms/GVN/PRE/pre-load-guards.ll | 146 + .../GVN/PRE/pre-load-implicit-cf-updates.ll | 118 + llvm/test/Transforms/GVN/PRE/pre-load.ll | 590 ++ .../Transforms/GVN/PRE/pre-no-cost-phi.ll | 31 + .../test/Transforms/GVN/PRE/pre-poison-add.ll | 52 + .../Transforms/GVN/PRE/pre-single-pred.ll | 45 + llvm/test/Transforms/GVN/PRE/preserve-tbaa.ll | 31 + .../Transforms/GVN/PRE/rle-addrspace-cast.ll | 14 + .../Transforms/GVN/PRE/rle-phi-translate.ll | 146 + .../Transforms/GVN/PRE/rle-semidominated.ll | 36 + llvm/test/Transforms/GVN/PRE/rle.ll | 694 +++ llvm/test/Transforms/GVN/PRE/volatile.ll | 167 + llvm/test/Transforms/GVN/assume-equal.ll | 273 + llvm/test/Transforms/GVN/basic-undef-test.ll | 15 + llvm/test/Transforms/GVN/basic.ll | 16 + llvm/test/Transforms/GVN/big-endian.ll | 40 + llvm/test/Transforms/GVN/bitcast-of-call.ll | 13 + llvm/test/Transforms/GVN/br-identical.ll | 38 + .../Transforms/GVN/callbr-loadpre-critedge.ll | 49 + .../GVN/callbr-scalarpre-critedge.ll | 43 + .../Transforms/GVN/calloc-load-removal.ll | 25 + llvm/test/Transforms/GVN/calls-nonlocal.ll | 75 + llvm/test/Transforms/GVN/calls-readonly.ll | 45 + llvm/test/Transforms/GVN/commute.ll | 23 + llvm/test/Transforms/GVN/cond_br.ll | 55 + llvm/test/Transforms/GVN/cond_br2.ll | 140 + llvm/test/Transforms/GVN/condprop.ll | 371 ++ llvm/test/Transforms/GVN/crash-no-aa.ll | 15 + llvm/test/Transforms/GVN/crash.ll | 201 + .../test/Transforms/GVN/dbg-redundant-load.ll | 52 + llvm/test/Transforms/GVN/debugloc.ll | 77 + llvm/test/Transforms/GVN/edge.ll | 170 + llvm/test/Transforms/GVN/fence.ll | 88 + llvm/test/Transforms/GVN/flags.ll | 18 + llvm/test/Transforms/GVN/fold-const-expr.ll | 99 + llvm/test/Transforms/GVN/fpmath.ll | 45 + llvm/test/Transforms/GVN/funclet.ll | 44 + llvm/test/Transforms/GVN/int_sideeffect.ll | 51 + llvm/test/Transforms/GVN/invariant.group.ll | 458 ++ llvm/test/Transforms/GVN/invariant.start.ll | 59 + llvm/test/Transforms/GVN/lifetime-simple.ll | 20 + llvm/test/Transforms/GVN/load-constant-mem.ll | 19 + .../GVN/load-from-unreachable-predecessor.ll | 20 + .../Transforms/GVN/malloc-load-removal.ll | 56 + llvm/test/Transforms/GVN/no-mem-dep-info.ll | 29 + .../GVN/no_speculative_loads_with_asan.ll | 82 + llvm/test/Transforms/GVN/noalias.ll | 43 + .../Transforms/GVN/non-integral-pointers.ll | 287 + llvm/test/Transforms/GVN/non-local-offset.ll | 59 + .../test/Transforms/GVN/nonescaping-malloc.ll | 111 + .../Transforms/GVN/null-aliases-nothing.ll | 20 + llvm/test/Transforms/GVN/opt-remarks.ll | 114 + .../GVN/phi-translate-partial-alias.ll | 27 + llvm/test/Transforms/GVN/pr10820.ll | 18 + llvm/test/Transforms/GVN/pr12979.ll | 93 + llvm/test/Transforms/GVN/pr14166.ll | 24 + llvm/test/Transforms/GVN/pr17732.ll | 30 + llvm/test/Transforms/GVN/pr17852.ll | 66 + llvm/test/Transforms/GVN/pr24397.ll | 18 + llvm/test/Transforms/GVN/pr24426.ll | 18 + llvm/test/Transforms/GVN/pr25440.ll | 108 + llvm/test/Transforms/GVN/pr28562.ll | 9 + llvm/test/Transforms/GVN/pr28879.ll | 34 + llvm/test/Transforms/GVN/pr32314.ll | 53 + llvm/test/Transforms/GVN/pr34908.ll | 13 + llvm/test/Transforms/GVN/pr36063.ll | 22 + llvm/test/Transforms/GVN/pre-compare.ll | 68 + llvm/test/Transforms/GVN/pre-new-inst.ll | 29 + .../test/Transforms/GVN/propagate-ir-flags.ll | 29 + llvm/test/Transforms/GVN/range.ll | 100 + llvm/test/Transforms/GVN/readattrs.ll | 17 + llvm/test/Transforms/GVN/rle-must-alias.ll | 47 + .../Transforms/GVN/rle-no-phi-translate.ll | 28 + llvm/test/Transforms/GVN/rle-nonlocal.ll | 25 + llvm/test/Transforms/GVN/stale-loop-info.ll | 50 + llvm/test/Transforms/GVN/tbaa.ll | 148 + .../Transforms/GVN/unreachable-predecessor.ll | 38 + .../GVN/unreachable_block_infinite_loop.ll | 43 + .../Transforms/GVN/volatile-nonvolatile.ll | 61 + llvm/test/Transforms/GVNHoist/hoist-call.ll | 28 + .../Transforms/GVNHoist/hoist-convergent.ll | 93 + llvm/test/Transforms/GVNHoist/hoist-inline.ll | 38 + llvm/test/Transforms/GVNHoist/hoist-md.ll | 121 + .../GVNHoist/hoist-more-than-two-branches.ll | 31 + llvm/test/Transforms/GVNHoist/hoist-mssa.ll | 69 + llvm/test/Transforms/GVNHoist/hoist-newgvn.ll | 105 + .../test/Transforms/GVNHoist/hoist-pr20242.ll | 77 + .../test/Transforms/GVNHoist/hoist-pr22005.ll | 30 + .../test/Transforms/GVNHoist/hoist-pr28606.ll | 50 + .../test/Transforms/GVNHoist/hoist-pr28933.ll | 20 + .../test/Transforms/GVNHoist/hoist-pr31891.ll | 83 + .../GVNHoist/hoist-recursive-geps.ll | 106 + .../Transforms/GVNHoist/hoist-simplify-phi.ll | 54 + .../GVNHoist/hoist-unsafe-pr31729.ll | 81 + .../Transforms/GVNHoist/hoist-very-busy.ll | 55 + llvm/test/Transforms/GVNHoist/hoist.ll | 646 ++ .../GVNHoist/infinite-loop-direct.ll | 96 + .../GVNHoist/infinite-loop-indirect.ll | 285 + .../Transforms/GVNHoist/int_sideeffect.ll | 30 + llvm/test/Transforms/GVNHoist/ld_hoist1.ll | 64 + .../Transforms/GVNHoist/ld_hoist_st_sink.ll | 84 + .../Transforms/GVNHoist/non-trivial-phi.ll | 34 + llvm/test/Transforms/GVNHoist/pr28626.ll | 42 + llvm/test/Transforms/GVNHoist/pr29031.ll | 51 + llvm/test/Transforms/GVNHoist/pr29034.ll | 122 + llvm/test/Transforms/GVNHoist/pr30216.ll | 52 + llvm/test/Transforms/GVNHoist/pr30499.ll | 30 + .../Transforms/GVNHoist/pr35222-hoist-load.ll | 70 + llvm/test/Transforms/GVNHoist/pr36787.ll | 76 + llvm/test/Transforms/GVNHoist/pr37445.ll | 119 + llvm/test/Transforms/GVNHoist/pr37808.ll | 40 + llvm/test/Transforms/GVNHoist/pr38807.ll | 50 + llvm/test/Transforms/GVNSink/dither.ll | 42 + llvm/test/Transforms/GVNSink/indirect-call.ll | 70 + .../test/Transforms/GVNSink/int_sideeffect.ll | 30 + .../GVNSink/sink-combine-metadata.ll | 55 + .../Transforms/GVNSink/sink-common-code.ll | 697 +++ llvm/test/Transforms/GVNSink/struct.ll | 71 + .../GlobalDCE/2002-07-17-CastRef.ll | 11 + .../GlobalDCE/2002-07-17-ConstantRef.ll | 13 + .../GlobalDCE/2002-08-17-FunctionDGE.ll | 18 + .../GlobalDCE/2002-08-17-WorkListTest.ll | 14 + .../GlobalDCE/2002-09-12-Redeletion.ll | 11 + .../GlobalDCE/2003-07-01-SelfReference.ll | 13 + .../2003-10-09-PreserveWeakGlobals.ll | 6 + .../GlobalDCE/2009-01-05-DeadAliases.ll | 18 + .../GlobalDCE/2009-02-17-AliasUsesAliasee.ll | 4 + .../Transforms/GlobalDCE/basicvariabletest.ll | 6 + llvm/test/Transforms/GlobalDCE/comdats.ll | 178 + .../GlobalDCE/complex-constantexpr.ll | 97 + .../Transforms/GlobalDCE/crash-assertingvh.ll | 24 + .../Transforms/GlobalDCE/deadblockaddr.ll | 16 + .../GlobalDCE/externally_available.ll | 21 + .../test/Transforms/GlobalDCE/global-ifunc.ll | 13 + .../test/Transforms/GlobalDCE/global_ctors.ll | 37 + .../GlobalDCE/global_ctors_integration.ll | 45 + llvm/test/Transforms/GlobalDCE/indirectbr.ll | 18 + .../Transforms/GlobalMerge/alignment-2.ll | 22 + llvm/test/Transforms/GlobalMerge/alignment.ll | 20 + llvm/test/Transforms/GlobalMerge/basic.ll | 31 + .../test/Transforms/GlobalMerge/debug-info.ll | 29 + llvm/test/Transforms/GlobalMerge/used.ll | 29 + .../GlobalOpt/2004-10-10-CastStoreOnce.ll | 17 + .../2005-06-15-LocalizeConstExprCrash.ll | 10 + .../Transforms/GlobalOpt/2005-09-27-Crash.ll | 27 + .../GlobalOpt/2006-07-07-InlineAsmCrash.ll | 135 + .../2006-11-01-ShrinkGlobalPhiCrash.ll | 33 + .../Transforms/GlobalOpt/2007-04-05-Crash.ll | 34 + .../Transforms/GlobalOpt/2007-05-13-Crash.ll | 74 + .../GlobalOpt/2007-06-04-PackedStruct.ll | 36 + .../GlobalOpt/2007-11-09-GEP-GEP-Crash.ll | 19 + .../Transforms/GlobalOpt/2008-01-03-Crash.ll | 26 + .../GlobalOpt/2008-01-13-OutOfRangeSROA.ll | 18 + .../GlobalOpt/2008-01-29-VolatileGlobal.ll | 10 + .../GlobalOpt/2008-04-26-SROA-Global-Align.ll | 34 + .../GlobalOpt/2008-07-17-addrspace.ll | 28 + .../GlobalOpt/2008-12-16-HeapSRACrash-2.ll | 28 + .../GlobalOpt/2008-12-16-HeapSRACrash.ll | 30 + .../GlobalOpt/2009-01-13-phi-user.ll | 36 + .../GlobalOpt/2009-02-15-BitcastAlias.ll | 10 + .../GlobalOpt/2009-02-15-ResolveAlias.ll | 24 + .../Transforms/GlobalOpt/2009-03-05-dbg.ll | 80 + .../GlobalOpt/2009-03-06-Anonymous.ll | 23 + .../GlobalOpt/2009-03-07-PromotePtrToBool.ll | 19 + .../GlobalOpt/2009-06-01-RecursivePHI.ll | 122 + .../2009-11-16-BrokenPerformHeapAllocSRoA.ll | 26 + ...2009-11-16-MallocSingleStoreToGlobalVar.ll | 30 + .../GlobalOpt/2010-02-25-MallocPromote.ll | 18 + .../GlobalOpt/2010-02-26-MallocSROA.ll | 27 + .../GlobalOpt/2010-10-19-WeakOdr.ll | 16 + .../GlobalOpt/2011-04-09-EmptyGlobalCtors.ll | 5 + .../GlobalOpt/2012-05-11-blockaddress.ll | 16 + .../Transforms/GlobalOpt/GSROA-section.ll | 30 + .../MallocSROA-section-no-null-opt.ll | 34 + .../GlobalOpt/MallocSROA-section.ll | 28 + .../GlobalOpt/PowerPC/coldcc_coldsites.ll | 81 + .../GlobalOpt/PowerPC/lit.local.cfg | 3 + .../test/Transforms/GlobalOpt/SROA-section.ll | 27 + .../Transforms/GlobalOpt/alias-resolve.ll | 46 + .../GlobalOpt/alias-used-address-space.ll | 26 + .../GlobalOpt/alias-used-section.ll | 8 + llvm/test/Transforms/GlobalOpt/alias-used.ll | 66 + .../GlobalOpt/amdgcn-ctor-alloca.ll | 17 + .../Transforms/GlobalOpt/array-elem-refs.ll | 32 + llvm/test/Transforms/GlobalOpt/assume.ll | 21 + llvm/test/Transforms/GlobalOpt/atexit.ll | 6 + llvm/test/Transforms/GlobalOpt/atomic.ll | 25 + .../available_externally_global_ctors.ll | 22 + llvm/test/Transforms/GlobalOpt/basictest.ll | 10 + .../test/Transforms/GlobalOpt/blockaddress.ll | 23 + .../GlobalOpt/cleanup-pointer-root-users.ll | 49 + .../GlobalOpt/coldcc_stress_test.ll | 48 + .../Transforms/GlobalOpt/compiler-used.ll | 16 + .../GlobalOpt/constantexpr-dangle.ll | 12 + .../GlobalOpt/constantfold-initializers.ll | 103 + llvm/test/Transforms/GlobalOpt/crash-2.ll | 19 + llvm/test/Transforms/GlobalOpt/crash.ll | 80 + .../GlobalOpt/ctor-list-opt-constexpr.ll | 34 + .../GlobalOpt/ctor-list-opt-inbounds.ll | 23 + .../Transforms/GlobalOpt/ctor-list-opt.ll | 115 + llvm/test/Transforms/GlobalOpt/cxx-dtor.ll | 33 + .../Transforms/GlobalOpt/deaddeclaration.ll | 7 + .../test/Transforms/GlobalOpt/deadfunction.ll | 27 + .../test/Transforms/GlobalOpt/deadglobal-2.ll | 11 + llvm/test/Transforms/GlobalOpt/deadglobal.ll | 28 + .../Transforms/GlobalOpt/evaluate-bitcast.ll | 28 + .../GlobalOpt/evaluate-call-errors.ll | 99 + .../Transforms/GlobalOpt/evaluate-call.ll | 87 + .../GlobalOpt/evaluate-constfold-call.ll | 55 + .../externally-initialized-aggregate.ll | 50 + .../externally-initialized-global-ctr.ll | 35 + .../GlobalOpt/externally-initialized.ll | 37 + llvm/test/Transforms/GlobalOpt/fastcc.ll | 55 + .../Transforms/GlobalOpt/global-demotion.ll | 80 + .../GlobalOpt/globalsra-multigep.ll | 16 + .../Transforms/GlobalOpt/globalsra-partial.ll | 25 + .../GlobalOpt/globalsra-unknown-index.ll | 54 + llvm/test/Transforms/GlobalOpt/globalsra.ll | 45 + .../GlobalOpt/heap-sra-1-no-null-opt.ll | 40 + llvm/test/Transforms/GlobalOpt/heap-sra-1.ll | 45 + .../GlobalOpt/heap-sra-2-no-null-opt.ll | 39 + llvm/test/Transforms/GlobalOpt/heap-sra-2.ll | 45 + .../GlobalOpt/heap-sra-3-no-null-opt.ll | 41 + llvm/test/Transforms/GlobalOpt/heap-sra-3.ll | 46 + .../GlobalOpt/heap-sra-4-no-null-opt.ll | 44 + llvm/test/Transforms/GlobalOpt/heap-sra-4.ll | 47 + .../GlobalOpt/heap-sra-phi-no-null-opt.ll | 54 + .../test/Transforms/GlobalOpt/heap-sra-phi.ll | 52 + .../Transforms/GlobalOpt/int_sideeffect.ll | 16 + .../GlobalOpt/integer-bool-dwarf.ll | 61 + .../test/Transforms/GlobalOpt/integer-bool.ll | 28 + .../GlobalOpt/invariant-nodatalayout.ll | 17 + .../Transforms/GlobalOpt/invariant.group.ll | 79 + llvm/test/Transforms/GlobalOpt/invariant.ll | 59 + llvm/test/Transforms/GlobalOpt/invoke.ll | 27 + llvm/test/Transforms/GlobalOpt/iterate.ll | 11 + .../load-store-global-no-null-opt.ll | 28 + .../Transforms/GlobalOpt/load-store-global.ll | 38 + .../GlobalOpt/localize-constexpr-debuginfo.ll | 70 + .../GlobalOpt/localize-constexpr.ll | 28 + .../GlobalOpt/malloc-promote-1-no-null-opt.ll | 31 + .../Transforms/GlobalOpt/malloc-promote-1.ll | 32 + .../GlobalOpt/malloc-promote-2-no-null-opt.ll | 24 + .../Transforms/GlobalOpt/malloc-promote-2.ll | 27 + .../Transforms/GlobalOpt/malloc-promote-3.ll | 18 + llvm/test/Transforms/GlobalOpt/memcpy.ll | 13 + llvm/test/Transforms/GlobalOpt/memset-null.ll | 29 + llvm/test/Transforms/GlobalOpt/memset.ll | 31 + llvm/test/Transforms/GlobalOpt/metadata.ll | 32 + llvm/test/Transforms/GlobalOpt/musttail_cc.ll | 34 + .../Transforms/GlobalOpt/naked_functions.ll | 23 + llvm/test/Transforms/GlobalOpt/phi-select.ll | 27 + llvm/test/Transforms/GlobalOpt/pr21191.ll | 19 + llvm/test/Transforms/GlobalOpt/pr33686.ll | 17 + .../Transforms/GlobalOpt/preserve-comdats.ll | 37 + .../GlobalOpt/shrink-address-to-bool.ll | 46 + .../shrink-global-to-bool-check-debug.ll | 22 + .../GlobalOpt/static-const-bitcast.ll | 62 + .../storepointer-compare-no-null-opt.ll | 40 + .../GlobalOpt/storepointer-compare.ll | 29 + .../GlobalOpt/storepointer-no-null-opt.ll | 27 + .../test/Transforms/GlobalOpt/storepointer.ll | 19 + llvm/test/Transforms/GlobalOpt/tls.ll | 54 + .../test/Transforms/GlobalOpt/trivialstore.ll | 19 + llvm/test/Transforms/GlobalOpt/undef-init.ll | 17 + .../test/Transforms/GlobalOpt/unnamed-addr.ll | 74 + .../GlobalOpt/zeroinitializer-gep-load.ll | 11 + llvm/test/Transforms/GlobalSplit/basic.ll | 63 + .../Transforms/GlobalSplit/non-beneficial.ll | 24 + llvm/test/Transforms/GlobalSplit/nonlocal.ll | 29 + llvm/test/Transforms/GuardWidening/basic.ll | 407 ++ .../basic_widenable_condition_guards.ll | 1041 ++++ .../Transforms/GuardWidening/loop-schedule.ll | 64 + .../Transforms/GuardWidening/mixed_guards.ll | 74 + .../GuardWidening/range-check-merging.ll | 235 + .../GuardWidening/widen-frequent-branches.ll | 820 +++ .../HotColdSplit/X86/do-not-split.ll | 204 + .../Transforms/HotColdSplit/X86/lit.local.cfg | 3 + .../Transforms/HotColdSplit/addr-taken.ll | 27 + .../HotColdSplit/apply-noreturn-bonus.ll | 26 + .../HotColdSplit/apply-penalty-for-inputs.ll | 19 + .../HotColdSplit/apply-penalty-for-outputs.ll | 22 + .../HotColdSplit/apply-successor-penalty.ll | 53 + .../Transforms/HotColdSplit/coldentrycount.ll | 43 + .../delete-use-without-def-dbg-val.ll | 51 + .../HotColdSplit/duplicate-phi-preds-crash.ll | 54 + llvm/test/Transforms/HotColdSplit/eh-pads.ll | 99 + .../Transforms/HotColdSplit/eh-typeid-for.ll | 24 + .../forward-dfs-reaches-marked-block.ll | 29 + .../lifetime-markers-on-inputs-1.ll | 64 + .../lifetime-markers-on-inputs-2.ll | 182 + .../HotColdSplit/mark-the-whole-func-cold.ll | 64 + llvm/test/Transforms/HotColdSplit/minsize.ll | 31 + .../Transforms/HotColdSplit/multiple-exits.ll | 72 + llvm/test/Transforms/HotColdSplit/noreturn.ll | 71 + .../HotColdSplit/outline-cold-asm.ll | 25 + .../HotColdSplit/outline-disjoint-diamonds.ll | 57 + .../HotColdSplit/outline-if-then-else.ll | 64 + .../outline-multiple-entry-region.ll | 77 + .../HotColdSplit/outline-while-loop.ll | 116 + .../phi-with-distinct-outlined-values.ll | 34 + .../Transforms/HotColdSplit/region-overlap.ll | 60 + llvm/test/Transforms/HotColdSplit/resume.ll | 26 + .../Transforms/HotColdSplit/split-cold-2.ll | 37 + .../HotColdSplit/split-out-dbg-val-of-arg.ll | 42 + .../HotColdSplit/split-phis-in-exit-blocks.ll | 71 + .../HotColdSplit/succ-block-with-self-edge.ll | 54 + .../Transforms/HotColdSplit/swifterror.ll | 43 + llvm/test/Transforms/HotColdSplit/unwind.ll | 42 + .../IPConstantProp/2008-06-09-WeakProp.ll | 15 + .../IPConstantProp/2009-09-24-byval-ptr.ll | 40 + .../test/Transforms/IPConstantProp/PR16052.ll | 26 + .../test/Transforms/IPConstantProp/PR26044.ll | 62 + .../IPConstantProp/arg-count-mismatch.ll | 72 + .../IPConstantProp/arg-type-mismatch.ll | 23 + .../Transforms/IPConstantProp/comdat-ipo.ll | 28 + .../IPConstantProp/dangling-block-address.ll | 42 + .../test/Transforms/IPConstantProp/deadarg.ll | 6 + .../IPConstantProp/fp-bc-icmp-const-fold.ll | 52 + llvm/test/Transforms/IPConstantProp/global.ll | 27 + .../IPConstantProp/multiple_callbacks.ll | 87 + .../IPConstantProp/musttail-call.ll | 58 + .../Transforms/IPConstantProp/naked-return.ll | 29 + .../IPConstantProp/openmp_parallel_for.ll | 120 + .../Transforms/IPConstantProp/pthreads.ll | 49 + .../Transforms/IPConstantProp/recursion.ll | 12 + .../IPConstantProp/remove-call-inst.ll | 33 + .../IPConstantProp/return-argument.ll | 57 + .../IPConstantProp/return-constant.ll | 29 + .../IPConstantProp/return-constants.ll | 46 + ...fter-each-resolving-undefs-for-function.ll | 43 + .../IPConstantProp/thread_local_acs.ll | 42 + .../IPConstantProp/user-with-multiple-uses.ll | 33 + .../IRCE/add-metadata-pre-post-loops.ll | 82 + .../Transforms/IRCE/bad-loop-structure.ll | 46 + llvm/test/Transforms/IRCE/bad_expander.ll | 136 + .../IRCE/bug-loop-varying-upper-limit.ll | 32 + .../Transforms/IRCE/bug-mismatched-types.ll | 67 + llvm/test/Transforms/IRCE/clamp.ll | 95 + .../Transforms/IRCE/conjunctive-checks.ll | 110 + .../test/Transforms/IRCE/correct-loop-info.ll | 183 + .../test/Transforms/IRCE/decrementing-loop.ll | 266 + llvm/test/Transforms/IRCE/empty_ranges.ll | 69 + llvm/test/Transforms/IRCE/eq_ne.ll | 288 + llvm/test/Transforms/IRCE/low-becount.ll | 35 + .../IRCE/multiple-access-no-preloop.ll | 67 + .../Transforms/IRCE/non_known_positive_end.ll | 139 + llvm/test/Transforms/IRCE/not-likely-taken.ll | 43 + llvm/test/Transforms/IRCE/only-lower-check.ll | 37 + llvm/test/Transforms/IRCE/only-upper-check.ll | 37 + llvm/test/Transforms/IRCE/optimistic_scev.ll | 42 + llvm/test/Transforms/IRCE/pre_post_loops.ll | 118 + .../IRCE/range_intersect_miscompile.ll | 287 + .../IRCE/ranges_of_different_types.ll | 428 ++ .../test/Transforms/IRCE/rc-negative-bound.ll | 600 ++ .../IRCE/single-access-no-preloop.ll | 250 + .../IRCE/single-access-with-preloop.ll | 93 + .../IRCE/skip-profitability-checks.ll | 32 + .../Transforms/IRCE/stride_more_than_1.ll | 481 ++ llvm/test/Transforms/IRCE/unhandled.ll | 100 + .../IRCE/unsigned_comparisons_ugt.ll | 264 + .../IRCE/unsigned_comparisons_ult.ll | 391 ++ .../Transforms/IRCE/variable-loop-bounds.ll | 354 ++ llvm/test/Transforms/IRCE/wide_indvar.ll | 459 ++ .../test/Transforms/IRCE/with-parent-loops.ll | 346 ++ .../2002-09-09-PointerIndVar.ll | 17 + .../IndVarSimplify/2003-04-16-ExprAnalysis.ll | 17 + .../IndVarSimplify/2003-09-23-NotAtTop.ll | 20 + .../2003-12-10-RemoveInstrCrash.ll | 18 + .../IndVarSimplify/2003-12-15-Crash.ll | 24 + .../2004-03-10-PHIInsertionBug.ll | 26 + .../2004-04-05-InvokeCastCrash.ll | 291 + .../2004-04-07-ScalarEvolutionCrash.ll | 27 + .../IndVarSimplify/2005-02-11-InvokeCrash.ll | 27 + .../2005-02-17-TruncateExprCrash.ll | 67 + .../2005-02-26-ExitValueCompute.ll | 21 + .../2005-06-15-InstMoveCrash.ll | 37 + .../IndVarSimplify/2005-11-18-Crash.ll | 17 + .../2006-03-31-NegativeStride.ll | 23 + .../2006-06-16-Indvar-LCSSA-Crash.ll | 22 + .../IndVarSimplify/2006-09-20-LFTR-Crash.ll | 44 + .../IndVarSimplify/2006-12-10-BitCast.ll | 33 + .../IndVarSimplify/2007-01-06-TripCount.ll | 40 + .../2007-06-06-DeleteDanglesPtr.ll | 117 + .../IndVarSimplify/2007-11-23-BitcastCrash.ll | 20 + .../2008-06-15-SCEVExpanderBug.ll | 17 + .../IndVarSimplify/2008-09-02-IVType.ll | 65 + .../2008-10-03-CouldNotCompute.ll | 32 + .../2008-11-25-APFloatAssert.ll | 11 + .../2009-04-14-shorten_iv_vars.ll | 116 + .../2009-04-15-shorten-iv-vars-2.ll | 163 + .../IndVarSimplify/2009-04-22-IndvarCrash.ll | 35 + .../IndVarSimplify/2009-04-27-Floating.ll | 23 + .../IndVarSimplify/2009-05-24-useafterfree.ll | 41 + .../IndVarSimplify/2011-09-10-widen-nsw.ll | 49 + .../IndVarSimplify/2011-09-19-vectoriv.ll | 16 + .../IndVarSimplify/2011-09-27-hoistsext.ll | 28 + .../IndVarSimplify/2011-10-27-lftrnull.ll | 59 + .../IndVarSimplify/2011-11-01-lftrptr.ll | 144 + .../IndVarSimplify/2011-11-15-multiexit.ll | 40 + .../IndVarSimplify/2011-11-17-selfphi.ll | 29 + .../IndVarSimplify/2012-07-17-lftr-undef.ll | 22 + .../2012-10-19-congruent-constant.ll | 27 + .../2014-06-21-congruent-constant.ll | 57 + .../IndVarSimplify/AMDGPU/lit.local.cfg | 2 + .../IndVarSimplify/AMDGPU/no-widen-to-i64.ll | 98 + .../IndVarSimplify/NVPTX/lit.local.cfg | 2 + .../NVPTX/no-widen-expensive.ll | 37 + .../Transforms/IndVarSimplify/ada-loops.ll | 99 + .../IndVarSimplify/ashr-tripcount.ll | 109 + .../Transforms/IndVarSimplify/avoid-i0.ll | 126 + .../IndVarSimplify/backedge-on-min-max.ll | 454 ++ .../test/Transforms/IndVarSimplify/bec-cmp.ll | 47 + .../IndVarSimplify/canonicalize-cmp.ll | 98 + .../IndVarSimplify/casted-argument.ll | 50 + .../Transforms/IndVarSimplify/const_phi.ll | 33 + .../IndVarSimplify/constant-fold.ll | 47 + .../IndVarSimplify/constant_result.ll | 35 + llvm/test/Transforms/IndVarSimplify/crash.ll | 133 + .../Transforms/IndVarSimplify/dangling-use.ll | 41 + .../IndVarSimplify/divide-pointer.ll | 95 + .../IndVarSimplify/dont-recompute.ll | 176 + .../Transforms/IndVarSimplify/drop-exact.ll | 99 + .../Transforms/IndVarSimplify/elim-extend.ll | 155 + .../IndVarSimplify/eliminate-comparison.ll | 559 ++ .../IndVarSimplify/eliminate-max.ll | 57 + .../IndVarSimplify/eliminate-rem.ll | 121 + .../IndVarSimplify/eliminate-trunc.ll | 564 ++ .../IndVarSimplify/exit_value_test2.ll | 74 + .../IndVarSimplify/exit_value_test3.ll | 24 + .../IndVarSimplify/exit_value_tests.ll | 115 + .../IndVarSimplify/floating-point-iv.ll | 92 + .../IndVarSimplify/full_widening.ll | 44 + .../Transforms/IndVarSimplify/huge_muls.ll | 87 + .../Transforms/IndVarSimplify/indirectbr.ll | 39 + .../inner-loop-by-latch-cond.ll | 35 + .../Transforms/IndVarSimplify/inner-loop.ll | 54 + .../IndVarSimplify/interesting-invoke-use.ll | 61 + .../iterationCount_zext_or_trunc.ll | 25 + .../test/Transforms/IndVarSimplify/iv-fold.ll | 56 + .../test/Transforms/IndVarSimplify/iv-sext.ll | 149 + .../IndVarSimplify/iv-widen-elim-ext.ll | 359 ++ .../Transforms/IndVarSimplify/iv-widen.ll | 160 + .../test/Transforms/IndVarSimplify/iv-zext.ll | 33 + .../IndVarSimplify/lcssa-preservation.ll | 50 + .../lftr-address-space-pointers.ll | 69 + .../IndVarSimplify/lftr-extend-const.ll | 48 + .../IndVarSimplify/lftr-other-uses.ll | 36 + .../Transforms/IndVarSimplify/lftr-promote.ll | 42 + .../Transforms/IndVarSimplify/lftr-reuse.ll | 234 + .../IndVarSimplify/lftr-udiv-tripcount.ll | 29 + .../IndVarSimplify/lftr-wide-trip-count.ll | 158 + .../Transforms/IndVarSimplify/lftr-zext.ll | 26 + .../IndVarSimplify/lftr_disabled.ll | 28 + .../Transforms/IndVarSimplify/lftr_simple.ll | 28 + .../loop-invariant-conditions.ll | 394 ++ .../IndVarSimplify/loop_evaluate10.ll | 47 + .../IndVarSimplify/loop_evaluate11.ll | 36 + .../IndVarSimplify/loop_evaluate7.ll | 61 + .../IndVarSimplify/loop_evaluate8.ll | 65 + .../IndVarSimplify/loop_evaluate9.ll | 85 + .../IndVarSimplify/loop_evaluate_1.ll | 47 + .../IndVarSimplify/loop_evaluate_2.ll | 29 + .../IndVarSimplify/loop_evaluate_3.ll | 21 + .../IndVarSimplify/loop_evaluate_4.ll | 22 + .../IndVarSimplify/loop_evaluate_5.ll | 34 + .../IndVarSimplify/loop_evaluate_6.ll | 30 + .../IndVarSimplify/lrev-existing-umin.ll | 74 + .../Transforms/IndVarSimplify/masked-iv.ll | 28 + .../IndVarSimplify/no-iv-rewrite.ll | 397 ++ .../IndVarSimplify/overflow-intrinsics.ll | 137 + .../phi-uses-value-multiple-times.ll | 38 + .../IndVarSimplify/polynomial-expand.ll | 38 + .../IndVarSimplify/post-inc-range.ll | 289 + .../test/Transforms/IndVarSimplify/pr18223.ll | 30 + .../test/Transforms/IndVarSimplify/pr20680.ll | 223 + .../test/Transforms/IndVarSimplify/pr22222.ll | 46 + .../test/Transforms/IndVarSimplify/pr24356.ll | 63 + .../test/Transforms/IndVarSimplify/pr24783.ll | 27 + .../test/Transforms/IndVarSimplify/pr24804.ll | 25 + .../test/Transforms/IndVarSimplify/pr24952.ll | 27 + .../test/Transforms/IndVarSimplify/pr24956.ll | 37 + .../test/Transforms/IndVarSimplify/pr25047.ll | 49 + .../test/Transforms/IndVarSimplify/pr25051.ll | 44 + .../test/Transforms/IndVarSimplify/pr25060.ll | 37 + .../test/Transforms/IndVarSimplify/pr25360.ll | 33 + .../test/Transforms/IndVarSimplify/pr25421.ll | 30 + .../test/Transforms/IndVarSimplify/pr25576.ll | 31 + .../test/Transforms/IndVarSimplify/pr25578.ll | 48 + .../test/Transforms/IndVarSimplify/pr26973.ll | 33 + .../test/Transforms/IndVarSimplify/pr26974.ll | 60 + .../test/Transforms/IndVarSimplify/pr27133.ll | 38 + .../test/Transforms/IndVarSimplify/pr28935.ll | 20 + .../test/Transforms/IndVarSimplify/pr32045.ll | 39 + .../test/Transforms/IndVarSimplify/pr35406.ll | 88 + .../test/Transforms/IndVarSimplify/pr38674.ll | 141 + .../test/Transforms/IndVarSimplify/pr38855.ll | 24 + .../test/Transforms/IndVarSimplify/pr39673.ll | 56 + .../test/Transforms/IndVarSimplify/pr40454.ll | 62 + .../IndVarSimplify/preserve-signed-wrap.ll | 43 + .../promote-iv-to-eliminate-casts.ll | 230 + .../replace-iv-with-loop-invariant.ll | 88 + .../IndVarSimplify/replace-loop-exit-folds.ll | 197 + .../IndVarSimplify/replace-sdiv-by-udiv.ll | 130 + .../IndVarSimplify/replace-srem-by-urem.ll | 109 + .../IndVarSimplify/rewrite-loop-exit-value.ll | 63 + .../IndVarSimplify/scev-phi-debug-info.ll | 71 + .../scevexpander-phi-base-case.ll | 63 + .../IndVarSimplify/sharpen-range.ll | 114 + .../IndVarSimplify/shrunk-constant.ll | 16 + .../IndVarSimplify/signed-trip-count.ll | 36 + .../IndVarSimplify/single-element-range.ll | 27 + .../Transforms/IndVarSimplify/sink-alloca.ll | 56 + .../IndVarSimplify/sink-from-preheader.ll | 32 + .../IndVarSimplify/sink-trapping.ll | 19 + .../IndVarSimplify/strengthen-overflow.ll | 192 + .../IndVarSimplify/tripcount_compute.ll | 193 + .../IndVarSimplify/tripcount_infinite.ll | 45 + .../udiv-invariant-but-traps.ll | 32 + llvm/test/Transforms/IndVarSimplify/udiv.ll | 162 + .../test/Transforms/IndVarSimplify/uglygep.ll | 42 + .../IndVarSimplify/ult-sub-to-eq.ll | 41 + .../IndVarSimplify/use-range-metadata.ll | 37 + .../IndVarSimplify/variable-stride-ivs-0.ll | 43 + .../IndVarSimplify/variable-stride-ivs-1.ll | 43 + .../Transforms/IndVarSimplify/verify-scev.ll | 421 ++ .../IndVarSimplify/widen-loop-comp.ll | 355 ++ .../Transforms/IndVarSimplify/widen-nsw.ll | 29 + .../Transforms/IndVarSimplify/zext-nuw.ll | 49 + .../test/Transforms/IndirectBrExpand/basic.ll | 63 + .../InferAddressSpaces/AMDGPU/basic.ll | 185 + .../InferAddressSpaces/AMDGPU/icmp.ll | 160 + .../AMDGPU/infer-address-space.ll | 184 + .../AMDGPU/infer-addrspacecast.ll | 56 + .../AMDGPU/infer-getelementptr.ll | 73 + .../InferAddressSpaces/AMDGPU/intrinsics.ll | 137 + .../InferAddressSpaces/AMDGPU/lit.local.cfg | 3 + .../AMDGPU/mem-intrinsics.ll | 134 + .../AMDGPU/old-pass-regressions.ll | 143 + .../InferAddressSpaces/AMDGPU/select.ll | 264 + .../InferAddressSpaces/AMDGPU/volatile.ll | 140 + .../InferAddressSpaces/NVPTX/bug31948.ll | 24 + .../NVPTX/clone_constexpr.ll | 36 + .../InferAddressSpaces/NVPTX/lit.local.cfg | 2 + .../Transforms/InferFunctionAttrs/annotate.ll | 1015 +++ .../Transforms/InferFunctionAttrs/no-proto.ll | 979 +++ .../InferFunctionAttrs/norecurse_debug.ll | 56 + .../Transforms/InferFunctionAttrs/pr30455.ll | 13 + .../Inline/2003-09-14-InlineValue.ll | 25 + .../Inline/2003-09-22-PHINodeInlineFail.ll | 22 + .../2003-09-22-PHINodesInExceptionDest.ll | 32 + .../2003-09-22-PHINodesInNormalInvokeDest.ll | 25 + .../2003-10-13-AllocaDominanceProblem.ll | 19 + .../Inline/2004-04-15-InlineDeletesCall.ll | 20 + .../Inline/2004-04-20-InlineLinkOnce.ll | 11 + .../2004-10-17-InlineFunctionWithoutReturn.ll | 11 + .../Inline/2006-01-14-CallGraphUpdate.ll | 25 + .../Inline/2006-07-12-InlinePruneCGUpdate.ll | 840 +++ .../Inline/2006-11-09-InlineCGUpdate-2.ll | 252 + .../Inline/2006-11-09-InlineCGUpdate.ll | 343 ++ .../Transforms/Inline/2007-04-15-InlineEH.ll | 69 + .../Inline/2007-06-25-WeakInline.ll | 18 + .../Inline/2007-12-19-InlineNoUnwind.ll | 35 + .../Transforms/Inline/2008-09-02-NoInline.ll | 17 + .../2009-01-08-NoInlineDynamicAlloca.ll | 40 + .../Inline/2009-01-13-RecursiveInlineCrash.ll | 293 + .../Inline/2009-05-07-CallUsingSelfCrash.ll | 20 + .../Transforms/Inline/2010-05-12-ValueMap.ll | 28 + llvm/test/Transforms/Inline/AArch64/binop.ll | 291 + llvm/test/Transforms/Inline/AArch64/ext.ll | 249 + .../Transforms/Inline/AArch64/gep-cost.ll | 51 + .../Inline/AArch64/inline-target-attr.ll | 40 + .../Transforms/Inline/AArch64/lit.local.cfg | 2 + .../Inline/AArch64/logical-and-or.ll | 94 + llvm/test/Transforms/Inline/AArch64/phi.ll | 504 ++ llvm/test/Transforms/Inline/AArch64/select.ll | 251 + llvm/test/Transforms/Inline/AArch64/switch.ll | 160 + .../Inline/AMDGPU/inline-amdgpu-dx10-clamp.ll | 107 + .../Inline/AMDGPU/inline-amdgpu-ieee.ll | 90 + .../Inline/AMDGPU/inline-target-cpu.ll | 103 + .../AMDGPU/inline-target-feature-sram-ecc.ll | 70 + .../Transforms/Inline/AMDGPU/lit.local.cfg | 2 + llvm/test/Transforms/Inline/ARM/inline-fp.ll | 113 + .../Inline/ARM/inline-target-attr.ll | 60 + llvm/test/Transforms/Inline/ARM/lit.local.cfg | 2 + llvm/test/Transforms/Inline/ARM/loop-add.ll | 95 + .../test/Transforms/Inline/ARM/loop-memcpy.ll | 87 + .../Transforms/Inline/ARM/loop-noinline.ll | 49 + llvm/test/Transforms/Inline/PR4909.ll | 16 + llvm/test/Transforms/Inline/PowerPC/ext.ll | 140 + .../Transforms/Inline/PowerPC/lit.local.cfg | 3 + llvm/test/Transforms/Inline/X86/ext.ll | 201 + .../Inline/X86/inline-target-attr.ll | 36 + .../Inline/X86/inline-target-cpu-i686.ll | 15 + .../Inline/X86/inline-target-cpu-x86_64.ll | 43 + llvm/test/Transforms/Inline/X86/lit.local.cfg | 3 + llvm/test/Transforms/Inline/align.ll | 98 + llvm/test/Transforms/Inline/alloca-bonus.ll | 162 + .../Inline/alloca-dbgdeclare-merge.ll | 101 + .../Transforms/Inline/alloca-dbgdeclare.ll | 131 + llvm/test/Transforms/Inline/alloca-in-scc.ll | 31 + .../Transforms/Inline/alloca-merge-align.ll | 104 + llvm/test/Transforms/Inline/alloca_test.ll | 56 + llvm/test/Transforms/Inline/always-inline.ll | 318 + .../Transforms/Inline/arg-attr-propagation.ll | 50 + llvm/test/Transforms/Inline/array-alloca.ll | 37 + llvm/test/Transforms/Inline/array_merge.ll | 26 + llvm/test/Transforms/Inline/attributes.ll | 418 ++ llvm/test/Transforms/Inline/basictest.ll | 117 + llvm/test/Transforms/Inline/bfi-update.ll | 93 + llvm/test/Transforms/Inline/blockaddress.ll | 51 + .../test/Transforms/Inline/byval-tail-call.ll | 75 + llvm/test/Transforms/Inline/byval.ll | 165 + llvm/test/Transforms/Inline/byval_lifetime.ll | 26 + .../Transforms/Inline/callgraph-update.ll | 36 + llvm/test/Transforms/Inline/casts.ll | 18 + .../Transforms/Inline/cfg_preserve_test.ll | 20 + llvm/test/Transforms/Inline/cgscc-cycle.ll | 232 + .../Inline/cgscc-incremental-invalidate.ll | 206 + .../Transforms/Inline/cgscc-invalidate.ll | 104 + llvm/test/Transforms/Inline/cgscc-update.ll | 184 + llvm/test/Transforms/Inline/clear-analyses.ll | 32 + llvm/test/Transforms/Inline/comdat-ipo.ll | 20 + .../Inline/crash-lifetime-marker.ll | 25 + llvm/test/Transforms/Inline/crash.ll | 127 + llvm/test/Transforms/Inline/crash2.ll | 29 + .../Inline/debug-info-duplicate-calls.ll | 121 + llvm/test/Transforms/Inline/debug-invoke.ll | 44 + llvm/test/Transforms/Inline/delete-call.ll | 26 + llvm/test/Transforms/Inline/deopt-bundles.ll | 203 + .../Inline/deoptimize-intrinsic-cconv.ll | 19 + .../Transforms/Inline/deoptimize-intrinsic.ll | 123 + llvm/test/Transforms/Inline/devirtualize-2.ll | 45 + llvm/test/Transforms/Inline/devirtualize-3.ll | 79 + llvm/test/Transforms/Inline/devirtualize.ll | 182 + .../Transforms/Inline/dynamic_alloca_test.ll | 45 + llvm/test/Transforms/Inline/ephemeral.ll | 30 + .../Transforms/Inline/externally_available.ll | 22 + llvm/test/Transforms/Inline/frameescape.ll | 45 + .../Inline/function-count-update-2.ll | 33 + .../Inline/function-count-update-3.ll | 78 + .../Inline/function-count-update.ll | 50 + .../test/Transforms/Inline/guard-intrinsic.ll | 39 + .../Transforms/Inline/gvn-inline-iteration.ll | 23 + .../Transforms/Inline/ignore-debug-info.ll | 58 + .../Transforms/Inline/inalloca-not-static.ll | 65 + .../Inline/infinite-loop-two-predecessors.ll | 32 + llvm/test/Transforms/Inline/inline-assume.ll | 32 + .../Transforms/Inline/inline-brunch-funnel.ll | 35 + .../Transforms/Inline/inline-byval-bonus.ll | 194 + .../Transforms/Inline/inline-cold-callee.ll | 54 + .../Inline/inline-cold-callsite-pgo.ll | 54 + .../Transforms/Inline/inline-cold-callsite.ll | 47 + llvm/test/Transforms/Inline/inline-cold.ll | 188 + ...inline-constexpr-addrspacecast-argument.ll | 31 + .../Inline/inline-fast-math-flags.ll | 35 + .../test/Transforms/Inline/inline-funclets.ll | 676 ++ .../Transforms/Inline/inline-hot-callee.ll | 55 + .../Inline/inline-hot-callsite-2.ll | 56 + .../Transforms/Inline/inline-hot-callsite.ll | 61 + .../test/Transforms/Inline/inline-indirect.ll | 19 + .../Transforms/Inline/inline-invoke-tail.ll | 40 + .../Inline/inline-invoke-with-asm-call.ll | 33 + .../Inline/inline-min-legal-vector-width.ll | 44 + llvm/test/Transforms/Inline/inline-optnone.ll | 52 + llvm/test/Transforms/Inline/inline-optsize.ll | 47 + .../Transforms/Inline/inline-probe-stack.ll | 20 + llvm/test/Transforms/Inline/inline-remark.ll | 61 + .../Inline/inline-stack-probe-size.ll | 29 + llvm/test/Transforms/Inline/inline-tail.ll | 219 + .../Transforms/Inline/inline-threshold.ll | 89 + llvm/test/Transforms/Inline/inline-varargs.ll | 120 + llvm/test/Transforms/Inline/inline-vla.ll | 39 + llvm/test/Transforms/Inline/inline_cleanup.ll | 214 + .../Transforms/Inline/inline_constprop.ll | 347 ++ .../Transforms/Inline/inline_dbg_declare.ll | 99 + llvm/test/Transforms/Inline/inline_dce.ll | 36 + .../Transforms/Inline/inline_inv_group.ll | 19 + llvm/test/Transforms/Inline/inline_invoke.ll | 349 ++ .../test/Transforms/Inline/inline_minisize.ll | 232 + llvm/test/Transforms/Inline/inline_prune.ll | 54 + .../Transforms/Inline/inline_returns_twice.ll | 85 + llvm/test/Transforms/Inline/inline_ssp.ll | 161 + llvm/test/Transforms/Inline/inline_stats.ll | 95 + .../Transforms/Inline/inline_unreachable-2.ll | 23 + .../Transforms/Inline/inline_unreachable.ll | 131 + .../Transforms/Inline/internal-scc-members.ll | 31 + llvm/test/Transforms/Inline/invoke-cleanup.ll | 40 + .../Inline/invoke-combine-clauses.ll | 117 + llvm/test/Transforms/Inline/invoke-cost.ll | 46 + llvm/test/Transforms/Inline/invoke_test-1.ll | 33 + llvm/test/Transforms/Inline/invoke_test-2.ll | 52 + llvm/test/Transforms/Inline/invoke_test-3.ll | 48 + .../Transforms/Inline/label-annotation.ll | 35 + .../test/Transforms/Inline/last-call-bonus.ll | 53 + .../Transforms/Inline/last-call-no-bonus.ll | 58 + llvm/test/Transforms/Inline/last-callsite.ll | 269 + .../Inline/launder.invariant.group.ll | 59 + .../Inline/lifetime-no-datalayout.ll | 24 + llvm/test/Transforms/Inline/lifetime.ll | 118 + .../local-as-metadata-undominated-use.ll | 49 + llvm/test/Transforms/Inline/monster_scc.ll | 432 ++ llvm/test/Transforms/Inline/nested-inline.ll | 112 + llvm/test/Transforms/Inline/noalias-calls.ll | 45 + llvm/test/Transforms/Inline/noalias-cs.ll | 84 + llvm/test/Transforms/Inline/noalias.ll | 76 + llvm/test/Transforms/Inline/noalias2.ll | 97 + .../Inline/noinline-recursive-fn.ll | 111 + llvm/test/Transforms/Inline/noinline.ll | 18 + llvm/test/Transforms/Inline/nonnull.ll | 46 + llvm/test/Transforms/Inline/null-function.ll | 9 + .../optimization-remarks-hotness-threshold.ll | 56 + .../optimization-remarks-passed-yaml.ll | 79 + .../optimization-remarks-with-hotness.ll | 40 + .../Inline/optimization-remarks-yaml.ll | 118 + .../Transforms/Inline/optimization-remarks.ll | 77 + .../Inline/parallel-loop-md-callee.ll | 56 + .../Inline/parallel-loop-md-merge.ll | 78 + .../Transforms/Inline/parallel-loop-md.ll | 58 + .../Transforms/Inline/partial-inline-act.ll | 20 + llvm/test/Transforms/Inline/pr21206.ll | 19 + llvm/test/Transforms/Inline/pr22285.ll | 16 + llvm/test/Transforms/Inline/pr26698.ll | 66 + llvm/test/Transforms/Inline/pr28298.ll | 19 + llvm/test/Transforms/Inline/pr33637.ll | 25 + .../Transforms/Inline/prof-update-instr.ll | 57 + .../Transforms/Inline/prof-update-sample.ll | 60 + llvm/test/Transforms/Inline/profile-meta.ll | 45 + llvm/test/Transforms/Inline/ptr-diff.ll | 157 + llvm/test/Transforms/Inline/recursive.ll | 73 + .../test/Transforms/Inline/redundant-loads.ll | 204 + llvm/test/Transforms/Inline/store-sroa.ll | 22 + llvm/test/Transforms/Inline/switch.ll | 61 + llvm/test/Transforms/Inline/vector-bonus.ll | 38 + .../test/Transforms/Inline/vector-no-bonus.ll | 47 + llvm/test/Transforms/Inline/zero-cost.ll | 18 + .../InstCombine/2003-05-26-CastMiscompile.ll | 8 + .../InstCombine/2003-05-27-ConstExprCrash.ll | 10 + .../2003-06-05-BranchInvertInfLoop.ll | 16 + .../2003-07-21-ExternalConstant.ll | 44 + .../InstCombine/2003-08-12-AllocaNonNull.ll | 21 + .../2003-09-09-VolatileLoadElim.ll | 7 + .../InstCombine/2003-10-29-CallSiteResolve.ll | 18 + .../InstCombine/2003-11-03-VarargsCallBug.ll | 13 + .../2004-01-13-InstCombineInvokePHI.ll | 31 + .../2004-02-23-ShiftShiftOverflow.ll | 15 + .../2004-03-13-InstCombineInfLoop.ll | 13 + ...004-04-04-InstCombineReplaceAllUsesWith.ll | 10 + .../InstCombine/2004-05-07-UnsizedCastLoad.ll | 10 + .../InstCombine/2004-07-27-ConstantExprMul.ll | 9 + .../InstCombine/2004-08-09-RemInfLoop.ll | 9 + .../InstCombine/2004-08-10-BoolSetCC.ll | 8 + .../InstCombine/2004-09-20-BadLoadCombine.ll | 18 + .../InstCombine/2004-09-20-BadLoadCombine2.ll | 25 + .../2004-09-28-BadShiftAndSetCC.ll | 9 + .../InstCombine/2004-11-22-Missed-and-fold.ll | 10 + ...004-11-27-SetCCForCastLargerAndConstant.ll | 269 + .../InstCombine/2004-12-08-RemInfiniteLoop.ll | 7 + .../InstCombine/2005-03-04-ShiftOverflow.ll | 9 + .../InstCombine/2005-04-07-UDivSelectCrash.ll | 8 + .../InstCombine/2005-06-15-DivSelectCrash.ll | 10 + .../InstCombine/2005-06-15-ShiftSetCCCrash.ll | 9 + .../InstCombine/2005-06-16-RangeCrash.ll | 9 + .../InstCombine/2005-07-07-DeadPHILoop.ll | 14 + .../2006-02-13-DemandedMiscompile.ll | 10 + .../InstCombine/2006-02-28-Crash.ll | 8 + .../InstCombine/2006-03-30-ExtractElement.ll | 8 + .../2006-04-28-ShiftShiftLongLong.ll | 13 + .../2006-05-04-DemandedBitCrash.ll | 51 + .../InstCombine/2006-09-15-CastToBool.ll | 14 + ...06-10-19-SignedToUnsignedCastAndConst-2.ll | 10 + .../Transforms/InstCombine/2006-10-20-mask.ll | 11 + .../InstCombine/2006-10-26-VectorReassoc.ll | 145 + .../InstCombine/2006-11-10-ashr-miscompile.ll | 9 + .../2006-12-01-BadFPVectorXform.ll | 14 + .../InstCombine/2006-12-05-fp-to-int-ext.ll | 12 + .../2006-12-08-Phi-ICmp-Op-Fold.ll | 51 + .../InstCombine/2006-12-08-Select-ICmp.ll | 42 + .../InstCombine/2006-12-15-Range-Test.ll | 31 + .../InstCombine/2006-12-23-Select-Cmp-Cmp.ll | 30 + .../2007-01-13-ExtCompareMiscompile.ll | 10 + .../InstCombine/2007-01-18-VectorInfLoop.ll | 7 + .../InstCombine/2007-02-01-LoadSinkAlloca.ll | 45 + .../InstCombine/2007-02-07-PointerCast.ll | 22 + .../InstCombine/2007-02-23-PhiFoldInfLoop.ll | 31 + .../InstCombine/2007-03-13-CompareMerge.ll | 9 + .../2007-03-19-BadTruncChangePR1261.ll | 10 + .../InstCombine/2007-03-21-SignedRangeTest.ll | 27 + .../InstCombine/2007-03-25-BadShiftMask.ll | 47 + .../InstCombine/2007-03-25-DoubleShift.ll | 9 + .../InstCombine/2007-03-26-BadShiftMask.ll | 35 + .../2007-04-08-SingleEltVectorCrash.ll | 7 + .../InstCombine/2007-05-10-icmp-or.ll | 8 + .../InstCombine/2007-05-14-Crash.ll | 18 + .../InstCombine/2007-05-18-CastFoldBug.ll | 10 + .../InstCombine/2007-06-06-AshrSignBit.ll | 22 + .../2007-06-21-DivCompareMiscomp.ll | 9 + .../InstCombine/2007-08-02-InfiniteLoop.ll | 10 + .../InstCombine/2007-09-10-AliasConstFold.ll | 15 + .../InstCombine/2007-09-17-AliasConstFold2.ll | 16 + .../InstCombine/2007-10-10-EliminateMemCpy.ll | 20 + .../InstCombine/2007-10-12-Crash.ll | 38 + .../InstCombine/2007-10-28-stacksave.ll | 47 + .../InstCombine/2007-10-31-RangeCrash.ll | 35 + .../InstCombine/2007-10-31-StringCrash.ll | 21 + .../2007-11-07-OpaqueAlignCrash.ll | 22 + .../InstCombine/2007-11-15-CompareMiscomp.ll | 10 + .../2007-11-25-CompatibleAttributes.ll | 12 + .../2007-12-10-ConstFoldCompare.ll | 9 + .../InstCombine/2007-12-12-GEPScale.ll | 10 + .../InstCombine/2007-12-16-AsmNoUnwind.ll | 7 + .../InstCombine/2007-12-18-AddSelCmpSub.ll | 45 + .../InstCombine/2007-12-28-IcmpSub2.ll | 89 + .../2008-01-06-BitCastAttributes.ll | 30 + .../InstCombine/2008-01-06-CastCrash.ll | 10 + .../InstCombine/2008-01-06-VoidCast.ll | 12 + .../InstCombine/2008-01-13-AndCmpCmp.ll | 9 + .../2008-01-14-VarArgTrampoline.ll | 26 + .../2008-01-21-MismatchedCastAndCompare.ll | 20 + .../InstCombine/2008-01-21-MulTrunc.ll | 17 + .../InstCombine/2008-01-27-FloatSelect.ll | 8 + .../InstCombine/2008-02-13-MulURem.ll | 10 + .../InstCombine/2008-02-16-SDivOverflow2.ll | 9 + .../InstCombine/2008-02-23-MulSub.ll | 9 + .../InstCombine/2008-02-28-OrFCmpCrash.ll | 16 + .../InstCombine/2008-03-13-IntToPtr.ll | 9 + .../InstCombine/2008-04-22-ByValBitcast.ll | 15 + .../InstCombine/2008-04-28-VolatileStore.ll | 8 + .../2008-04-29-VolatileLoadDontMerge.ll | 25 + .../2008-04-29-VolatileLoadMerge.ll | 21 + .../InstCombine/2008-05-08-LiveStoreDelete.ll | 25 + .../InstCombine/2008-05-08-StrLenSink.ll | 32 + .../InstCombine/2008-05-09-SinkOfInvoke.ll | 37 + .../InstCombine/2008-05-17-InfLoop.ll | 23 + .../InstCombine/2008-05-18-FoldIntToPtr.ll | 13 + .../InstCombine/2008-05-22-IDivVector.ll | 6 + .../InstCombine/2008-05-23-CompareFold.ll | 14 + .../InstCombine/2008-05-31-AddBool.ll | 9 + .../InstCombine/2008-05-31-Bools.ll | 24 + .../InstCombine/2008-06-05-ashr-crash.ll | 7 + .../InstCombine/2008-06-08-ICmpPHI.ll | 47 + .../2008-06-13-InfiniteLoopStore.ll | 20 + .../2008-06-13-ReadOnlyCallStore.ll | 19 + .../InstCombine/2008-06-19-UncondLoad.ll | 16 + .../InstCombine/2008-06-21-CompareMiscomp.ll | 11 + .../InstCombine/2008-06-24-StackRestore.ll | 39 + .../InstCombine/2008-07-08-ShiftOneAndOne.ll | 14 + .../InstCombine/2008-07-08-SubAnd.ll | 9 + .../2008-07-08-VolatileLoadMerge.ll | 26 + .../InstCombine/2008-07-09-SubAndError.ll | 9 + .../InstCombine/2008-07-10-CastSextBool.ll | 22 + .../InstCombine/2008-07-11-RemAnd.ll | 9 + .../InstCombine/2008-07-13-DivZero.ll | 16 + .../Transforms/InstCombine/2008-07-16-fsub.ll | 8 + .../Transforms/InstCombine/2008-08-05-And.ll | 23 + .../InstCombine/2008-09-02-VectorCrash.ll | 27 + .../InstCombine/2008-10-11-DivCompareFold.ll | 8 + .../2008-10-23-ConstFoldWithoutMask.ll | 8 + .../2008-11-01-SRemDemandedBits.ll | 8 + .../Transforms/InstCombine/2008-11-08-FCmp.ll | 63 + .../InstCombine/2008-11-27-IDivVector.ll | 11 + .../InstCombine/2008-11-27-MultiplyIntVec.ll | 11 + .../InstCombine/2008-12-17-SRemNegConstVec.ll | 7 + .../InstCombine/2009-01-05-i128-crash.ll | 27 + .../InstCombine/2009-01-08-AlignAlloca.ll | 28 + .../2009-01-16-PointerAddrSpace.ll | 11 + ...2009-01-19-fmod-constant-float-specials.ll | 315 + .../2009-01-19-fmod-constant-float.ll | 75 + .../InstCombine/2009-01-24-EmptyStruct.ll | 18 + .../InstCombine/2009-01-31-InfIterate.ll | 22 + .../InstCombine/2009-01-31-Pressure.ll | 22 + .../InstCombine/2009-02-04-FPBitcast.ll | 12 + .../InstCombine/2009-02-11-NotInitialized.ll | 14 + .../2009-02-20-InstCombine-SROA.ll | 279 + .../InstCombine/2009-02-21-LoadCST.ll | 12 + .../2009-02-25-CrashZeroSizeArray.ll | 38 + .../2009-03-18-vector-ashr-crash.ll | 11 + .../InstCombine/2009-03-24-InfLoop.ll | 9 + .../InstCombine/2009-04-07-MulPromoteToI96.ll | 13 + .../InstCombine/2009-05-23-FCmpToICmp.ll | 9 + .../InstCombine/2009-06-11-StoreAddrSpace.ll | 7 + .../2009-06-16-SRemDemandedBits.ll | 9 + .../InstCombine/2009-07-02-MaskedIntVector.ll | 15 + .../InstCombine/2009-12-17-CmpSelectNull.ll | 16 + .../InstCombine/2010-01-28-NegativeSRem.ll | 19 + .../InstCombine/2010-03-03-ExtElim.ll | 32 + .../InstCombine/2010-05-30-memcpy-Struct.ll | 20 + .../InstCombine/2010-11-01-lshr-mask.ll | 57 + .../InstCombine/2010-11-21-SizeZeroTypeGEP.ll | 17 + .../InstCombine/2010-11-23-Distributed.ll | 23 + .../InstCombine/2011-02-14-InfLoop.ll | 19 + .../2011-03-08-SRemMinusOneBadOpt.ll | 12 + .../InstCombine/2011-05-02-VectorBoolean.ll | 15 + .../InstCombine/2011-05-13-InBoundsGEP.ll | 21 + .../InstCombine/2011-05-28-swapmulsub.ll | 64 + .../InstCombine/2011-06-13-nsw-alloca.ll | 64 + .../InstCombine/2011-09-03-Trampoline.ll | 102 + .../InstCombine/2011-10-07-AlignPromotion.ll | 20 + .../2012-01-11-OpaqueBitcastCrash.ll | 12 + .../Transforms/InstCombine/2012-02-13-FCmp.ll | 35 + .../Transforms/InstCombine/2012-02-28-ICmp.ll | 19 + .../InstCombine/2012-03-10-InstCombine.ll | 35 + .../InstCombine/2012-04-24-vselect.ll | 13 + .../Transforms/InstCombine/2012-04-30-SRem.ll | 12 + .../InstCombine/2012-05-28-select-hang.ll | 39 + .../InstCombine/2012-06-06-LoadOfPHIs.ll | 162 + .../InstCombine/2012-07-25-LoadPart.ll | 14 + .../InstCombine/2012-07-30-addrsp-bitcast.ll | 10 + .../InstCombine/2012-08-28-udiv_ashl.ll | 57 + .../InstCombine/2012-09-17-ZeroSizedAlloca.ll | 24 + .../2012-10-25-vector-of-pointers.ll | 51 + .../InstCombine/2012-12-14-simp-vgep.ll | 10 + .../InstCombine/2012-3-15-or-xor-constant.ll | 12 + .../InstCombine/2012-6-7-vselect-bitcast.ll | 11 + ...013-03-05-Combine-BitcastTy-Into-Alloca.ll | 45 + .../AArch64/2012-04-23-Neon-Intrinsics.ll | 71 + .../InstCombine/AArch64/aes-intrinsics.ll | 44 + .../InstCombine/AArch64/lit.local.cfg | 2 + .../Transforms/InstCombine/AArch64/tbl1.ll | 65 + .../AMDGPU/amdgcn-demanded-vector-elts.ll | 2407 ++++++++ .../InstCombine/AMDGPU/amdgcn-intrinsics.ll | 2098 +++++++ .../InstCombine/AMDGPU/lit.local.cfg | 2 + .../ARM/2012-04-23-Neon-Intrinsics.ll | 65 + .../InstCombine/ARM/aes-intrinsics.ll | 43 + .../InstCombine/ARM/constant-fold-hang.ll | 14 + .../Transforms/InstCombine/ARM/lit.local.cfg | 2 + .../InstCombine/ARM/neon-intrinsics.ll | 25 + .../test/Transforms/InstCombine/ARM/strcmp.ll | 153 + .../test/Transforms/InstCombine/ARM/strcpy.ll | 76 + llvm/test/Transforms/InstCombine/ARM/tbl1.ll | 35 + llvm/test/Transforms/InstCombine/ARM/vld1.ll | 118 + .../Transforms/InstCombine/AddOverFlow.ll | 266 + .../Transforms/InstCombine/CPP_min_max.ll | 34 + .../Transforms/InstCombine/ExtractCast.ll | 27 + .../test/Transforms/InstCombine/IntPtrCast.ll | 10 + .../Transforms/InstCombine/JavaCompare.ll | 14 + .../InstCombine/LandingPadClauses.ll | 288 + .../InstCombine/NVPTX/lit.local.cfg | 2 + .../InstCombine/NVPTX/nvvm-intrins.ll | 471 ++ .../InstCombine/OverlappingInsertvalues.ll | 36 + llvm/test/Transforms/InstCombine/PR30597.ll | 32 + llvm/test/Transforms/InstCombine/PR37526.ll | 22 + .../InstCombine/PowerPC/aligned-altivec.ll | 131 + .../InstCombine/PowerPC/aligned-qpx.ll | 165 + .../InstCombine/PowerPC/lit.local.cfg | 3 + .../InstCombine/PowerPC/vsx-unaligned.ll | 44 + llvm/test/Transforms/InstCombine/README.txt | 4 + .../InstCombine/X86/X86FsubCmpCombine.ll | 210 + .../Transforms/InstCombine/X86/addcarry.ll | 38 + .../Transforms/InstCombine/X86/blend_x86.ll | 296 + .../Transforms/InstCombine/X86/clmulqdq.ll | 266 + .../Transforms/InstCombine/X86/lit.local.cfg | 2 + .../Transforms/InstCombine/X86/pr2645-1.ll | 39 + .../InstCombine/X86/shufflemask-undef.ll | 110 + .../Transforms/InstCombine/X86/x86-avx.ll | 41 + .../Transforms/InstCombine/X86/x86-avx2.ll | 109 + .../Transforms/InstCombine/X86/x86-avx512.ll | 3532 +++++++++++ .../Transforms/InstCombine/X86/x86-bmi-tbm.ll | 271 + .../InstCombine/X86/x86-crc32-demanded.ll | 17 + .../Transforms/InstCombine/X86/x86-f16c.ll | 68 + .../Transforms/InstCombine/X86/x86-fma.ll | 116 + .../InstCombine/X86/x86-insertps.ll | 140 + .../InstCombine/X86/x86-masked-memops.ll | 328 + .../Transforms/InstCombine/X86/x86-movmsk.ll | 458 ++ .../Transforms/InstCombine/X86/x86-muldq.ll | 281 + .../Transforms/InstCombine/X86/x86-pack.ll | 366 ++ .../Transforms/InstCombine/X86/x86-pshufb.ll | 514 ++ .../Transforms/InstCombine/X86/x86-sse.ll | 611 ++ .../Transforms/InstCombine/X86/x86-sse2.ll | 458 ++ .../Transforms/InstCombine/X86/x86-sse41.ll | 142 + .../Transforms/InstCombine/X86/x86-sse4a.ll | 408 ++ .../InstCombine/X86/x86-vec_demanded_elts.ll | 110 + .../InstCombine/X86/x86-vector-shifts.ll | 3436 +++++++++++ .../Transforms/InstCombine/X86/x86-vpermil.ll | 298 + .../Transforms/InstCombine/X86/x86-xop.ll | 305 + llvm/test/Transforms/InstCombine/abs-1.ll | 571 ++ llvm/test/Transforms/InstCombine/abs_abs.ll | 1346 ++++ .../test/Transforms/InstCombine/add-sitofp.ll | 141 + llvm/test/Transforms/InstCombine/add.ll | 980 +++ llvm/test/Transforms/InstCombine/add2.ll | 474 ++ llvm/test/Transforms/InstCombine/add3.ll | 21 + llvm/test/Transforms/InstCombine/add4.ll | 94 + llvm/test/Transforms/InstCombine/addnegneg.ll | 11 + .../Transforms/InstCombine/addrspacecast.ll | 186 + .../InstCombine/adjust-for-minmax.ll | 486 ++ .../Transforms/InstCombine/alias-recursion.ll | 24 + .../Transforms/InstCombine/align-2d-gep.ll | 44 + .../test/Transforms/InstCombine/align-addr.ll | 97 + .../test/Transforms/InstCombine/align-attr.ll | 28 + .../Transforms/InstCombine/align-external.ll | 41 + .../Transforms/InstCombine/all-bits-shift.ll | 45 + .../test/Transforms/InstCombine/alloca-big.ll | 16 + .../InstCombine/alloca-cast-debuginfo.ll | 94 + llvm/test/Transforms/InstCombine/alloca.ll | 179 + .../Transforms/InstCombine/allocsize-32.ll | 29 + llvm/test/Transforms/InstCombine/allocsize.ll | 154 + .../Transforms/InstCombine/and-compare.ll | 77 + llvm/test/Transforms/InstCombine/and-fcmp.ll | 1584 +++++ .../test/Transforms/InstCombine/and-narrow.ll | 192 + .../test/Transforms/InstCombine/and-or-and.ll | 61 + .../Transforms/InstCombine/and-or-icmps.ll | 255 + .../test/Transforms/InstCombine/and-or-not.ll | 642 ++ llvm/test/Transforms/InstCombine/and-or.ll | 132 + .../Transforms/InstCombine/and-xor-merge.ll | 24 + .../test/Transforms/InstCombine/and-xor-or.ll | 343 ++ llvm/test/Transforms/InstCombine/and.ll | 839 +++ llvm/test/Transforms/InstCombine/and2.ll | 238 + llvm/test/Transforms/InstCombine/apint-add.ll | 159 + .../InstCombine/apint-and-compare.ll | 16 + .../InstCombine/apint-and-or-and.ll | 50 + .../InstCombine/apint-and-xor-merge.ll | 31 + llvm/test/Transforms/InstCombine/apint-and.ll | 126 + .../InstCombine/apint-call-cast-target.ll | 23 + .../InstCombine/apint-cast-and-cast.ll | 15 + .../InstCombine/apint-cast-cast-to-and.ll | 8 + .../test/Transforms/InstCombine/apint-cast.ll | 30 + .../test/Transforms/InstCombine/apint-div1.ll | 22 + .../test/Transforms/InstCombine/apint-div2.ll | 22 + .../test/Transforms/InstCombine/apint-mul1.ll | 32 + .../test/Transforms/InstCombine/apint-mul2.ll | 35 + llvm/test/Transforms/InstCombine/apint-not.ll | 17 + llvm/test/Transforms/InstCombine/apint-or.ll | 56 + .../test/Transforms/InstCombine/apint-rem1.ll | 22 + .../test/Transforms/InstCombine/apint-rem2.ll | 22 + .../Transforms/InstCombine/apint-select.ll | 118 + .../InstCombine/apint-shift-simplify.ll | 34 + .../Transforms/InstCombine/apint-shift.ll | 551 ++ .../Transforms/InstCombine/apint-shl-trunc.ll | 38 + llvm/test/Transforms/InstCombine/apint-sub.ll | 191 + .../test/Transforms/InstCombine/apint-xor1.ll | 50 + .../test/Transforms/InstCombine/apint-xor2.ll | 51 + .../InstCombine/assoc-cast-assoc.ll | 77 + .../InstCombine/assume-loop-align.ll | 47 + .../InstCombine/assume-redundant.ll | 81 + llvm/test/Transforms/InstCombine/assume.ll | 358 ++ llvm/test/Transforms/InstCombine/assume2.ll | 159 + llvm/test/Transforms/InstCombine/atomic.ll | 333 + llvm/test/Transforms/InstCombine/atomicrmw.ll | 298 + llvm/test/Transforms/InstCombine/badmalloc.ll | 41 + .../test/Transforms/InstCombine/binop-cast.ll | 9 + .../test/Transforms/InstCombine/bit-checks.ll | 647 ++ .../InstCombine/bitcast-alias-function.ll | 239 + .../InstCombine/bitcast-bigendian.ll | 133 + .../Transforms/InstCombine/bitcast-bitcast.ll | 84 + .../InstCombine/bitcast-sext-vector.ll | 11 + .../Transforms/InstCombine/bitcast-store.ll | 51 + .../InstCombine/bitcast-vec-canon.ll | 40 + llvm/test/Transforms/InstCombine/bitcast.ll | 563 ++ .../Transforms/InstCombine/bitreverse-hang.ll | 53 + .../InstCombine/bitreverse-known-bits.ll | 51 + llvm/test/Transforms/InstCombine/bittest.ll | 30 + llvm/test/Transforms/InstCombine/branch.ll | 27 + llvm/test/Transforms/InstCombine/broadcast.ll | 137 + .../test/Transforms/InstCombine/bswap-fold.ll | 337 + .../InstCombine/bswap-known-bits.ll | 47 + llvm/test/Transforms/InstCombine/bswap.ll | 232 + .../builtin-dynamic-object-size.ll | 117 + .../InstCombine/builtin-object-size-offset.ll | 58 + .../InstCombine/builtin-object-size-ptr.ll | 34 + .../test/Transforms/InstCombine/cabs-array.ll | 65 + .../Transforms/InstCombine/cabs-discrete.ll | 59 + .../Transforms/InstCombine/call-callconv.ll | 53 + .../Transforms/InstCombine/call-cast-attrs.ll | 29 + .../InstCombine/call-cast-target-inalloca.ll | 22 + .../InstCombine/call-cast-target.ll | 89 + .../test/Transforms/InstCombine/call-guard.ll | 110 + .../Transforms/InstCombine/call-intrinsics.ll | 19 + llvm/test/Transforms/InstCombine/call.ll | 300 + llvm/test/Transforms/InstCombine/call2.ll | 25 + .../InstCombine/call_nonnull_arg.ll | 50 + .../callsite_nonnull_args_through_casts.ll | 99 + .../canonicalize-ashr-shl-to-masking.ll | 359 ++ ...nt-low-bit-mask-and-icmp-eq-to-icmp-ule.ll | 190 + ...nt-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll | 190 + ...t-low-bit-mask-and-icmp-sge-to-icmp-sle.ll | 226 + ...t-low-bit-mask-and-icmp-sgt-to-icmp-sgt.ll | 216 + ...t-low-bit-mask-and-icmp-sle-to-icmp-sle.ll | 216 + ...t-low-bit-mask-and-icmp-slt-to-icmp-sgt.ll | 226 + ...t-low-bit-mask-and-icmp-uge-to-icmp-ule.ll | 186 + ...t-low-bit-mask-and-icmp-ugt-to-icmp-ugt.ll | 201 + ...t-low-bit-mask-and-icmp-ule-to-icmp-ule.ll | 201 + ...t-low-bit-mask-and-icmp-ult-to-icmp-ugt.ll | 186 + ...icalize-lack-of-signed-truncation-check.ll | 234 + ...ze-low-bit-mask-and-icmp-eq-to-icmp-ule.ll | 170 + ...ze-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll | 170 + ...low-bit-mask-v2-and-icmp-eq-to-icmp-ule.ll | 297 + ...low-bit-mask-v2-and-icmp-ne-to-icmp-ugt.ll | 297 + ...low-bit-mask-v3-and-icmp-eq-to-icmp-ule.ll | 282 + ...low-bit-mask-v3-and-icmp-ne-to-icmp-ugt.ll | 282 + ...low-bit-mask-v4-and-icmp-eq-to-icmp-ule.ll | 248 + ...low-bit-mask-v4-and-icmp-ne-to-icmp-ugt.ll | 248 + .../canonicalize-lshr-shl-to-masking.ll | 359 ++ .../canonicalize-shl-lshr-to-masking.ll | 398 ++ .../canonicalize-signed-truncation-check.ll | 234 + .../InstCombine/canonicalize_branch.ll | 500 ++ .../InstCombine/cast-call-combine-prof.ll | 53 + .../InstCombine/cast-call-combine.ll | 23 + .../InstCombine/cast-callee-deopt-bundles.ll | 11 + .../InstCombine/cast-int-fcmp-eq-0.ll | 511 ++ .../InstCombine/cast-int-icmp-eq-0.ll | 709 +++ .../Transforms/InstCombine/cast-mul-select.ll | 181 + .../Transforms/InstCombine/cast-select.ll | 133 + .../cast-set-preserve-signed-dbg-val.ll | 50 + llvm/test/Transforms/InstCombine/cast-set.ll | 77 + .../InstCombine/cast-unsigned-icmp-eqcmp-0.ll | 204 + llvm/test/Transforms/InstCombine/cast.ll | 1561 +++++ llvm/test/Transforms/InstCombine/cast_phi.ll | 135 + llvm/test/Transforms/InstCombine/cast_ptr.ll | 129 + llvm/test/Transforms/InstCombine/ceil.ll | 56 + .../Transforms/InstCombine/clamp-to-minmax.ll | 607 ++ .../Transforms/InstCombine/cmp-intrinsic.ll | 493 ++ .../Transforms/InstCombine/compare-3way.ll | 395 ++ .../Transforms/InstCombine/compare-alloca.ll | 97 + .../Transforms/InstCombine/compare-signs.ll | 150 + .../Transforms/InstCombine/compare-udiv.ll | 318 + .../InstCombine/compare-unescaped.ll | 164 + .../InstCombine/consecutive-fences.ll | 73 + .../InstCombine/constant-expr-datalayout.ll | 12 + .../constant-fold-address-space-pointer.ll | 241 + .../InstCombine/constant-fold-alias.ll | 40 + .../InstCombine/constant-fold-compare.ll | 8 + .../InstCombine/constant-fold-gep.ll | 92 + .../InstCombine/constant-fold-iteration.ll | 10 + .../InstCombine/constant-fold-libfunc.ll | 31 + .../InstCombine/constant-fold-math.ll | 66 + .../InstCombine/constant-fold-shifts.ll | 36 + .../test/Transforms/InstCombine/convergent.ll | 44 + llvm/test/Transforms/InstCombine/copysign.ll | 49 + llvm/test/Transforms/InstCombine/cos-1.ll | 175 + llvm/test/Transforms/InstCombine/cos-2.ll | 27 + .../InstCombine/cos-sin-intrinsic.ll | 122 + llvm/test/Transforms/InstCombine/crash.ll | 398 ++ .../InstCombine/ctlz-cttz-bitreverse.ll | 69 + .../InstCombine/ctpop-bswap-bitreverse.ll | 49 + llvm/test/Transforms/InstCombine/ctpop.ll | 97 + .../Transforms/InstCombine/dce-iterate.ll | 24 + llvm/test/Transforms/InstCombine/deadcode.ll | 33 + .../test/Transforms/InstCombine/debug-line.ll | 26 + .../Transforms/InstCombine/debuginfo-dce.ll | 141 + .../Transforms/InstCombine/debuginfo-dce2.ll | 70 + .../Transforms/InstCombine/debuginfo-sink.ll | 78 + .../Transforms/InstCombine/debuginfo-skip.ll | 45 + .../InstCombine/debuginfo-variables.ll | 122 + llvm/test/Transforms/InstCombine/debuginfo.ll | 119 + .../Transforms/InstCombine/debuginfo_add.ll | 114 + .../InstCombine/default-alignment.ll | 10 + .../InstCombine/demand_shrink_nsw.ll | 33 + .../InstCombine/demorgan-sink-not-into-xor.ll | 138 + llvm/test/Transforms/InstCombine/demorgan.ll | 501 ++ .../InstCombine/disable-simplify-libcalls.ll | 335 + .../test/Transforms/InstCombine/distribute.ll | 68 + .../Transforms/InstCombine/div-shift-crash.ll | 101 + llvm/test/Transforms/InstCombine/div-shift.ll | 204 + llvm/test/Transforms/InstCombine/div.ll | 1049 ++++ .../InstCombine/double-float-shrink-1.ll | 574 ++ .../InstCombine/double-float-shrink-2.ll | 654 ++ .../InstCombine/early_constfold_changes_IR.ll | 20 + .../early_dce_clobbers_callgraph.ll | 31 + .../InstCombine/element-atomic-memintrins.ll | 418 ++ .../InstCombine/enforce-known-alignment.ll | 38 + .../Transforms/InstCombine/err-rep-cold.ll | 77 + llvm/test/Transforms/InstCombine/exact.ll | 336 + llvm/test/Transforms/InstCombine/exp2-1.ll | 99 + llvm/test/Transforms/InstCombine/exp2-2.ll | 17 + .../Transforms/InstCombine/extractelement.ll | 312 + .../InstCombine/extractinsert-tbaa.ll | 45 + .../Transforms/InstCombine/extractvalue.ll | 107 + .../Transforms/InstCombine/fabs-libcall.ll | 22 + llvm/test/Transforms/InstCombine/fabs.ll | 420 ++ .../InstCombine/fadd-fsub-factor.ll | 473 ++ llvm/test/Transforms/InstCombine/fadd.ll | 27 + llvm/test/Transforms/InstCombine/fast-math.ll | 931 +++ .../Transforms/InstCombine/fcmp-select.ll | 116 + .../Transforms/InstCombine/fcmp-special.ll | 244 + llvm/test/Transforms/InstCombine/fcmp.ll | 463 ++ .../Transforms/InstCombine/fdiv-cos-sin.ll | 131 + .../Transforms/InstCombine/fdiv-sin-cos.ll | 111 + llvm/test/Transforms/InstCombine/fdiv.ll | 383 ++ llvm/test/Transforms/InstCombine/ffs-1.ll | 193 + .../InstCombine/float-shrink-compare.ll | 473 ++ llvm/test/Transforms/InstCombine/fls.ll | 54 + llvm/test/Transforms/InstCombine/fma.ll | 277 + llvm/test/Transforms/InstCombine/fmul-exp.ll | 85 + llvm/test/Transforms/InstCombine/fmul-exp2.ll | 85 + llvm/test/Transforms/InstCombine/fmul-pow.ll | 90 + llvm/test/Transforms/InstCombine/fmul-sqrt.ll | 191 + llvm/test/Transforms/InstCombine/fmul.ll | 778 +++ llvm/test/Transforms/InstCombine/fneg.ll | 158 + .../InstCombine/fold-bin-operand.ll | 17 + .../test/Transforms/InstCombine/fold-calls.ll | 19 + .../InstCombine/fold-fops-into-selects.ll | 71 + .../InstCombine/fold-phi-load-metadata.ll | 69 + llvm/test/Transforms/InstCombine/fold-phi.ll | 39 + .../Transforms/InstCombine/fold-sqrt-sqrtf.ll | 17 + .../InstCombine/fold-vector-select.ll | 150 + .../InstCombine/fold-vector-zero.ll | 35 + .../Transforms/InstCombine/fp-ret-bitcast.ll | 28 + llvm/test/Transforms/InstCombine/fpcast.ll | 125 + llvm/test/Transforms/InstCombine/fpextend.ll | 283 + .../Transforms/InstCombine/fpextend_x86.ll | 57 + llvm/test/Transforms/InstCombine/fprintf-1.ll | 98 + llvm/test/Transforms/InstCombine/fputs-1.ll | 43 + .../Transforms/InstCombine/fputs-opt-size.ll | 61 + llvm/test/Transforms/InstCombine/fsh.ll | 638 ++ llvm/test/Transforms/InstCombine/fsub.ll | 271 + llvm/test/Transforms/InstCombine/fwrite-1.ll | 57 + .../Transforms/InstCombine/gc.relocate.ll | 59 + .../Transforms/InstCombine/gep-addrspace.ll | 86 + .../InstCombine/gep-combine-loop-invariant.ll | 187 + .../Transforms/InstCombine/gep-custom-dl.ll | 154 + llvm/test/Transforms/InstCombine/gep-sext.ll | 61 + .../test/Transforms/InstCombine/gep-vector.ll | 72 + llvm/test/Transforms/InstCombine/gepgep.ll | 13 + llvm/test/Transforms/InstCombine/gepphigep.ll | 186 + .../InstCombine/getelementptr-folding.ll | 13 + .../Transforms/InstCombine/getelementptr.ll | 945 +++ .../Transforms/InstCombine/hoist_instr.ll | 18 + llvm/test/Transforms/InstCombine/icmp-add.ll | 465 ++ .../Transforms/InstCombine/icmp-bc-vec.ll | 127 + .../Transforms/InstCombine/icmp-custom-dl.ll | 247 + .../InstCombine/icmp-div-constant.ll | 93 + llvm/test/Transforms/InstCombine/icmp-dom.ll | 350 ++ .../Transforms/InstCombine/icmp-logical.ll | 910 +++ .../Transforms/InstCombine/icmp-mul-zext.ll | 120 + llvm/test/Transforms/InstCombine/icmp-mul.ll | 249 + .../test/Transforms/InstCombine/icmp-range.ll | 150 + .../Transforms/InstCombine/icmp-shl-nsw.ll | 356 ++ .../Transforms/InstCombine/icmp-shl-nuw.ll | 92 + .../Transforms/InstCombine/icmp-shr-lt-gt.ll | 3546 +++++++++++ llvm/test/Transforms/InstCombine/icmp-shr.ll | 509 ++ llvm/test/Transforms/InstCombine/icmp-sub.ll | 86 + ...al-to-icmp-eq-of-lshr-val-by-bits-and-0.ll | 260 + ...al-to-icmp-eq-of-lshr-val-by-bits-and-0.ll | 250 + ...al-to-icmp-eq-of-lshr-val-by-bits-and-0.ll | 152 + ...al-to-icmp-ne-of-lshr-val-by-bits-and-0.ll | 152 + ...al-to-icmp-ne-of-lshr-val-by-bits-and-0.ll | 260 + ...al-to-icmp-ne-of-lshr-val-by-bits-and-0.ll | 250 + llvm/test/Transforms/InstCombine/icmp-vec.ll | 282 + .../InstCombine/icmp-xor-signbit.ll | 219 + llvm/test/Transforms/InstCombine/icmp.ll | 3477 +++++++++++ .../icmp_sdiv_with_and_without_range.ll | 32 + llvm/test/Transforms/InstCombine/idioms.ll | 32 + .../InstCombine/indexed-gep-compares.ll | 207 + .../InstCombine/inline-intrinsic-assert.ll | 28 + .../Transforms/InstCombine/inselt-binop.ll | 635 ++ .../InstCombine/insert-const-shuf.ll | 118 + .../InstCombine/insert-extract-shuffle.ll | 427 ++ .../InstCombine/insert-val-extract-elem.ll | 74 + .../Transforms/InstCombine/int_sideeffect.ll | 14 + .../InstCombine/intersect-accessgroup.ll | 113 + llvm/test/Transforms/InstCombine/intptr1.ll | 193 + llvm/test/Transforms/InstCombine/intptr2.ll | 39 + llvm/test/Transforms/InstCombine/intptr3.ll | 39 + llvm/test/Transforms/InstCombine/intptr4.ll | 53 + llvm/test/Transforms/InstCombine/intptr5.ll | 56 + llvm/test/Transforms/InstCombine/intptr6.ll | 90 + llvm/test/Transforms/InstCombine/intptr7.ll | 58 + .../test/Transforms/InstCombine/intrinsics.ll | 427 ++ .../Transforms/InstCombine/invariant.group.ll | 150 + llvm/test/Transforms/InstCombine/invariant.ll | 28 + ...rt-variable-mask-in-masked-merge-scalar.ll | 318 + ...rt-variable-mask-in-masked-merge-vector.ll | 421 ++ llvm/test/Transforms/InstCombine/invoke.ll | 86 + llvm/test/Transforms/InstCombine/isascii-1.ll | 32 + llvm/test/Transforms/InstCombine/isdigit-1.ll | 48 + .../Transforms/InstCombine/known-never-nan.ll | 196 + .../Transforms/InstCombine/known_align.ll | 27 + .../Transforms/InstCombine/lifetime-asan.ll | 49 + .../InstCombine/lifetime-no-null-opt.ll | 94 + llvm/test/Transforms/InstCombine/lifetime.ll | 92 + .../InstCombine/load-bitcast-select.ll | 104 + .../Transforms/InstCombine/load-bitcast32.ll | 79 + .../Transforms/InstCombine/load-bitcast64.ll | 78 + llvm/test/Transforms/InstCombine/load-cmp.ll | 316 + .../InstCombine/load-combine-metadata-2.ll | 20 + .../InstCombine/load-combine-metadata-3.ll | 20 + .../InstCombine/load-combine-metadata-4.ll | 20 + .../load-combine-metadata-dominance.ll | 44 + .../InstCombine/load-combine-metadata.ll | 30 + .../Transforms/InstCombine/load-select.ll | 16 + llvm/test/Transforms/InstCombine/load.ll | 302 + llvm/test/Transforms/InstCombine/load3.ll | 46 + .../Transforms/InstCombine/load_combine_aa.ll | 15 + .../InstCombine/loadstore-alignment.ll | 90 + .../InstCombine/loadstore-metadata.ll | 150 + .../InstCombine/log-pow-nofastmath.ll | 30 + llvm/test/Transforms/InstCombine/log-pow.ll | 62 + .../Transforms/InstCombine/logical-select.ll | 637 ++ .../InstCombine/lower-dbg-declare.ll | 183 + llvm/test/Transforms/InstCombine/lshr-phi.ll | 57 + llvm/test/Transforms/InstCombine/lshr.ll | 205 + .../InstCombine/malloc-free-delete.ll | 288 + .../InstCombine/masked-merge-add.ll | 415 ++ .../InstCombine/masked-merge-and-of-ors.ll | 509 ++ .../Transforms/InstCombine/masked-merge-or.ll | 414 ++ .../InstCombine/masked-merge-xor.ll | 414 ++ .../InstCombine/masked_intrinsics.ll | 261 + .../Transforms/InstCombine/max-of-nots.ll | 360 ++ .../Transforms/InstCombine/max_known_bits.ll | 95 + llvm/test/Transforms/InstCombine/maximum.ll | 292 + llvm/test/Transforms/InstCombine/maxnum.ll | 293 + .../Transforms/InstCombine/mem-gep-zidx.ll | 60 + .../InstCombine/mem-par-metadata-memcpy.ll | 62 + llvm/test/Transforms/InstCombine/memchr.ll | 204 + llvm/test/Transforms/InstCombine/memcmp-1.ll | 151 + llvm/test/Transforms/InstCombine/memcmp-2.ll | 17 + .../InstCombine/memcmp-constant-fold.ll | 80 + llvm/test/Transforms/InstCombine/memcpy-1.ll | 28 + llvm/test/Transforms/InstCombine/memcpy-2.ll | 18 + .../InstCombine/memcpy-addrspace.ll | 125 + .../InstCombine/memcpy-from-global.ll | 259 + .../Transforms/InstCombine/memcpy-to-load.ll | 87 + llvm/test/Transforms/InstCombine/memcpy.ll | 49 + .../Transforms/InstCombine/memcpy_chk-1.ll | 77 + .../Transforms/InstCombine/memcpy_chk-2.ll | 24 + llvm/test/Transforms/InstCombine/memmove-1.ll | 17 + llvm/test/Transforms/InstCombine/memmove-2.ll | 17 + llvm/test/Transforms/InstCombine/memmove.ll | 71 + .../Transforms/InstCombine/memmove_chk-1.ll | 64 + .../Transforms/InstCombine/memmove_chk-2.ll | 24 + llvm/test/Transforms/InstCombine/memset-1.ll | 108 + llvm/test/Transforms/InstCombine/memset-2.ll | 17 + llvm/test/Transforms/InstCombine/memset.ll | 37 + llvm/test/Transforms/InstCombine/memset2.ll | 15 + .../Transforms/InstCombine/memset_chk-1.ll | 130 + .../Transforms/InstCombine/memset_chk-2.ll | 20 + .../test/Transforms/InstCombine/merge-icmp.ll | 29 + .../Transforms/InstCombine/min-positive.ll | 101 + llvm/test/Transforms/InstCombine/minimum.ll | 317 + .../InstCombine/minmax-demandbits.ll | 236 + .../Transforms/InstCombine/minmax-fold.ll | 1450 +++++ llvm/test/Transforms/InstCombine/minmax-fp.ll | 257 + llvm/test/Transforms/InstCombine/minnum.ll | 318 + llvm/test/Transforms/InstCombine/misc-2002.ll | 50 + .../Transforms/InstCombine/mul-masked-bits.ll | 19 + llvm/test/Transforms/InstCombine/mul.ll | 519 ++ .../multi-size-address-space-pointer.ll | 112 + .../Transforms/InstCombine/multi-use-or.ll | 24 + .../multiple-uses-load-bitcast-select.ll | 30 + .../Transforms/InstCombine/musttail-thunk.ll | 33 + .../Transforms/InstCombine/narrow-math.ll | 630 ++ .../Transforms/InstCombine/narrow-switch.ll | 262 + llvm/test/Transforms/InstCombine/narrow.ll | 239 + .../test/Transforms/InstCombine/no-negzero.ll | 33 + .../Transforms/InstCombine/no_cgscc_assert.ll | 18 + .../InstCombine/no_sink_instruction.ll | 19 + .../InstCombine/non-integral-pointers.ll | 92 + .../InstCombine/nonnull-attribute.ll | 19 + llvm/test/Transforms/InstCombine/not.ll | 253 + llvm/test/Transforms/InstCombine/nothrow.ll | 8 + llvm/test/Transforms/InstCombine/nsw.ll | 132 + .../InstCombine/obfuscated_splat.ll | 11 + .../test/Transforms/InstCombine/objsize-64.ll | 39 + .../InstCombine/objsize-address-space.ll | 80 + .../InstCombine/objsize-noverify.ll | 43 + llvm/test/Transforms/InstCombine/objsize.ll | 303 + .../Transforms/InstCombine/odr-linkage.ll | 19 + .../Transforms/InstCombine/onehot_merge.ll | 111 + llvm/test/Transforms/InstCombine/opaque.ll | 31 + .../InstCombine/operand-complexity.ll | 136 + llvm/test/Transforms/InstCombine/or-fcmp.ll | 1556 +++++ .../InstCombine/or-shifted-masks.ll | 221 + llvm/test/Transforms/InstCombine/or-xor.ll | 416 ++ llvm/test/Transforms/InstCombine/or.ll | 843 +++ llvm/test/Transforms/InstCombine/osx-names.ll | 30 + .../InstCombine/out-of-bounds-indexes.ll | 41 + .../Transforms/InstCombine/overflow-mul.ll | 199 + llvm/test/Transforms/InstCombine/overflow.ll | 173 + .../InstCombine/phi-load-metadata-2.ll | 30 + .../InstCombine/phi-load-metadata-3.ll | 30 + .../phi-load-metadata-dominance.ll | 26 + .../InstCombine/phi-load-metadata.ll | 30 + .../Transforms/InstCombine/phi-merge-gep.ll | 102 + .../InstCombine/phi-preserve-ir-flags.ll | 89 + .../InstCombine/phi-select-constant.ll | 105 + .../Transforms/InstCombine/phi-timeout.ll | 47 + llvm/test/Transforms/InstCombine/phi.ll | 881 +++ llvm/test/Transforms/InstCombine/pow-1.ll | 488 ++ llvm/test/Transforms/InstCombine/pow-2.ll | 18 + llvm/test/Transforms/InstCombine/pow-3.ll | 50 + llvm/test/Transforms/InstCombine/pow-4.ll | 225 + llvm/test/Transforms/InstCombine/pow-cbrt.ll | 117 + .../InstCombine/pow-exp-nofastmath.ll | 16 + llvm/test/Transforms/InstCombine/pow-exp.ll | 222 + llvm/test/Transforms/InstCombine/pow-sqrt.ll | 297 + llvm/test/Transforms/InstCombine/pr12251.ll | 15 + llvm/test/Transforms/InstCombine/pr12338.ll | 24 + llvm/test/Transforms/InstCombine/pr17827.ll | 115 + llvm/test/Transforms/InstCombine/pr19420.ll | 89 + llvm/test/Transforms/InstCombine/pr20079.ll | 9 + llvm/test/Transforms/InstCombine/pr20678.ll | 8 + llvm/test/Transforms/InstCombine/pr21199.ll | 25 + llvm/test/Transforms/InstCombine/pr21210.ll | 51 + llvm/test/Transforms/InstCombine/pr21651.ll | 24 + llvm/test/Transforms/InstCombine/pr21891.ll | 18 + llvm/test/Transforms/InstCombine/pr23751.ll | 13 + llvm/test/Transforms/InstCombine/pr23809.ll | 22 + llvm/test/Transforms/InstCombine/pr24354.ll | 33 + llvm/test/Transforms/InstCombine/pr24605.ll | 15 + llvm/test/Transforms/InstCombine/pr25342.ll | 93 + llvm/test/Transforms/InstCombine/pr25745.ll | 20 + llvm/test/Transforms/InstCombine/pr2645-0.ll | 33 + llvm/test/Transforms/InstCombine/pr26992.ll | 37 + llvm/test/Transforms/InstCombine/pr26993.ll | 24 + llvm/test/Transforms/InstCombine/pr27236.ll | 17 + llvm/test/Transforms/InstCombine/pr27332.ll | 23 + llvm/test/Transforms/InstCombine/pr27343.ll | 33 + llvm/test/Transforms/InstCombine/pr27703.ll | 20 + llvm/test/Transforms/InstCombine/pr27996.ll | 41 + llvm/test/Transforms/InstCombine/pr28143.ll | 12 + llvm/test/Transforms/InstCombine/pr28725.ll | 11 + llvm/test/Transforms/InstCombine/pr2996.ll | 12 + llvm/test/Transforms/InstCombine/pr30929.ll | 11 + .../InstCombine/pr31990_wrong_memcpy.ll | 25 + llvm/test/Transforms/InstCombine/pr32686.ll | 23 + llvm/test/Transforms/InstCombine/pr33453.ll | 15 + .../InstCombine/pr33689_same_bitwidth.ll | 53 + llvm/test/Transforms/InstCombine/pr34349.ll | 27 + llvm/test/Transforms/InstCombine/pr34627.ll | 11 + llvm/test/Transforms/InstCombine/pr35515.ll | 20 + llvm/test/Transforms/InstCombine/pr36362.ll | 17 + llvm/test/Transforms/InstCombine/pr38677.ll | 33 + llvm/test/Transforms/InstCombine/pr38897.ll | 28 + llvm/test/Transforms/InstCombine/pr38915.ll | 24 + llvm/test/Transforms/InstCombine/pr38984.ll | 41 + llvm/test/Transforms/InstCombine/pr39177.ll | 44 + llvm/test/Transforms/InstCombine/pr39908.ll | 49 + llvm/test/Transforms/InstCombine/pr41164.ll | 36 + .../Transforms/InstCombine/prefetch-load.ll | 34 + .../InstCombine/preserve-sminmax.ll | 32 + .../InstCombine/preserved-analyses.ll | 33 + .../InstCombine/prevent-cmp-merge.ll | 41 + llvm/test/Transforms/InstCombine/printf-1.ll | 131 + llvm/test/Transforms/InstCombine/printf-2.ll | 53 + llvm/test/Transforms/InstCombine/printf-3.ll | 39 + .../Transforms/InstCombine/ptr-int-cast.ll | 60 + llvm/test/Transforms/InstCombine/puts-1.ll | 31 + .../Transforms/InstCombine/range-check.ll | 159 + .../InstCombine/readnone-maythrow.ll | 34 + llvm/test/Transforms/InstCombine/realloc.ll | 24 + llvm/test/Transforms/InstCombine/rem.ll | 672 ++ llvm/test/Transforms/InstCombine/rotate.ll | 705 +++ llvm/test/Transforms/InstCombine/round.ll | 90 + .../InstCombine/sadd-with-overflow.ll | 124 + .../InstCombine/salvage-dbg-declare.ll | 49 + .../InstCombine/saturating-add-sub.ll | 1462 +++++ .../Transforms/InstCombine/scalarization.ll | 335 + llvm/test/Transforms/InstCombine/sdiv-1.ll | 31 + llvm/test/Transforms/InstCombine/sdiv-2.ll | 28 + .../InstCombine/sdiv-canonicalize.ll | 91 + .../test/Transforms/InstCombine/sdiv-guard.ll | 20 + llvm/test/Transforms/InstCombine/select-2.ll | 31 + .../InstCombine/select-binop-cmp.ll | 1088 ++++ .../InstCombine/select-bitext-bitwise-ops.ll | 111 + .../Transforms/InstCombine/select-bitext.ll | 619 ++ .../Transforms/InstCombine/select-cmp-br.ll | 263 + .../InstCombine/select-cmp-cttz-ctlz.ll | 459 ++ .../Transforms/InstCombine/select-cmpxchg.ll | 39 + .../InstCombine/select-crash-noverify.ll | 19 + .../Transforms/InstCombine/select-crash.ll | 32 + .../InstCombine/select-extractelement.ll | 146 + .../test/Transforms/InstCombine/select-gep.ll | 152 + .../Transforms/InstCombine/select-icmp-and.ll | 620 ++ .../InstCombine/select-load-call.ll | 15 + .../InstCombine/select-obo-peo-ops.ll | 1143 ++++ .../InstCombine/select-of-bittest.ll | 654 ++ .../Transforms/InstCombine/select-pr39595.ll | 18 + .../Transforms/InstCombine/select-select.ll | 34 + .../InstCombine/select-with-bitwise-ops.ll | 1451 +++++ llvm/test/Transforms/InstCombine/select.ll | 1506 +++++ .../InstCombine/select_arithmetic.ll | 94 + .../Transforms/InstCombine/select_meta.ll | 345 ++ .../set-lowbits-mask-canonicalize.ll | 300 + llvm/test/Transforms/InstCombine/set.ll | 392 ++ .../InstCombine/setcc-strength-reduce.ll | 37 + llvm/test/Transforms/InstCombine/sext.ll | 242 + llvm/test/Transforms/InstCombine/shift-add.ll | 74 + .../Transforms/InstCombine/shift-shift.ll | 75 + llvm/test/Transforms/InstCombine/shift-sra.ll | 217 + llvm/test/Transforms/InstCombine/shift.ll | 1539 +++++ .../InstCombine/should-change-type.ll | 57 + .../InstCombine/shuffle-select-narrow.ll | 144 + .../Transforms/InstCombine/shuffle_select.ll | 1466 +++++ .../InstCombine/shufflevec-bitcast.ll | 16 + .../InstCombine/shufflevec-constant.ll | 17 + .../InstCombine/sign-test-and-or.ll | 173 + .../InstCombine/signed-comparison.ll | 25 + .../InstCombine/signed-truncation-check.ll | 621 ++ llvm/test/Transforms/InstCombine/signext.ll | 102 + .../simplify-demanded-bits-pointer.ll | 84 + .../InstCombine/simplify-libcalls-erased.ll | 25 + .../InstCombine/simplify-libcalls.ll | 180 + llvm/test/Transforms/InstCombine/sincospi.ll | 101 + .../Transforms/InstCombine/sink-alloca.ll | 52 + .../InstCombine/sink-into-catchswitch.ll | 58 + .../InstCombine/sink_instruction.ll | 79 + llvm/test/Transforms/InstCombine/sitofp.ll | 218 + llvm/test/Transforms/InstCombine/smax-icmp.ll | 234 + llvm/test/Transforms/InstCombine/smin-icmp.ll | 333 + llvm/test/Transforms/InstCombine/snprintf.ll | 138 + llvm/test/Transforms/InstCombine/sprintf-1.ll | 100 + .../Transforms/InstCombine/sprintf-void.ll | 21 + .../Transforms/InstCombine/sqrt-nofast.ll | 25 + llvm/test/Transforms/InstCombine/sqrt.ll | 54 + .../InstCombine/srem-canonicalize.ll | 63 + .../InstCombine/srem-simplify-bug.ll | 9 + llvm/test/Transforms/InstCombine/srem1.ll | 18 + .../InstCombine/ssub-with-overflow.ll | 162 + .../Transforms/InstCombine/stack-overalign.ll | 31 + .../InstCombine/stacksave-debuginfo.ll | 47 + .../InstCombine/stacksaverestore.ll | 112 + .../test/Transforms/InstCombine/statepoint.ll | 52 + .../InstCombine/store-load-unaliased-gep.ll | 23 + llvm/test/Transforms/InstCombine/store.ll | 309 + .../Transforms/InstCombine/storemerge-dbg.ll | 26 + llvm/test/Transforms/InstCombine/stpcpy-1.ll | 46 + llvm/test/Transforms/InstCombine/stpcpy-2.ll | 22 + .../Transforms/InstCombine/stpcpy_chk-1.ll | 103 + .../Transforms/InstCombine/stpcpy_chk-2.ll | 21 + llvm/test/Transforms/InstCombine/str-int-2.ll | 131 + llvm/test/Transforms/InstCombine/str-int.ll | 134 + llvm/test/Transforms/InstCombine/strcat-1.ll | 38 + llvm/test/Transforms/InstCombine/strcat-2.ll | 32 + llvm/test/Transforms/InstCombine/strcat-3.ll | 22 + llvm/test/Transforms/InstCombine/strchr-1.ll | 96 + llvm/test/Transforms/InstCombine/strchr-2.ll | 21 + llvm/test/Transforms/InstCombine/strcmp-1.ll | 104 + llvm/test/Transforms/InstCombine/strcmp-2.ll | 20 + .../Transforms/InstCombine/strcmp-memcmp.ll | 560 ++ llvm/test/Transforms/InstCombine/strcpy-1.ll | 45 + llvm/test/Transforms/InstCombine/strcpy-2.ll | 22 + .../Transforms/InstCombine/strcpy_chk-1.ll | 103 + .../Transforms/InstCombine/strcpy_chk-2.ll | 21 + .../Transforms/InstCombine/strcpy_chk-64.ll | 31 + llvm/test/Transforms/InstCombine/strcspn-1.ll | 57 + llvm/test/Transforms/InstCombine/strcspn-2.ll | 21 + llvm/test/Transforms/InstCombine/strlen-1.ll | 204 + llvm/test/Transforms/InstCombine/strlen-2.ll | 18 + llvm/test/Transforms/InstCombine/strncat-1.ll | 37 + llvm/test/Transforms/InstCombine/strncat-2.ll | 53 + llvm/test/Transforms/InstCombine/strncat-3.ll | 22 + llvm/test/Transforms/InstCombine/strncmp-1.ll | 99 + llvm/test/Transforms/InstCombine/strncmp-2.ll | 20 + .../InstCombine/strncmp-wrong-datalayout.ll | 16 + llvm/test/Transforms/InstCombine/strncpy-1.ll | 95 + llvm/test/Transforms/InstCombine/strncpy-2.ll | 22 + .../Transforms/InstCombine/strncpy_chk-1.ll | 71 + .../Transforms/InstCombine/strncpy_chk-2.ll | 21 + llvm/test/Transforms/InstCombine/strpbrk-1.ll | 68 + llvm/test/Transforms/InstCombine/strpbrk-2.ll | 23 + llvm/test/Transforms/InstCombine/strrchr-1.ll | 65 + llvm/test/Transforms/InstCombine/strrchr-2.ll | 21 + llvm/test/Transforms/InstCombine/strspn-1.ll | 56 + llvm/test/Transforms/InstCombine/strstr-1.ll | 65 + llvm/test/Transforms/InstCombine/strstr-2.ll | 18 + llvm/test/Transforms/InstCombine/strto-1.ll | 82 + .../InstCombine/struct-assign-tbaa-new.ll | 53 + .../InstCombine/struct-assign-tbaa.ll | 46 + .../test/Transforms/InstCombine/sub-minmax.ll | 355 ++ llvm/test/Transforms/InstCombine/sub-not.ll | 145 + llvm/test/Transforms/InstCombine/sub-xor.ll | 50 + llvm/test/Transforms/InstCombine/sub.ll | 1294 ++++ .../InstCombine/switch-constant-expr.ll | 44 + .../InstCombine/switch-truncate-crash.ll | 7 + .../Transforms/InstCombine/tan-nofastmath.ll | 17 + llvm/test/Transforms/InstCombine/tan.ll | 23 + .../InstCombine/tbaa-store-to-load.ll | 18 + llvm/test/Transforms/InstCombine/toascii-1.ll | 59 + llvm/test/Transforms/InstCombine/token.ll | 106 + .../Transforms/InstCombine/trunc-binop-ext.ll | 317 + llvm/test/Transforms/InstCombine/trunc.ll | 626 ++ llvm/test/Transforms/InstCombine/type_pun.ll | 155 + .../InstCombine/uadd-with-overflow.ll | 126 + llvm/test/Transforms/InstCombine/uaddo.ll | 182 + .../Transforms/InstCombine/udiv-simplify.ll | 106 + .../udiv_select_to_select_shift.ll | 38 + .../InstCombine/udivrem-change-width.ll | 288 + llvm/test/Transforms/InstCombine/umax-icmp.ll | 234 + llvm/test/Transforms/InstCombine/umin-icmp.ll | 234 + .../InstCombine/unavailable-debug.ll | 81 + ...old-masked-merge-with-const-mask-scalar.ll | 289 + ...old-masked-merge-with-const-mask-vector.ll | 350 ++ .../InstCombine/unlocked-stdio-mingw.ll | 23 + .../Transforms/InstCombine/unlocked-stdio.ll | 224 + .../InstCombine/unordered-fcmp-select.ll | 125 + .../test/Transforms/InstCombine/unpack-fca.ll | 239 + .../unrecognized_three-way-comparison.ll | 459 ++ .../InstCombine/unsigned_saturated_sub.ll | 160 + .../InstCombine/urem-simplify-bug.ll | 36 + llvm/test/Transforms/InstCombine/vararg.ll | 30 + .../InstCombine/vec-binop-select.ll | 275 + .../InstCombine/vec_demanded_elts.ll | 640 ++ .../InstCombine/vec_extract_2elts.ll | 12 + .../InstCombine/vec_extract_var_elt.ll | 26 + .../InstCombine/vec_gep_scalar_arg.ll | 16 + .../Transforms/InstCombine/vec_insertelt.ll | 8 + .../Transforms/InstCombine/vec_phi_extract.ll | 107 + llvm/test/Transforms/InstCombine/vec_sext.ll | 63 + .../Transforms/InstCombine/vec_shuffle.ll | 1142 ++++ .../Transforms/InstCombine/vector-casts.ll | 413 ++ .../InstCombine/vector-concat-binop.ll | 282 + .../test/Transforms/InstCombine/vector-mul.ll | 445 ++ .../Transforms/InstCombine/vector-type.ll | 15 + .../Transforms/InstCombine/vector-udiv.ll | 99 + .../Transforms/InstCombine/vector-urem.ll | 78 + .../test/Transforms/InstCombine/vector-xor.ll | 281 + .../Transforms/InstCombine/vector_gep1.ll | 64 + .../Transforms/InstCombine/vector_gep2.ll | 44 + .../InstCombine/vector_insertelt_shuffle.ll | 93 + .../Transforms/InstCombine/volatile_store.ll | 22 + llvm/test/Transforms/InstCombine/wcslen-1.ll | 222 + llvm/test/Transforms/InstCombine/wcslen-2.ll | 21 + llvm/test/Transforms/InstCombine/wcslen-3.ll | 197 + llvm/test/Transforms/InstCombine/wcslen-4.ll | 20 + .../Transforms/InstCombine/weak-symbols.ll | 33 + llvm/test/Transforms/InstCombine/win-math.ll | 335 + .../Transforms/InstCombine/with_overflow.ll | 606 ++ llvm/test/Transforms/InstCombine/xor-icmps.ll | 173 + llvm/test/Transforms/InstCombine/xor-undef.ll | 6 + llvm/test/Transforms/InstCombine/xor.ll | 914 +++ llvm/test/Transforms/InstCombine/xor2.ll | 513 ++ .../InstCombine/zero-point-zero-add.ll | 24 + .../InstCombine/zeroext-and-reduce.ll | 15 + .../InstCombine/zext-bool-add-sub.ll | 404 ++ llvm/test/Transforms/InstCombine/zext-fold.ll | 18 + .../Transforms/InstCombine/zext-or-icmp.ll | 51 + llvm/test/Transforms/InstCombine/zext-phi.ll | 32 + llvm/test/Transforms/InstCombine/zext.ll | 174 + llvm/test/Transforms/InstMerge/exceptions.ll | 61 + .../InstMerge/st_sink_barrier_call.ll | 43 + .../InstMerge/st_sink_bugfix_22613.ll | 106 + .../InstMerge/st_sink_check_debug.ll | 33 + .../InstMerge/st_sink_debuginvariant.ll | 156 + .../InstMerge/st_sink_no_barrier_call.ll | 45 + .../InstMerge/st_sink_no_barrier_load.ll | 43 + .../InstMerge/st_sink_no_barrier_store.ll | 42 + .../InstMerge/st_sink_two_stores.ll | 47 + .../InstMerge/st_sink_with_barrier.ll | 42 + llvm/test/Transforms/InstNamer/basic.ll | 19 + .../InstSimplify/2010-12-20-Boolean.ll | 34 + .../InstSimplify/2011-01-14-Thread.ll | 9 + .../InstSimplify/2011-02-01-Vector.ll | 8 + .../2011-09-05-InsertExtractValue.ll | 55 + .../InstSimplify/2011-10-27-BinOpCrash.ll | 12 + .../2011-11-23-MaskedBitsCrash.ll | 17 + .../2013-04-19-ConstantFoldingCrash.ll | 9 + llvm/test/Transforms/InstSimplify/AndOrXor.ll | 1134 ++++ llvm/test/Transforms/InstSimplify/add-mask.ll | 79 + llvm/test/Transforms/InstSimplify/add.ll | 51 + llvm/test/Transforms/InstSimplify/addsub.ll | 78 + .../InstSimplify/and-icmps-same-ops.ll | 1239 ++++ .../InstSimplify/and-or-icmp-zero.ll | 263 + llvm/test/Transforms/InstSimplify/assume.ll | 93 + .../InstSimplify/bitcast-vector-fold.ll | 277 + .../InstSimplify/bitreverse-fold.ll | 110 + .../Transforms/InstSimplify/bitreverse.ll | 31 + llvm/test/Transforms/InstSimplify/bswap.ll | 46 + llvm/test/Transforms/InstSimplify/call.ll | 744 +++ .../InstSimplify/cast-unsigned-icmp-cmp-0.ll | 188 + llvm/test/Transforms/InstSimplify/cast.ll | 54 + .../Transforms/InstSimplify/cmp_of_min_max.ll | 138 + llvm/test/Transforms/InstSimplify/compare.ll | 1361 ++++ ...constantfold-add-nuw-allones-to-allones.ll | 140 + .../constantfold-shl-nuw-C-to-C.ll | 212 + .../InstSimplify/dead-code-removal.ll | 15 + llvm/test/Transforms/InstSimplify/div.ll | 196 + .../Transforms/InstSimplify/exact-nsw-nuw.ll | 69 + .../InstSimplify/extract-element.ll | 56 + .../test/Transforms/InstSimplify/fast-math.ll | 462 ++ .../Transforms/InstSimplify/fcmp-select.ll | 94 + llvm/test/Transforms/InstSimplify/fdiv.ll | 52 + .../InstSimplify/floating-point-arithmetic.ll | 1269 ++++ .../InstSimplify/floating-point-compare.ll | 580 ++ .../InstSimplify/fold-builtin-fma.ll | 119 + .../InstSimplify/fold-intrinsics.ll | 27 + llvm/test/Transforms/InstSimplify/fp-nan.ll | 201 + llvm/test/Transforms/InstSimplify/fp-undef.ll | 533 ++ llvm/test/Transforms/InstSimplify/gep.ll | 105 + .../Transforms/InstSimplify/icmp-abs-nabs.ll | 403 ++ .../InstSimplify/icmp-bool-constant.ll | 196 + .../Transforms/InstSimplify/icmp-constant.ll | 760 +++ .../Transforms/InstSimplify/icmp-ranges.ll | 5470 +++++++++++++++++ llvm/test/Transforms/InstSimplify/implies.ll | 257 + .../Transforms/InstSimplify/insertelement.ll | 31 + .../InstSimplify/known-never-nan.ll | 372 ++ .../InstSimplify/load-relative-32.ll | 19 + .../Transforms/InstSimplify/load-relative.ll | 75 + llvm/test/Transforms/InstSimplify/load.ll | 30 + .../InstSimplify/log-exp-intrinsic.ll | 192 + .../InstSimplify/log10-pow10-intrinsic.ll | 45 + .../InstSimplify/log2-pow2-intrinsic.ll | 45 + .../Transforms/InstSimplify/logic-of-fcmps.ll | 183 + llvm/test/Transforms/InstSimplify/maxmin.ll | 302 + llvm/test/Transforms/InstSimplify/mul.ll | 44 + llvm/test/Transforms/InstSimplify/negate.ll | 74 + .../Transforms/InstSimplify/noalias-ptr.ll | 259 + .../InstSimplify/or-icmps-same-ops.ll | 1239 ++++ llvm/test/Transforms/InstSimplify/or.ll | 221 + .../Transforms/InstSimplify/past-the-end.ll | 93 + llvm/test/Transforms/InstSimplify/phi.ll | 24 + llvm/test/Transforms/InstSimplify/pr28725.ll | 12 + llvm/test/Transforms/InstSimplify/pr33957.ll | 29 + llvm/test/Transforms/InstSimplify/ptr_diff.ll | 84 + .../Transforms/InstSimplify/reassociate.ll | 266 + llvm/test/Transforms/InstSimplify/rem.ll | 327 + .../InstSimplify/require-dominator.ll | 31 + llvm/test/Transforms/InstSimplify/returned.ll | 30 + .../InstSimplify/round-intrinsics.ll | 131 + .../InstSimplify/saturating-add-sub.ll | 666 ++ llvm/test/Transforms/InstSimplify/sdiv.ll | 179 + .../Transforms/InstSimplify/select-and-cmp.ll | 339 + .../Transforms/InstSimplify/select-implied.ll | 276 + .../Transforms/InstSimplify/select-or-cmp.ll | 339 + llvm/test/Transforms/InstSimplify/select.ll | 566 ++ .../Transforms/InstSimplify/shift-128-kb.ll | 30 + .../InstSimplify/shift-knownbits.ll | 190 + llvm/test/Transforms/InstSimplify/shift.ll | 239 + llvm/test/Transforms/InstSimplify/shr-nop.ll | 431 ++ .../shr-scalar-vector-consistency.ll | 25 + .../Transforms/InstSimplify/shufflevector.ll | 249 + .../Transforms/InstSimplify/signed-div-rem.ll | 354 ++ .../InstSimplify/simplify-nested-bitcast.ll | 54 + llvm/test/Transforms/InstSimplify/srem.ll | 69 + llvm/test/Transforms/InstSimplify/sub.ll | 53 + llvm/test/Transforms/InstSimplify/undef.ll | 362 ++ llvm/test/Transforms/InstSimplify/vec-cmp.ll | 65 + .../Transforms/InstSimplify/vector_gep.ll | 106 + .../InstSimplify/vector_ptr_bitcast.ll | 35 + .../interleaved-accesses-extract-user.ll | 113 + .../AArch64/interleaved-accesses.ll | 801 +++ .../InterleavedAccess/AArch64/lit.local.cfg | 2 + .../ARM/interleaved-accesses-extract-user.ll | 113 + .../ARM/interleaved-accesses.ll | 898 +++ .../InterleavedAccess/ARM/lit.local.cfg | 2 + .../X86/interleaved-accesses-64bits-avx.ll | 236 + .../InterleavedAccess/X86/interleavedLoad.ll | 158 + .../InterleavedAccess/X86/interleavedStore.ll | 243 + .../InterleavedAccess/X86/lit.local.cfg | 2 + .../2009-01-05-InternalizeAliases.ll | 17 + llvm/test/Transforms/Internalize/apifile | 2 + llvm/test/Transforms/Internalize/comdat.ll | 52 + llvm/test/Transforms/Internalize/lists.ll | 59 + .../Internalize/local-visibility.ll | 25 + .../test/Transforms/Internalize/stackguard.ll | 9 + llvm/test/Transforms/Internalize/used.ll | 21 + .../JumpThreading/2008-11-27-EntryMunge.ll | 13 + .../JumpThreading/2010-08-26-and.ll | 162 + .../2011-04-02-SimplifyDeadBlock.ll | 32 + .../JumpThreading/2011-04-14-InfLoop.ll | 27 + .../2012-07-19-NoSuccessorIndirectBr.ll | 8 + .../JumpThreading/PR33357-lvi-recursion.ll | 37 + llvm/test/Transforms/JumpThreading/PR37745.ll | 19 + .../Transforms/JumpThreading/and-and-cond.ll | 37 + .../test/Transforms/JumpThreading/and-cond.ll | 35 + .../JumpThreading/assume-edge-dom.ll | 39 + llvm/test/Transforms/JumpThreading/assume.ll | 241 + llvm/test/Transforms/JumpThreading/basic.ll | 610 ++ .../bb-unreachable-from-entry.ll | 26 + .../JumpThreading/branch-debug-info.ll | 41 + .../JumpThreading/branch-no-const.ll | 21 + .../JumpThreading/callbr-edge-split.ll | 58 + .../JumpThreading/combine-metadata.ll | 122 + llvm/test/Transforms/JumpThreading/compare.ll | 30 + .../JumpThreading/conservative-lvi.ll | 58 + llvm/test/Transforms/JumpThreading/crash.ll | 626 ++ .../Transforms/JumpThreading/ddt-crash.ll | 265 + .../Transforms/JumpThreading/ddt-crash2.ll | 40 + .../Transforms/JumpThreading/ddt-crash3.ll | 43 + .../Transforms/JumpThreading/ddt-crash4.ll | 75 + .../JumpThreading/degenerate-phi.ll | 24 + .../JumpThreading/fold-not-thread.ll | 246 + llvm/test/Transforms/JumpThreading/guards.ll | 383 ++ .../Transforms/JumpThreading/header-succ.ll | 99 + .../Transforms/JumpThreading/implied-cond.ll | 177 + .../Transforms/JumpThreading/indirectbr.ll | 94 + .../Transforms/JumpThreading/induction.ll | 25 + .../Transforms/JumpThreading/landing-pad.ll | 203 + .../test/Transforms/JumpThreading/lvi-load.ll | 49 + .../Transforms/JumpThreading/lvi-tristate.ll | 50 + .../JumpThreading/no-irreducible-loops.ll | 38 + .../test/Transforms/JumpThreading/or-undef.ll | 69 + llvm/test/Transforms/JumpThreading/phi-eq.ll | 209 + .../Transforms/JumpThreading/phi-known.ll | 104 + .../Transforms/JumpThreading/pr15851_hang.ll | 32 + llvm/test/Transforms/JumpThreading/pr22086.ll | 28 + llvm/test/Transforms/JumpThreading/pr26096.ll | 73 + llvm/test/Transforms/JumpThreading/pr27840.ll | 33 + llvm/test/Transforms/JumpThreading/pr33605.ll | 64 + llvm/test/Transforms/JumpThreading/pr33917.ll | 57 + llvm/test/Transforms/JumpThreading/pr36133.ll | 44 + .../pr40992-indirectbr-folding.ll | 44 + llvm/test/Transforms/JumpThreading/pr9331.ll | 50 + .../Transforms/JumpThreading/range-compare.ll | 125 + .../Transforms/JumpThreading/removed-use.ll | 54 + llvm/test/Transforms/JumpThreading/select.ll | 443 ++ .../JumpThreading/static-profile.ll | 128 + .../Transforms/JumpThreading/thread-cmp.ll | 69 + .../Transforms/JumpThreading/thread-loads.ll | 542 ++ .../JumpThreading/threading_prof1.ll | 99 + .../JumpThreading/threading_prof2.ll | 42 + .../JumpThreading/update-edge-weight.ll | 43 + .../LCSSA/2006-06-03-IncorrectIDFPhis.ll | 22 + .../2006-06-12-MultipleExitsSameBlock.ll | 28 + .../LCSSA/2006-07-09-NoDominator.ll | 25 + .../LCSSA/2006-10-31-UnreachableBlock-2.ll | 145 + .../LCSSA/2006-10-31-UnreachableBlock.ll | 185 + .../Transforms/LCSSA/2007-07-12-LICM-2.ll | 17 + .../Transforms/LCSSA/2007-07-12-LICM-3.ll | 24 + llvm/test/Transforms/LCSSA/2007-07-12-LICM.ll | 14 + .../LCSSA/avoid-intrinsics-in-catchswitch.ll | 133 + llvm/test/Transforms/LCSSA/basictest.ll | 30 + llvm/test/Transforms/LCSSA/indirectbr.ll | 574 ++ llvm/test/Transforms/LCSSA/invoke-dest.ll | 152 + llvm/test/Transforms/LCSSA/mixed-catch.ll | 96 + llvm/test/Transforms/LCSSA/pr28424.ll | 87 + llvm/test/Transforms/LCSSA/pr28608.ll | 35 + llvm/test/Transforms/LCSSA/remove-phis.ll | 56 + .../LCSSA/rewrite-existing-dbg-values.ll | 137 + llvm/test/Transforms/LCSSA/unreachable-use.ll | 29 + llvm/test/Transforms/LCSSA/unused-phis.ll | 39 + .../LICM/2003-02-26-LoopExitNotDominated.ll | 18 + .../LICM/2003-02-27-NestedLoopExitBlocks.ll | 17 + .../2003-02-27-PreheaderExitNodeUpdate.ll | 16 + .../LICM/2003-02-27-PreheaderProblem.ll | 24 + .../LICM/2003-02-27-StoreSinkPHIs.ll | 15 + .../LICM/2003-02-28-PromoteDifferentType.ll | 15 + .../Transforms/LICM/2003-05-02-LoadHoist.ll | 23 + .../LICM/2003-12-11-SinkingToPHI.ll | 16 + .../2004-09-14-AliasAnalysisInvalidate.ll | 19 + .../LICM/2004-11-17-UndefIndexCrash.ll | 20 + .../LICM/2006-09-12-DeadUserOfSunkInstr.ll | 148 + .../LICM/2007-05-22-VolatileSink.ll | 56 + .../Transforms/LICM/2007-07-30-AliasSet.ll | 39 + .../LICM/2007-09-17-PromoteValue.ll | 61 + .../LICM/2007-09-24-PromoteNullValue.ll | 46 + .../LICM/2007-10-01-PromoteSafeValue.ll | 23 + .../LICM/2008-05-20-AliasSetVAArg.ll | 30 + .../LICM/2008-07-22-LoadGlobalConstant.ll | 39 + .../LICM/2009-12-10-LICM-Indbr-Crash.ll | 21 + .../LICM/2011-04-06-HoistMissedASTUpdate.ll | 32 + .../2011-04-06-PromoteResultOfPromotion.ll | 39 + .../Transforms/LICM/2011-04-09-RAUW-AST.ll | 49 + .../Transforms/LICM/2011-07-06-Alignment.ll | 26 + .../LICM/2014-09-10-doFinalizationAssert.ll | 30 + llvm/test/Transforms/LICM/AliasSetMemSet.ll | 51 + llvm/test/Transforms/LICM/PR19798.ll | 22 + llvm/test/Transforms/LICM/PR21582.ll | 40 + llvm/test/Transforms/LICM/PR24013.ll | 19 + llvm/test/Transforms/LICM/Preserve-LCSSA.ll | 25 + .../Transforms/LICM/alias-set-tracker-loss.ll | 39 + llvm/test/Transforms/LICM/argmemonly-call.ll | 159 + llvm/test/Transforms/LICM/assume.ll | 99 + llvm/test/Transforms/LICM/atomics.ll | 223 + llvm/test/Transforms/LICM/basictest.ll | 16 + llvm/test/Transforms/LICM/bisect-state.ll | 15 + llvm/test/Transforms/LICM/call-hoisting.ll | 259 + llvm/test/Transforms/LICM/constexpr.ll | 47 + llvm/test/Transforms/LICM/crash.ll | 75 + llvm/test/Transforms/LICM/debug-value.ll | 65 + llvm/test/Transforms/LICM/dropped-tbaa.ll | 90 + llvm/test/Transforms/LICM/explicit_guards.ll | 82 + llvm/test/Transforms/LICM/extra-copies.ll | 30 + llvm/test/Transforms/LICM/fence.ll | 120 + llvm/test/Transforms/LICM/funclet.ll | 110 + llvm/test/Transforms/LICM/guards.ll | 540 ++ .../Transforms/LICM/hoist-bitcast-load.ll | 242 + .../Transforms/LICM/hoist-debuginvariant.ll | 55 + llvm/test/Transforms/LICM/hoist-deref-load.ll | 728 +++ llvm/test/Transforms/LICM/hoist-fast-fdiv.ll | 61 + .../Transforms/LICM/hoist-invariant-load.ll | 41 + llvm/test/Transforms/LICM/hoist-mustexec.ll | 605 ++ llvm/test/Transforms/LICM/hoist-nounwind.ll | 98 + llvm/test/Transforms/LICM/hoist-phi.ll | 1520 +++++ llvm/test/Transforms/LICM/hoist-round.ll | 70 + llvm/test/Transforms/LICM/hoisting.ll | 340 + llvm/test/Transforms/LICM/infinite_loops.ll | 132 + llvm/test/Transforms/LICM/int_sideeffect.ll | 27 + llvm/test/Transforms/LICM/invariant.start.ll | 138 + .../Transforms/LICM/lcssa-ssa-promoter.ll | 77 + llvm/test/Transforms/LICM/loopsink-pr38462.ll | 65 + llvm/test/Transforms/LICM/loopsink-pr39570.ll | 112 + llvm/test/Transforms/LICM/loopsink-pr39695.ll | 37 + llvm/test/Transforms/LICM/loopsink.ll | 445 ++ .../test/Transforms/LICM/no-preheader-test.ll | 21 + .../LICM/opt-remarks-conditional-load.ll | 47 + .../LICM/opt-remarks-intervening-store.ll | 67 + llvm/test/Transforms/LICM/opt-remarks.ll | 81 + llvm/test/Transforms/LICM/pr23608.ll | 50 + llvm/test/Transforms/LICM/pr26843.ll | 32 + llvm/test/Transforms/LICM/pr27262.ll | 33 + llvm/test/Transforms/LICM/pr32129.ll | 18 + llvm/test/Transforms/LICM/pr35342.ll | 26 + llvm/test/Transforms/LICM/pr36228.ll | 40 + llvm/test/Transforms/LICM/pr37323.ll | 31 + llvm/test/Transforms/LICM/pr40317.ll | 62 + llvm/test/Transforms/LICM/preheader-safe.ll | 151 + llvm/test/Transforms/LICM/promote-order.ll | 46 + llvm/test/Transforms/LICM/promote-tls.ll | 178 + llvm/test/Transforms/LICM/read-only-calls.ll | 85 + .../LICM/scalar-promote-memmodel.ll | 38 + .../Transforms/LICM/scalar-promote-unwind.ll | 318 + llvm/test/Transforms/LICM/scalar-promote.ll | 468 ++ llvm/test/Transforms/LICM/sink-foldable.ll | 150 + llvm/test/Transforms/LICM/sink-promote.ll | 50 + llvm/test/Transforms/LICM/sink.ll | 64 + llvm/test/Transforms/LICM/sinking.ll | 743 +++ llvm/test/Transforms/LICM/speculate.ll | 188 + llvm/test/Transforms/LICM/store-hoisting.ll | 462 ++ llvm/test/Transforms/LICM/strlen.ll | 19 + .../Transforms/LICM/unrolled-deeply-nested.ll | 76 + llvm/test/Transforms/LICM/update-scev.ll | 31 + llvm/test/Transforms/LICM/volatile-alias.ll | 56 + .../LoadStoreVectorizer/AMDGPU/aa-metadata.ll | 32 + .../AMDGPU/adjust-alloca-alignment.ll | 210 + .../AMDGPU/complex-index.ll | 52 + .../AMDGPU/extended-index.ll | 151 + .../LoadStoreVectorizer/AMDGPU/gep-bitcast.ll | 135 + .../AMDGPU/insertion-point.ll | 118 + .../AMDGPU/interleaved-mayalias-store.ll | 29 + .../AMDGPU/invariant-load.ll | 29 + .../LoadStoreVectorizer/AMDGPU/lit.local.cfg | 3 + .../AMDGPU/merge-stores-private.ll | 223 + .../AMDGPU/merge-stores.ll | 657 ++ .../AMDGPU/merge-vectors.ll | 91 + .../AMDGPU/missing-alignment.ll | 32 + .../AMDGPU/multiple_tails.ll | 63 + .../AMDGPU/no-implicit-float.ll | 22 + .../LoadStoreVectorizer/AMDGPU/optnone.ll | 24 + .../AMDGPU/pointer-elements.ll | 311 + .../LoadStoreVectorizer/AMDGPU/selects.ll | 95 + .../AMDGPU/store_with_aliasing_load.ll | 60 + .../AMDGPU/weird-type-accesses.ll | 201 + .../LoadStoreVectorizer/NVPTX/lit.local.cfg | 3 + .../NVPTX/merge-across-side-effects.ll | 209 + .../NVPTX/non-instr-bitcast.ll | 14 + .../NVPTX/propagate-invariance-metadata.ll | 17 + .../codegenprepare-produced-address-math.ll | 80 + .../X86/compare-scev-by-complexity.ll | 77 + .../LoadStoreVectorizer/X86/correct-order.ll | 28 + .../LoadStoreVectorizer/X86/lit.local.cfg | 3 + .../LoadStoreVectorizer/X86/load-width.ll | 40 + .../LoadStoreVectorizer/X86/merge-tbaa.ll | 48 + .../LoadStoreVectorizer/X86/non-byte-size.ll | 31 + .../X86/preserve-order32.ll | 29 + .../X86/preserve-order64.ll | 78 + .../X86/subchain-interleaved.ll | 118 + .../LoadStoreVectorizer/X86/vector-scalar.ll | 15 + .../LoadStoreVectorizer/int_sideeffect.ll | 27 + .../AArch64/kryo-large-stride.ll | 53 + .../LoopDataPrefetch/AArch64/large-stride.ll | 55 + .../LoopDataPrefetch/AArch64/lit.local.cfg | 4 + .../AArch64/opt-remark-with-hotness.ll | 86 + .../LoopDataPrefetch/AArch64/opt-remark.ll | 81 + .../LoopDataPrefetch/PowerPC/basic.ll | 26 + .../LoopDataPrefetch/PowerPC/lit.local.cfg | 2 + .../LoopDeletion/2007-07-23-InfiniteLoop.ll | 13 + .../Transforms/LoopDeletion/2008-05-06-Phi.ll | 109 + .../LoopDeletion/2011-06-21-phioperands.ll | 182 + .../LoopDeletion/2017-07-11-incremental-dt.ll | 56 + llvm/test/Transforms/LoopDeletion/crashbc.ll | 31 + llvm/test/Transforms/LoopDeletion/dcetest.ll | 36 + llvm/test/Transforms/LoopDeletion/diundef.ll | 75 + .../Transforms/LoopDeletion/invalidation.ll | 42 + .../LoopDeletion/multiple-exit-conditions.ll | 28 + .../Transforms/LoopDeletion/multiple-exits.ll | 138 + .../LoopDeletion/simplify-then-delete.ll | 67 + .../LoopDeletion/unreachable-loops.ll | 412 ++ .../Transforms/LoopDeletion/update-scev.ll | 56 + .../LoopDeletion/use-in-unreachable.ll | 24 + .../LoopDistribute/basic-with-memchecks.ll | 110 + llvm/test/Transforms/LoopDistribute/basic.ll | 83 + .../LoopDistribute/bounds-expansion-bug.ll | 106 + .../crash-in-memcheck-generation.ll | 59 + .../diagnostics-with-hotness.ll | 83 + .../Transforms/LoopDistribute/diagnostics.ll | 179 + .../LoopDistribute/disable_nonforced.ll | 50 + .../disable_nonforced_enable.ll | 51 + .../Transforms/LoopDistribute/followup.ll | 66 + .../Transforms/LoopDistribute/metadata.ll | 149 + .../LoopDistribute/no-if-convert.ll | 95 + .../Transforms/LoopDistribute/outside-use.ll | 69 + .../test/Transforms/LoopDistribute/pr28443.ll | 36 + .../LoopDistribute/program-order.ll | 65 + .../LoopDistribute/symbolic-stride.ll | 65 + .../unknown-bounds-for-memchecks.ll | 57 + .../test/Transforms/LoopFusion/cannot_fuse.ll | 371 ++ llvm/test/Transforms/LoopFusion/four_loops.ll | 136 + .../test/Transforms/LoopFusion/inner_loops.ll | 86 + llvm/test/Transforms/LoopFusion/loop_nest.ll | 120 + llvm/test/Transforms/LoopFusion/simple.ll | 317 + .../Transforms/LoopIdiom/AMDGPU/lit.local.cfg | 3 + .../Transforms/LoopIdiom/AMDGPU/popcnt.ll | 127 + llvm/test/Transforms/LoopIdiom/ARM/ctlz.ll | 246 + llvm/test/Transforms/LoopIdiom/X86/ctlz.ll | 528 ++ llvm/test/Transforms/LoopIdiom/X86/cttz.ll | 82 + .../Transforms/LoopIdiom/X86/lit.local.cfg | 3 + llvm/test/Transforms/LoopIdiom/X86/popcnt.ll | 182 + .../LoopIdiom/X86/unordered-atomic-memcpy.ll | 456 ++ .../LoopIdiom/basic-address-space.ll | 91 + llvm/test/Transforms/LoopIdiom/basic.ll | 712 +++ llvm/test/Transforms/LoopIdiom/crash.ll | 25 + .../LoopIdiom/ctpop-multiple-users-crash.ll | 34 + .../test/Transforms/LoopIdiom/dbginfo-cost.ll | 68 + llvm/test/Transforms/LoopIdiom/debug-line.ll | 52 + .../Transforms/LoopIdiom/int_sideeffect.ll | 23 + .../LoopIdiom/lir-heurs-multi-block-loop.ll | 182 + .../Transforms/LoopIdiom/memset_noidiom.ll | 30 + .../LoopIdiom/non-canonical-loop.ll | 34 + .../LoopIdiom/non-integral-pointers.ll | 48 + .../Transforms/LoopIdiom/nontemporal_store.ll | 32 + llvm/test/Transforms/LoopIdiom/pr28196.ll | 53 + llvm/test/Transforms/LoopIdiom/pr33114.ll | 35 + .../Transforms/LoopIdiom/scev-invalidation.ll | 74 + .../scev-invalidation_topmostloop.ll | 25 + .../Transforms/LoopIdiom/struct-custom-dl.ll | 212 + llvm/test/Transforms/LoopIdiom/struct.ll | 221 + .../Transforms/LoopIdiom/struct_pattern.ll | 186 + .../unordered-atomic-memcpy-noarch.ll | 28 + .../Transforms/LoopIdiom/unroll-custom-dl.ll | 78 + llvm/test/Transforms/LoopIdiom/unroll.ll | 80 + llvm/test/Transforms/LoopIdiom/unsafe.ll | 55 + llvm/test/Transforms/LoopIdiom/unwind.ll | 33 + .../test/Transforms/LoopInstSimplify/basic.ll | 165 + .../LoopInterchange/call-instructions.ll | 120 + .../LoopInterchange/currentLimitation.ll | 97 + .../Transforms/LoopInterchange/debuginfo.ll | 70 + .../LoopInterchange/inner-only-reductions.ll | 124 + .../interchange-flow-dep-outer.ll | 76 + .../interchange-insts-between-indvar.ll | 48 + .../LoopInterchange/interchange-no-deps.ll | 95 + .../LoopInterchange/interchangeable.ll | 167 + llvm/test/Transforms/LoopInterchange/lcssa.ll | 300 + .../loop-interchange-optimization-remarks.ll | 217 + .../not-interchanged-dependencies-1.ll | 44 + .../not-interchanged-loop-nest-3.ll | 56 + .../not-interchanged-tightly-nested.ll | 105 + .../LoopInterchange/outer-only-reductions.ll | 52 + .../LoopInterchange/phi-ordering.ll | 94 + .../LoopInterchange/profitability.ll | 165 + .../reductions-across-inner-and-outer-loop.ll | 150 + llvm/test/Transforms/LoopLoadElim/backward.ll | 33 + .../test/Transforms/LoopLoadElim/cond-load.ll | 42 + .../LoopLoadElim/def-store-before-load.ll | 35 + llvm/test/Transforms/LoopLoadElim/forward.ll | 48 + .../LoopLoadElim/loop-simplify-dep.ll | 33 + llvm/test/Transforms/LoopLoadElim/memcheck.ll | 52 + .../multiple-stores-same-block.ll | 48 + .../LoopLoadElim/non-consecutive.ll | 43 + llvm/test/Transforms/LoopLoadElim/opt-size.ll | 129 + .../LoopLoadElim/symbolic-stride.ll | 92 + .../Transforms/LoopLoadElim/type-mismatch.ll | 89 + .../Transforms/LoopLoadElim/unknown-dep.ll | 54 + llvm/test/Transforms/LoopPredication/basic.ll | 1595 +++++ .../basic_widenable_branch_guards.ll | 1935 ++++++ .../LoopPredication/invariant_load.ll | 371 ++ .../test/Transforms/LoopPredication/nested.ll | 352 ++ .../LoopPredication/profitability.ll | 177 + .../Transforms/LoopPredication/reverse.ll | 390 ++ .../Transforms/LoopPredication/visited.ll | 161 + .../Transforms/LoopPredication/widened.ll | 200 + llvm/test/Transforms/LoopReroll/basic.ll | 814 +++ .../Transforms/LoopReroll/basic32iters.ll | 328 + .../Transforms/LoopReroll/complex_reroll.ll | 135 + .../Transforms/LoopReroll/indvar_with_ext.ll | 184 + llvm/test/Transforms/LoopReroll/negative.ll | 48 + .../test/Transforms/LoopReroll/nonconst_lb.ll | 150 + llvm/test/Transforms/LoopReroll/ptrindvar.ll | 81 + llvm/test/Transforms/LoopReroll/reduction.ll | 132 + .../Transforms/LoopReroll/reroll_with_dbg.ll | 138 + .../LoopRotate/2009-01-25-SingleEntryPhi.ll | 22 + .../test/Transforms/LoopRotate/PhiRename-1.ll | 96 + .../LoopRotate/PhiSelfReference-1.ll | 40 + llvm/test/Transforms/LoopRotate/alloca.ll | 34 + llvm/test/Transforms/LoopRotate/basic.ll | 65 + llvm/test/Transforms/LoopRotate/callbr.ll | 103 + llvm/test/Transforms/LoopRotate/catchret.ll | 42 + llvm/test/Transforms/LoopRotate/convergent.ll | 32 + llvm/test/Transforms/LoopRotate/crash.ll | 174 + .../LoopRotate/dbg-value-duplicates.ll | 89 + llvm/test/Transforms/LoopRotate/dbgvalue.ll | 159 + llvm/test/Transforms/LoopRotate/indirectbr.ll | 75 + .../Transforms/LoopRotate/loopexitinglatch.ll | 235 + .../Transforms/LoopRotate/multiple-exits.ll | 237 + .../Transforms/LoopRotate/nosimplifylatch.ll | 34 + llvm/test/Transforms/LoopRotate/oz-disable.ll | 30 + .../Transforms/LoopRotate/phi-dbgvalue.ll | 82 + .../Transforms/LoopRotate/phi-duplicate.ll | 41 + llvm/test/Transforms/LoopRotate/pr22337.ll | 25 + llvm/test/Transforms/LoopRotate/pr2639.ll | 38 + llvm/test/Transforms/LoopRotate/pr33701.ll | 28 + llvm/test/Transforms/LoopRotate/pr35210.ll | 127 + llvm/test/Transforms/LoopRotate/pr37205.ll | 117 + .../LoopRotate/preserve-loop-simplify.ll | 65 + .../Transforms/LoopRotate/preserve-mssa.ll | 109 + .../Transforms/LoopRotate/preserve-scev.ll | 80 + .../Transforms/LoopRotate/simplifylatch.ll | 76 + .../LoopRotate/vect.omp.persistence.ll | 35 + .../LoopSimplify/2003-04-25-AssertFail.ll | 20 + .../2003-05-12-PreheaderExitOfChild.ll | 42 + .../LoopSimplify/2003-08-15-PreheadersFail.ll | 52 + .../2003-12-10-ExitBlocksProblem.ll | 36 + .../2004-02-05-DominatorInfoCorruption.ll | 14 + .../2004-03-15-IncorrectDomUpdate.ll | 11 + .../2004-04-01-IncorrectDomUpdate.ll | 20 + ...2004-04-12-LoopSimplify-SwitchBackedges.ll | 18 + ...004-04-13-LoopSimplifyUpdateDomFrontier.ll | 18 + .../LoopSimplify/2007-10-28-InvokeCrash.ll | 29 + .../2010-07-15-IncorrectDomFrontierUpdate.ll | 20 + .../2010-12-26-PHIInfiniteLoop.ll | 43 + .../2011-12-14-LandingpadHeader.ll | 45 + .../LoopSimplify/2012-03-20-indirectbr.ll | 41 + .../Transforms/LoopSimplify/ashr-crash.ll | 80 + .../test/Transforms/LoopSimplify/basictest.ll | 236 + llvm/test/Transforms/LoopSimplify/dbg-loc.ll | 102 + .../test/Transforms/LoopSimplify/dup-preds.ll | 46 + .../Transforms/LoopSimplify/hardertest.ll | 15 + .../LoopSimplify/indirectbr-backedge.ll | 35 + .../Transforms/LoopSimplify/indirectbr.ll | 100 + .../Transforms/LoopSimplify/merge-exits.ll | 48 + .../Transforms/LoopSimplify/notify-scev.ll | 110 + .../LoopSimplify/phi-node-simplify.ll | 55 + llvm/test/Transforms/LoopSimplify/pr26682.ll | 32 + llvm/test/Transforms/LoopSimplify/pr28272.ll | 139 + llvm/test/Transforms/LoopSimplify/pr30454.ll | 32 + llvm/test/Transforms/LoopSimplify/pr33494.ll | 75 + .../preserve-llvm-loop-metadata.ll | 70 + .../Transforms/LoopSimplify/preserve-scev.ll | 180 + .../LoopSimplify/single-backedge.ll | 44 + .../LoopSimplify/unreachable-loop-pred.ll | 69 + .../LoopSimplifyCFG/constant-fold-branch.ll | 2774 +++++++++ .../LoopSimplifyCFG/irreducible_cfg.ll | 51 + llvm/test/Transforms/LoopSimplifyCFG/lcssa.ll | 194 + .../LoopSimplifyCFG/live_block_marking.ll | 62 + .../LoopSimplifyCFG/merge-header.ll | 36 + .../Transforms/LoopSimplifyCFG/mssa_update.ll | 40 + .../phi_with_duplicating_inputs.ll | 41 + .../Transforms/LoopSimplifyCFG/pr39783.ll | 110 + llvm/test/Transforms/LoopSimplifyCFG/scev.ll | 58 + .../LoopSimplifyCFG/update_parents.ll | 119 + .../LoopStrengthReduce/2005-08-15-AddRecIV.ll | 57 + .../2005-08-17-OutOfLoopVariant.ll | 17 + .../2005-09-12-UsesOutOutsideOfLoop.ll | 32 + .../2007-04-23-UseIterator.ll | 71 + .../2008-08-13-CmpStride.ll | 35 + .../LoopStrengthReduce/2008-09-09-Overflow.ll | 52 + ...9-01-13-nonconstant-stride-outside-loop.ll | 39 + .../2009-04-28-no-reduce-mul.ll | 48 + .../2011-07-19-CritEdgeBreakCrash.ll | 52 + .../2011-10-03-CritEdgeMerge.ll | 85 + .../LoopStrengthReduce/2011-10-06-ReusePhi.ll | 57 + .../2011-10-13-SCEVChain.ll | 111 + .../LoopStrengthReduce/2011-10-14-IntPtr.ll | 27 + .../2011-12-19-PostincQuadratic.ll | 39 + .../2012-01-02-nopreheader.ll | 88 + .../2012-01-16-nopreheader.ll | 113 + .../2012-03-15-nopreheader.ll | 155 + .../2012-03-26-constexpr.ll | 49 + .../2012-07-13-ExpandUDiv.ll | 86 + .../2012-07-18-LimitReassociate.ll | 518 ++ .../LoopStrengthReduce/2013-01-05-IndBr.ll | 44 + .../2013-01-14-ReuseCast.ll | 84 + .../LoopStrengthReduce/AArch64/lit.local.cfg | 4 + .../LoopStrengthReduce/AArch64/lsr-memcpy.ll | 33 + .../LoopStrengthReduce/AArch64/lsr-memset.ll | 101 + .../LoopStrengthReduce/AArch64/lsr-reuse.ll | 34 + .../LoopStrengthReduce/AArch64/req-regs.ll | 70 + .../AArch64/small-constant.ll | 116 + .../LoopStrengthReduce/AMDGPU/atomics.ll | 167 + ...fferent-addrspace-addressing-mode-loops.ll | 156 + .../AMDGPU/different-addrspace-crash.ll | 30 + .../LoopStrengthReduce/AMDGPU/lit.local.cfg | 3 + .../AMDGPU/lsr-postinc-pos-addrspace.ll | 131 + .../LoopStrengthReduce/AMDGPU/lsr-void.ll | 37 + .../AMDGPU/preserve-addrspace-assert.ll | 95 + .../ARM/2012-06-15-lsr-noaddrmode.ll | 97 + .../ARM/addrec-is-loop-invariant.ll | 35 + .../LoopStrengthReduce/ARM/complexity.ll | 112 + .../LoopStrengthReduce/ARM/ivchain-ARM.ll | 366 ++ .../LoopStrengthReduce/ARM/lit.local.cfg | 3 + .../LoopStrengthReduce/NVPTX/lit.local.cfg | 2 + .../LoopStrengthReduce/NVPTX/trunc.ll | 45 + .../X86/2008-08-14-ShadowIV.ll | 215 + .../X86/2009-11-10-LSRCrash.ll | 130 + .../X86/2011-07-20-DoubleIV.ll | 47 + .../X86/2011-11-29-postincphi.ll | 36 + .../X86/2011-12-04-loserreg.ll | 93 + .../X86/2012-01-13-phielim.ll | 148 + .../LoopStrengthReduce/X86/bin_power.ll | 264 + .../LoopStrengthReduce/X86/canonical-2.ll | 36 + .../LoopStrengthReduce/X86/canonical.ll | 65 + .../X86/incorrect-offset-scaling.ll | 46 + .../LoopStrengthReduce/X86/ivchain-X86.ll | 576 ++ .../X86/ivchain-stress-X86.ll | 96 + .../LoopStrengthReduce/X86/lit.local.cfg | 3 + .../X86/lsr-expand-quadratic.ll | 58 + .../X86/lsr-filtering-scaledreg.ll | 60 + .../LoopStrengthReduce/X86/lsr-insns-1.ll | 101 + .../LoopStrengthReduce/X86/lsr-insns-2.ll | 58 + .../LoopStrengthReduce/X86/lsr-overflow.ll | 38 + .../LoopStrengthReduce/X86/macro-fuse-cmp.ll | 141 + .../LoopStrengthReduce/X86/nested-loop.ll | 93 + .../X86/no_superflous_induction_vars.ll | 50 + .../LoopStrengthReduce/X86/pr17473.ll | 67 + .../LoopStrengthReduce/X86/pr28719.ll | 47 + .../LoopStrengthReduce/X86/pr40514.ll | 57 + .../LoopStrengthReduce/X86/sibling-loops.ll | 97 + .../addrec-gep-address-space.ll | 88 + .../LoopStrengthReduce/addrec-gep.ll | 82 + .../LoopStrengthReduce/address-space-loop.ll | 56 + .../LoopStrengthReduce/count-to-zero.ll | 45 + .../Transforms/LoopStrengthReduce/dead-phi.ll | 21 + .../LoopStrengthReduce/different-type-ivs.ll | 25 + .../LoopStrengthReduce/dominate-assert.ll | 113 + .../dont-hoist-simple-loop-constants.ll | 23 + .../dont_insert_redundant_ops.ll | 40 + .../LoopStrengthReduce/dont_reduce_bytes.ll | 22 + .../LoopStrengthReduce/dont_reverse.ll | 25 + .../LoopStrengthReduce/ephemeral.ll | 41 + .../exit_compare_live_range.ll | 21 + .../Transforms/LoopStrengthReduce/funclet.ll | 245 + .../hoist-parent-preheader.ll | 32 + .../LoopStrengthReduce/illegal-addr-modes.ll | 122 + .../invariant_value_first.ll | 24 + .../invariant_value_first_arg.ll | 21 + .../Transforms/LoopStrengthReduce/ivchain.ll | 48 + .../LoopStrengthReduce/lsr-comp-time.ll | 1338 ++++ .../LoopStrengthReduce/lsr-overflow.ll | 39 + .../missing-phi-operand-update.ll | 101 + .../LoopStrengthReduce/negative-scale.ll | 28 + .../LoopStrengthReduce/nested-reduce.ll | 52 + .../LoopStrengthReduce/nonintegral.ll | 45 + .../LoopStrengthReduce/nonlinear-postinc.ll | 44 + .../LoopStrengthReduce/ops_after_indvar.ll | 26 + .../phi_node_update_multiple_preds.ll | 28 + .../LoopStrengthReduce/post-inc-icmpzero.ll | 92 + .../LoopStrengthReduce/post-inc-optsize.ll | 43 + .../Transforms/LoopStrengthReduce/pr12018.ll | 39 + .../Transforms/LoopStrengthReduce/pr12048.ll | 38 + .../Transforms/LoopStrengthReduce/pr12691.ll | 37 + .../Transforms/LoopStrengthReduce/pr18165.ll | 88 + .../Transforms/LoopStrengthReduce/pr2537.ll | 21 + .../Transforms/LoopStrengthReduce/pr25541.ll | 48 + .../Transforms/LoopStrengthReduce/pr2570.ll | 287 + .../Transforms/LoopStrengthReduce/pr27056.ll | 51 + .../Transforms/LoopStrengthReduce/pr3086.ll | 29 + .../Transforms/LoopStrengthReduce/pr31627.ll | 58 + .../Transforms/LoopStrengthReduce/pr3399.ll | 32 + .../Transforms/LoopStrengthReduce/pr3571.ll | 27 + .../preserve-gep-loop-variant.ll | 42 + .../LoopStrengthReduce/related_indvars.ll | 27 + .../LoopStrengthReduce/remove_indvar.ll | 24 + .../scaling_factor_cost_crash.ll | 68 + .../scev-after-loopinstsimplify.ll | 43 + .../LoopStrengthReduce/scev-insertpt-bug.ll | 47 + .../LoopStrengthReduce/sext-ind-var.ll | 139 + .../share_code_in_preheader.ll | 27 + .../LoopStrengthReduce/share_ivs.ll | 24 + .../test/Transforms/LoopStrengthReduce/shl.ll | 38 + .../two-combinations-bug.ll | 55 + .../uglygep-address-space.ll | 56 + .../Transforms/LoopStrengthReduce/uglygep.ll | 122 + .../use_postinc_value_outside_loop.ll | 29 + .../var_stride_used_by_compare.ll | 41 + .../LoopStrengthReduce/variable_stride.ll | 21 + .../distribution-remarks-missed.ll | 99 + .../enable_and_isvectorized.ll | 33 + .../LoopTransformWarning/optnone.ll | 50 + .../unrollandjam-remarks-missed.ll | 99 + .../unrolling-remarks-missed.ll | 99 + .../vectorization-remarks-missed.ll | 113 + .../2004-05-13-DontUnrollTooMuch.ll | 14 + .../2005-03-06-BadLoopInfoUpdate.ll | 22 + .../LoopUnroll/2006-08-24-MultiBlockLoop.ll | 16 + .../LoopUnroll/2007-04-16-PhiUpdate.ll | 17 + .../LoopUnroll/2007-05-05-UnrollMiscomp.ll | 36 + .../LoopUnroll/2007-05-09-UnknownTripCount.ll | 18 + .../Transforms/LoopUnroll/2007-11-05-Crash.ll | 295 + .../LoopUnroll/2011-08-08-PhiUpdate.ll | 103 + .../LoopUnroll/2011-08-09-IVSimplify.ll | 41 + .../LoopUnroll/2011-08-09-PhiUpdate.ll | 62 + .../LoopUnroll/2011-10-01-NoopTrunc.ll | 36 + .../2012-04-09-unroll-indirectbr.ll | 40 + .../LoopUnroll/AArch64/falkor-prefetch.ll | 169 + .../full-unroll-trip-count-upper-bound.ll | 43 + .../LoopUnroll/AArch64/lit.local.cfg | 3 + .../Transforms/LoopUnroll/AArch64/partial.ll | 76 + .../LoopUnroll/AArch64/runtime-loop.ll | 39 + .../LoopUnroll/AMDGPU/lit.local.cfg | 3 + .../LoopUnroll/AMDGPU/unroll-barrier.ll | 33 + .../LoopUnroll/AMDGPU/unroll-cost-call.ll | 77 + .../LoopUnroll/AMDGPU/unroll-for-private.ll | 154 + .../Transforms/LoopUnroll/ARM/lit.local.cfg | 3 + .../LoopUnroll/ARM/loop-unrolling.ll | 247 + .../Transforms/LoopUnroll/ARM/multi-blocks.ll | 316 + .../LoopUnroll/Hexagon/lit.local.cfg | 3 + .../LoopUnroll/Hexagon/peel-small-loop.ll | 37 + .../a2-high-cost-trip-count-computation.ll | 27 + .../LoopUnroll/PowerPC/a2-unrolling.ll | 34 + .../LoopUnroll/PowerPC/lit.local.cfg | 3 + .../LoopUnroll/PowerPC/p7-unrolling.ll | 50 + .../PowerPC/p8-unrolling-legalize-vectors.ll | 74 + .../Transforms/LoopUnroll/X86/lit.local.cfg | 3 + llvm/test/Transforms/LoopUnroll/X86/mmx.ll | 24 + .../test/Transforms/LoopUnroll/X86/partial.ll | 130 + .../Transforms/LoopUnroll/X86/store_cost.ll | 104 + llvm/test/Transforms/LoopUnroll/basic.ll | 48 + ...mplete_unroll_profitability_with_assume.ll | 119 + llvm/test/Transforms/LoopUnroll/convergent.ll | 179 + llvm/test/Transforms/LoopUnroll/debug-info.ll | 75 + .../disable-loop-unrolling_forced.ll | 30 + .../LoopUnroll/disable_nonforced.ll | 29 + .../LoopUnroll/disable_nonforced_count.ll | 30 + .../LoopUnroll/disable_nonforced_enable.ll | 30 + .../LoopUnroll/disable_nonforced_full.ll | 32 + llvm/test/Transforms/LoopUnroll/ephemeral.ll | 44 + .../Transforms/LoopUnroll/epilog_const_phi.ll | 65 + llvm/test/Transforms/LoopUnroll/followup.ll | 63 + .../LoopUnroll/full-unroll-bad-cost.ll | 59 + .../LoopUnroll/full-unroll-crashers.ll | 225 + .../LoopUnroll/full-unroll-heuristics-2.ll | 90 + .../LoopUnroll/full-unroll-heuristics-cmp.ll | 79 + .../LoopUnroll/full-unroll-heuristics-dce.ll | 39 + .../LoopUnroll/full-unroll-heuristics-geps.ll | 29 + .../full-unroll-heuristics-phi-prop.ll | 24 + .../LoopUnroll/full-unroll-heuristics.ll | 69 + .../LoopUnroll/full-unroll-keep-first-exit.ll | 208 + .../high-cost-trip-count-computation.ll | 61 + .../ignore-annotation-intrinsic-cost.ll | 133 + .../LoopUnroll/invalidate_right_loop.ll | 51 + .../LoopUnroll/loop-remarks-with-hotness.ll | 28 + .../Transforms/LoopUnroll/loop-remarks.ll | 48 + .../test/Transforms/LoopUnroll/not-rotated.ll | 26 + .../LoopUnroll/partial-unroll-const-bounds.ll | 37 + .../LoopUnroll/peel-loop-conditions.ll | 645 ++ .../LoopUnroll/peel-loop-irreducible.ll | 36 + .../LoopUnroll/peel-loop-negative.ll | 28 + .../LoopUnroll/peel-loop-not-forced.ll | 199 + .../Transforms/LoopUnroll/peel-loop-pgo.ll | 110 + .../LoopUnroll/peel-loop-scev-invalidate.ll | 42 + llvm/test/Transforms/LoopUnroll/peel-loop.ll | 115 + llvm/test/Transforms/LoopUnroll/peel-loop2.ll | 61 + llvm/test/Transforms/LoopUnroll/pr10813.ll | 29 + llvm/test/Transforms/LoopUnroll/pr11361.ll | 42 + llvm/test/Transforms/LoopUnroll/pr14167.ll | 44 + llvm/test/Transforms/LoopUnroll/pr18861.ll | 86 + llvm/test/Transforms/LoopUnroll/pr27157.ll | 53 + llvm/test/Transforms/LoopUnroll/pr28132.ll | 77 + llvm/test/Transforms/LoopUnroll/pr31718.ll | 55 + llvm/test/Transforms/LoopUnroll/pr33437.ll | 43 + .../Transforms/LoopUnroll/rebuild_lcssa.ll | 190 + llvm/test/Transforms/LoopUnroll/revisit.ll | 156 + .../LoopUnroll/runtime-epilog-debuginfo.ll | 128 + llvm/test/Transforms/LoopUnroll/runtime-li.ll | 36 + .../runtime-loop-multiexit-dom-verify.ll | 275 + .../LoopUnroll/runtime-loop-multiple-exits.ll | 646 ++ .../runtime-loop-non-exiting-latch.ll | 27 + .../Transforms/LoopUnroll/runtime-loop.ll | 285 + .../Transforms/LoopUnroll/runtime-loop1.ll | 77 + .../Transforms/LoopUnroll/runtime-loop2.ll | 39 + .../Transforms/LoopUnroll/runtime-loop3.ll | 46 + .../Transforms/LoopUnroll/runtime-loop4.ll | 52 + .../Transforms/LoopUnroll/runtime-loop5.ll | 49 + .../LoopUnroll/runtime-multiexit-heuristic.ll | 94 + .../LoopUnroll/runtime-unroll-remainder.ll | 74 + llvm/test/Transforms/LoopUnroll/scevunroll.ll | 207 + .../LoopUnroll/shifted-tripcount.ll | 28 + .../LoopUnroll/tripcount-overflow.ll | 49 + llvm/test/Transforms/LoopUnroll/unloop.ll | 473 ++ .../Transforms/LoopUnroll/unroll-cleanup.ll | 85 + .../LoopUnroll/unroll-cleanuppad.ll | 40 + .../Transforms/LoopUnroll/unroll-count.ll | 25 + .../LoopUnroll/unroll-heuristics-pgo.ll | 59 + .../LoopUnroll/unroll-loop-invalidation.ll | 107 + .../Transforms/LoopUnroll/unroll-maxcount.ll | 31 + .../LoopUnroll/unroll-opt-attribute.ll | 176 + .../LoopUnroll/unroll-pragmas-disabled.ll | 149 + .../Transforms/LoopUnroll/unroll-pragmas.ll | 372 ++ .../update-loop-info-in-subloops.ll | 36 + .../LoopUnrollAndJam/dependencies.ll | 470 ++ .../Transforms/LoopUnrollAndJam/disable.ll | 741 +++ .../LoopUnrollAndJam/disable_nonforced.ll | 50 + .../disable_nonforced_count.ll | 52 + .../disable_nonforced_enable.ll | 52 + .../Transforms/LoopUnrollAndJam/followup.ll | 66 + .../LoopUnrollAndJam/pragma-explicit.ll | 144 + .../Transforms/LoopUnrollAndJam/pragma.ll | 319 + .../LoopUnrollAndJam/unprofitable.ll | 217 + .../LoopUnrollAndJam/unroll-and-jam.ll | 735 +++ .../LoopUnswitch/2006-06-13-SingleEntryPHI.ll | 36 + .../LoopUnswitch/2006-06-27-DeadSwitchCase.ll | 26 + .../LoopUnswitch/2007-05-09-Unreachable.ll | 29 + .../Transforms/LoopUnswitch/2007-05-09-tl.ll | 96 + .../LoopUnswitch/2007-07-12-ExitDomInfo.ll | 46 + .../LoopUnswitch/2007-07-13-DomInfo.ll | 28 + .../LoopUnswitch/2007-07-18-DomInfo.ll | 67 + .../Transforms/LoopUnswitch/2007-08-01-Dom.ll | 30 + .../LoopUnswitch/2007-08-01-LCSSA.ll | 56 + .../LoopUnswitch/2007-10-04-DomFrontier.ll | 29 + .../LoopUnswitch/2008-06-02-DomInfo.ll | 27 + .../LoopUnswitch/2008-06-17-DomFrontier.ll | 22 + .../LoopUnswitch/2008-11-03-Invariant.ll | 42 + .../LoopUnswitch/2010-11-18-LCSSA.ll | 29 + .../LoopUnswitch/2011-06-02-CritSwitch.ll | 28 + .../LoopUnswitch/2011-09-26-EHCrash.ll | 64 + .../LoopUnswitch/2011-11-18-SimpleSwitch.ll | 95 + .../2011-11-18-TwoSwitches-Threshold.ll | 88 + .../LoopUnswitch/2011-11-18-TwoSwitches.ll | 142 + .../LoopUnswitch/2012-04-02-IndirectBr.ll | 42 + .../2012-04-30-LoopUnswitch-LPad-Crash.ll | 97 + .../Transforms/LoopUnswitch/2012-05-20-Phi.ll | 26 + .../LoopUnswitch/2015-06-17-Metadata.ll | 77 + .../LoopUnswitch/2015-09-18-Addrspace.ll | 29 + .../LoopUnswitch/AMDGPU/divergent-unswitch.ll | 85 + .../LoopUnswitch/AMDGPU/lit.local.cfg | 2 + .../LoopUnswitch/LIV-loop-condtion.ll | 29 + .../test/Transforms/LoopUnswitch/basictest.ll | 319 + .../Transforms/LoopUnswitch/cleanuppad.ll | 45 + .../Transforms/LoopUnswitch/copy-metadata.ll | 24 + llvm/test/Transforms/LoopUnswitch/crash.ll | 67 + .../elseif-non-exponential-behavior.ll | 63 + .../LoopUnswitch/exponential-behavior.ll | 52 + llvm/test/Transforms/LoopUnswitch/guards.ll | 98 + .../Transforms/LoopUnswitch/infinite-loop.ll | 59 + .../LoopUnswitch/invalidate-scev.ll | 34 + llvm/test/Transforms/LoopUnswitch/msan.ll | 154 + llvm/test/Transforms/LoopUnswitch/pr32818.ll | 20 + .../LoopUnswitch/preserve-analyses.ll | 130 + .../LoopUnswitch/simplify-with-nonvalness.ll | 59 + .../LoopUnswitch/trivial-unswitch.ll | 92 + .../LoopUnswitch/unswitch-equality-undef.ll | 122 + .../LoopUnswitch/unswitch-select.ll | 27 + .../LoopVectorize/12-12-11-if-conv.ll | 39 + .../LoopVectorize/2012-10-20-infloop.ll | 71 + .../LoopVectorize/2012-10-22-isconsec.ll | 53 + .../LoopVectorize/2016-07-27-loop-vec.ll | 19 + .../AArch64/aarch64-predication.ll | 79 + .../LoopVectorize/AArch64/aarch64-unroll.ll | 42 + .../AArch64/arbitrary-induction-step.ll | 147 + .../LoopVectorize/AArch64/arm64-unroll.ll | 42 + .../AArch64/backedge-overflow.ll | 166 + .../AArch64/deterministic-type-shrinkage.ll | 54 + .../LoopVectorize/AArch64/gather-cost.ll | 85 + .../LoopVectorize/AArch64/induction-trunc.ll | 30 + .../AArch64/interleaved-vs-scalar.ll | 37 + .../LoopVectorize/AArch64/interleaved_cost.ll | 189 + .../LoopVectorize/AArch64/lit.local.cfg | 5 + .../AArch64/loop-vectorization-factors.ll | 310 + .../AArch64/max-vf-for-interleaved.ll | 56 + .../AArch64/no_vector_instructions.ll | 49 + ...outer_loop_test1_no_explicit_vect_width.ll | 144 + .../LoopVectorize/AArch64/pr31900.ll | 37 + .../LoopVectorize/AArch64/pr33053.ll | 56 + .../LoopVectorize/AArch64/pr36032.ll | 153 + .../AArch64/predication_costs.ll | 231 + .../AArch64/reduction-small-size.ll | 171 + .../LoopVectorize/AArch64/sdiv-pow2.ll | 31 + .../AArch64/smallest-and-widest-types.ll | 33 + .../AArch64/type-shrinkage-insertelt.ll | 47 + .../AMDGPU/divergent-runtime-check.ll | 29 + .../LoopVectorize/AMDGPU/lit.local.cfg | 2 + .../LoopVectorize/AMDGPU/packed-math.ll | 34 + .../AMDGPU/unroll-in-loop-vectorizer.ll | 28 + .../LoopVectorize/ARM/arm-ieee-vectorize.ll | 330 + .../LoopVectorize/ARM/arm-unroll.ll | 71 + .../LoopVectorize/ARM/gather-cost.ll | 88 + .../LoopVectorize/ARM/gcc-examples.ll | 60 + .../LoopVectorize/ARM/interleaved_cost.ll | 147 + .../LoopVectorize/ARM/lit.local.cfg | 3 + .../LoopVectorize/ARM/mul-cast-vect.ll | 114 + .../Transforms/LoopVectorize/ARM/sphinx.ll | 165 + .../LoopVectorize/ARM/vector_cast.ll | 37 + .../LoopVectorize/ARM/width-detect.ll | 52 + .../LoopVectorize/Hexagon/lit.local.cfg | 2 + .../LoopVectorize/Hexagon/minimum-vf.ll | 173 + .../PowerPC/agg-interleave-a2.ll | 40 + .../LoopVectorize/PowerPC/large-loop-rdx.ll | 75 + .../LoopVectorize/PowerPC/lit.local.cfg | 3 + .../LoopVectorize/PowerPC/pr30990.ll | 140 + .../LoopVectorize/PowerPC/small-loop-rdx.ll | 49 + .../PowerPC/stride-vectorization.ll | 36 + .../PowerPC/vectorize-only-for-real.ll | 62 + .../LoopVectorize/PowerPC/vsx-tsvc-s173.ll | 51 + .../LoopVectorize/SystemZ/addressing.ll | 72 + .../SystemZ/branch-for-predicated-block.ll | 38 + .../LoopVectorize/SystemZ/lit.local.cfg | 2 + .../SystemZ/load-scalarization-cost-0.ll | 27 + .../SystemZ/load-scalarization-cost-1.ll | 28 + .../SystemZ/load-store-scalarization-cost.ll | 33 + .../SystemZ/mem-interleaving-costs-02.ll | 149 + .../SystemZ/mem-interleaving-costs.ll | 70 + .../LoopVectorize/SystemZ/pr38110.ll | 50 + .../LoopVectorize/X86/already-vectorized.ll | 46 + .../Transforms/LoopVectorize/X86/assume.ll | 100 + .../test/Transforms/LoopVectorize/X86/avx1.ll | 52 + .../Transforms/LoopVectorize/X86/avx512.ll | 112 + .../X86/consecutive-ptr-cg-bug.ll | 108 + .../X86/consecutive-ptr-uniforms.ll | 67 + .../LoopVectorize/X86/constant-fold.ll | 53 + .../X86/constant-vector-operand.ll | 30 + .../LoopVectorize/X86/conversion-cost.ll | 47 + .../LoopVectorize/X86/cost-model.ll | 82 + .../LoopVectorize/X86/float-induction-x86.ll | 149 + .../LoopVectorize/X86/force-ifcvt.ll | 42 + .../X86/fp32_to_uint32-cost-model.ll | 39 + .../X86/fp64_to_uint32-cost-model.ll | 40 + .../X86/fp_to_sint8-cost-model.ll | 25 + .../Transforms/LoopVectorize/X86/funclet.ll | 45 + .../LoopVectorize/X86/gather-cost.ll | 86 + .../LoopVectorize/X86/gather-vs-interleave.ll | 41 + .../LoopVectorize/X86/gather_scatter.ll | 1754 ++++++ .../LoopVectorize/X86/gcc-examples.ll | 77 + .../illegal-parallel-loop-uniform-write.ll | 240 + .../X86/imprecise-through-phis.ll | 177 + .../LoopVectorize/X86/int128_no_gather.ll | 76 + .../X86/interleaved-accesses-large-gap.ll | 40 + .../LoopVectorize/X86/interleaving.ll | 36 + .../X86/invariant-load-gather.ll | 93 + .../X86/invariant-store-vectorization.ll | 237 + .../LoopVectorize/X86/lit.local.cfg | 3 + .../LoopVectorize/X86/masked_load_store.ll | 3374 ++++++++++ .../LoopVectorize/X86/max-mstore.ll | 46 + .../LoopVectorize/X86/metadata-enable.ll | 2473 ++++++++ .../X86/min-trip-count-switch.ll | 24 + .../LoopVectorize/X86/mul_slm_16bit.ll | 145 + .../Transforms/LoopVectorize/X86/no-vector.ll | 22 + .../Transforms/LoopVectorize/X86/no_fpmath.ll | 109 + .../X86/no_fpmath_with_hotness.ll | 113 + .../Transforms/LoopVectorize/X86/optsize.ll | 198 + ...outer_loop_test1_no_explicit_vect_width.ll | 114 + .../X86/parallel-loops-after-reg2mem.ll | 50 + .../LoopVectorize/X86/parallel-loops.ll | 115 + .../Transforms/LoopVectorize/X86/powof2div.ll | 32 + .../Transforms/LoopVectorize/X86/pr23997.ll | 109 + .../Transforms/LoopVectorize/X86/pr34438.ll | 36 + .../Transforms/LoopVectorize/X86/pr35432.ll | 213 + .../Transforms/LoopVectorize/X86/pr36524.ll | 39 + .../Transforms/LoopVectorize/X86/pr39160.ll | 98 + .../LoopVectorize/X86/propagate-metadata.ll | 25 + .../LoopVectorize/X86/ptr-indvar-crash.ll | 20 + .../Transforms/LoopVectorize/X86/rauw-bug.ll | 33 + .../LoopVectorize/X86/reduction-crash.ll | 35 + .../LoopVectorize/X86/reduction-fastmath.ll | 112 + .../LoopVectorize/X86/reduction-small-size.ll | 80 + .../LoopVectorize/X86/redundant-vf2-cost.ll | 34 + .../LoopVectorize/X86/reg-usage-debug.ll | 134 + .../Transforms/LoopVectorize/X86/reg-usage.ll | 135 + .../LoopVectorize/X86/register-assumption.ll | 32 + .../LoopVectorize/X86/scatter_crash.ll | 114 + .../LoopVectorize/X86/slm-no-vectorize.ll | 49 + .../LoopVectorize/X86/small-size.ll | 408 ++ .../LoopVectorize/X86/strided_load_cost.ll | 54 + .../LoopVectorize/X86/struct-store.ll | 27 + .../LoopVectorize/X86/svml-calls-finite.ll | 187 + .../LoopVectorize/X86/svml-calls.ll | 501 ++ .../Transforms/LoopVectorize/X86/tripcount.ll | 39 + .../X86/uint64_to_fp64-cost-model.ll | 27 + .../LoopVectorize/X86/uniform-phi.ll | 99 + .../LoopVectorize/X86/uniform_load.ll | 47 + .../LoopVectorize/X86/uniformshift.ll | 23 + .../Transforms/LoopVectorize/X86/unroll-pm.ll | 31 + .../LoopVectorize/X86/unroll-small-loops.ll | 102 + .../LoopVectorize/X86/unroll_selection.ll | 71 + .../LoopVectorize/X86/veclib-calls.ll | 632 ++ .../LoopVectorize/X86/vect.omp.force.ll | 87 + .../X86/vect.omp.force.small-tc.ll | 217 + .../X86/vector-scalar-select-cost.ll | 66 + .../LoopVectorize/X86/vector_max_bandwidth.ll | 75 + .../X86/vector_ptr_load_store.ll | 150 + .../X86/vectorization-remarks-loopid-dbg.ll | 74 + .../X86/vectorization-remarks-missed.ll | 313 + .../X86/vectorization-remarks-profitable.ll | 112 + .../X86/vectorization-remarks.ll | 73 + .../X86/vectorize-only-for-real.ll | 39 + .../x86-interleaved-accesses-masked-group.ll | 826 +++ .../LoopVectorize/X86/x86-pr39099.ll | 60 + .../LoopVectorize/X86/x86-predication.ll | 98 + .../X86/x86_fp80-vector-store.ll | 29 + .../LoopVectorize/XCore/lit.local.cfg | 2 + .../XCore/no-vector-registers.ll | 23 + llvm/test/Transforms/LoopVectorize/align.ll | 32 + .../Transforms/LoopVectorize/bsd_regex.ll | 38 + .../LoopVectorize/bzip_reverse_loops.ll | 65 + llvm/test/Transforms/LoopVectorize/calloc.ll | 49 + .../LoopVectorize/cast-induction.ll | 29 + .../LoopVectorize/conditional-assignment.ll | 57 + .../Transforms/LoopVectorize/consec_no_gep.ll | 42 + .../LoopVectorize/consecutive-ptr-uniforms.ll | 490 ++ .../Transforms/LoopVectorize/control-flow.ll | 77 + .../Transforms/LoopVectorize/cpp-new-array.ll | 45 + .../Transforms/LoopVectorize/dbg.value.ll | 77 + .../LoopVectorize/dead_instructions.ll | 42 + .../test/Transforms/LoopVectorize/debugloc.ll | 89 + .../demanded-bits-of-pointer-instruction.ll | 20 + .../diag-missing-instr-debug-loc.ll | 77 + .../LoopVectorize/diag-with-hotness-info-2.ll | 200 + .../LoopVectorize/diag-with-hotness-info.ll | 213 + .../LoopVectorize/disable_nonforced.ll | 29 + .../LoopVectorize/disable_nonforced_enable.ll | 29 + .../Transforms/LoopVectorize/discriminator.ll | 76 + .../test/Transforms/LoopVectorize/ee-crash.ll | 34 + llvm/test/Transforms/LoopVectorize/exact.ll | 23 + .../LoopVectorize/explicit_outer_detection.ll | 236 + .../explicit_outer_nonuniform_inner.ll | 177 + .../explicit_outer_uniform_diverg_branch.ll | 138 + .../LoopVectorize/fcmp-vectorize.ll | 25 + .../LoopVectorize/first-order-recurrence.ll | 574 ++ llvm/test/Transforms/LoopVectorize/flags.ll | 78 + .../LoopVectorize/float-induction.ll | 340 + .../LoopVectorize/float-reduction.ll | 46 + .../test/Transforms/LoopVectorize/followup.ll | 43 + llvm/test/Transforms/LoopVectorize/funcall.ll | 32 + .../Transforms/LoopVectorize/gcc-examples.ll | 685 +++ .../LoopVectorize/gep_with_bitcast.ll | 41 + .../Transforms/LoopVectorize/global_alias.ll | 1077 ++++ .../Transforms/LoopVectorize/hints-trans.ll | 29 + .../Transforms/LoopVectorize/hoist-loads.ll | 70 + .../Transforms/LoopVectorize/i8-induction.ll | 40 + .../Transforms/LoopVectorize/icmp-uniforms.ll | 35 + .../Transforms/LoopVectorize/if-conv-crash.ll | 60 + .../LoopVectorize/if-conversion-edgemasks.ll | 245 + .../LoopVectorize/if-conversion-nest.ll | 118 + .../LoopVectorize/if-conversion-reduction.ll | 37 + .../Transforms/LoopVectorize/if-conversion.ll | 197 + .../LoopVectorize/if-pred-non-void.ll | 277 + .../LoopVectorize/if-pred-not-when-safe.ll | 89 + .../LoopVectorize/if-pred-stores.ll | 178 + .../Transforms/LoopVectorize/if-reduction.ll | 821 +++ .../LoopVectorize/incorrect-dom-info.ll | 142 + .../Transforms/LoopVectorize/increment.ll | 65 + .../LoopVectorize/induction-step.ll | 201 + .../Transforms/LoopVectorize/induction.ll | 896 +++ .../LoopVectorize/induction_plus.ll | 34 + .../Transforms/LoopVectorize/infiniteloop.ll | 34 + .../LoopVectorize/int_sideeffect.ll | 24 + .../LoopVectorize/interleaved-accesses-1.ll | 78 + .../LoopVectorize/interleaved-accesses-2.ll | 58 + .../LoopVectorize/interleaved-accesses-3.ll | 57 + .../interleaved-accesses-alias.ll | 63 + .../interleaved-accesses-masked-group.ll | 222 + .../interleaved-accesses-pred-stores.ll | 165 + .../LoopVectorize/interleaved-accesses.ll | 921 +++ .../interleaved-acess-with-remarks.ll | 43 + .../Transforms/LoopVectorize/intrinsic.ll | 1357 ++++ .../invariant-store-vectorization.ll | 593 ++ .../LoopVectorize/iv_outside_user.ll | 176 + .../Transforms/LoopVectorize/lcssa-crash.ll | 62 + .../LoopVectorize/legal_preheader_check.ll | 27 + .../LoopVectorize/libcall-remark.ll | 52 + .../test/Transforms/LoopVectorize/lifetime.ll | 96 + .../Transforms/LoopVectorize/loop-form.ll | 31 + .../Transforms/LoopVectorize/loop-scalars.ll | 143 + .../LoopVectorize/loop-vect-memdep.ll | 26 + llvm/test/Transforms/LoopVectorize/memdep.ll | 273 + .../LoopVectorize/metadata-unroll.ll | 40 + .../LoopVectorize/metadata-width.ll | 30 + .../test/Transforms/LoopVectorize/metadata.ll | 43 + .../LoopVectorize/middle-block-dbg.ll | 110 + .../test/Transforms/LoopVectorize/miniters.ll | 44 + .../LoopVectorize/minmax_reduction.ll | 885 +++ .../LoopVectorize/multi-use-reduction-bug.ll | 41 + .../LoopVectorize/multiple-address-spaces.ll | 43 + .../multiple-strides-vectorization.ll | 64 + .../LoopVectorize/no-interleave-up-front.ll | 35 + .../LoopVectorize/no_array_bounds.ll | 100 + .../LoopVectorize/no_idiv_reduction.ll | 24 + .../LoopVectorize/no_int_induction.ll | 60 + .../LoopVectorize/no_outside_user.ll | 414 ++ .../Transforms/LoopVectorize/no_switch.ll | 93 + .../no_switch_disable_vectorization.ll | 95 + .../LoopVectorize/noalias-md-licm.ll | 59 + .../Transforms/LoopVectorize/noalias-md.ll | 78 + llvm/test/Transforms/LoopVectorize/nofloat.ll | 28 + .../Transforms/LoopVectorize/non-const-n.ll | 37 + .../Transforms/LoopVectorize/nontemporal.ll | 46 + .../Transforms/LoopVectorize/nsw-crash.ll | 24 + llvm/test/Transforms/LoopVectorize/opt.ll | 27 + llvm/test/Transforms/LoopVectorize/optsize.ll | 102 + .../LoopVectorize/outer_loop_test1.ll | 82 + .../LoopVectorize/outer_loop_test2.ll | 112 + .../Transforms/LoopVectorize/partial-lcssa.ll | 54 + .../test/Transforms/LoopVectorize/phi-cost.ll | 86 + .../test/Transforms/LoopVectorize/phi-hang.ll | 47 + llvm/test/Transforms/LoopVectorize/pr25281.ll | 58 + llvm/test/Transforms/LoopVectorize/pr28541.ll | 71 + .../pr30654-phiscev-sext-trunc.ll | 241 + .../LoopVectorize/pr30806-phi-scev.ll | 66 + llvm/test/Transforms/LoopVectorize/pr30806.ll | 65 + llvm/test/Transforms/LoopVectorize/pr31098.ll | 100 + llvm/test/Transforms/LoopVectorize/pr31190.ll | 63 + llvm/test/Transforms/LoopVectorize/pr32859.ll | 30 + llvm/test/Transforms/LoopVectorize/pr33706.ll | 61 + llvm/test/Transforms/LoopVectorize/pr34681.ll | 122 + llvm/test/Transforms/LoopVectorize/pr35743.ll | 102 + llvm/test/Transforms/LoopVectorize/pr35773.ll | 53 + llvm/test/Transforms/LoopVectorize/pr36311.ll | 49 + llvm/test/Transforms/LoopVectorize/pr36983.ll | 24 + llvm/test/Transforms/LoopVectorize/pr37248.ll | 42 + llvm/test/Transforms/LoopVectorize/pr37515.ll | 20 + llvm/test/Transforms/LoopVectorize/pr38800.ll | 34 + llvm/test/Transforms/LoopVectorize/pr39099.ll | 42 + .../pr39417-optsize-scevchecks.ll | 54 + .../preserve-dbg-loc-and-loop-metadata.ll | 38 + .../Transforms/LoopVectorize/ptr-induction.ll | 34 + .../Transforms/LoopVectorize/ptr_loops.ll | 73 + .../Transforms/LoopVectorize/read-only.ll | 31 + .../LoopVectorize/reduction-small-size.ll | 73 + .../Transforms/LoopVectorize/reduction.ll | 580 ++ .../LoopVectorize/remove_metadata.ll | 32 + .../LoopVectorize/reverse_induction.ll | 152 + .../Transforms/LoopVectorize/reverse_iter.ll | 45 + .../runtime-check-address-space.ll | 221 + .../runtime-check-readonly-address-space.ll | 132 + .../LoopVectorize/runtime-check-readonly.ll | 37 + .../Transforms/LoopVectorize/runtime-check.ll | 179 + .../Transforms/LoopVectorize/runtime-limit.ll | 101 + llvm/test/Transforms/LoopVectorize/safegep.ll | 61 + .../LoopVectorize/same-base-access.ll | 107 + .../Transforms/LoopVectorize/scalar-select.ll | 36 + .../scalar_after_vectorization.ll | 74 + .../LoopVectorize/scev-exitlim-crash.ll | 113 + .../Transforms/LoopVectorize/simple-unroll.ll | 38 + .../LoopVectorize/skip-iterations.ll | 181 + .../Transforms/LoopVectorize/small-loop.ll | 57 + .../LoopVectorize/start-non-zero.ll | 30 + .../LoopVectorize/store-shuffle-bug.ll | 49 + .../Transforms/LoopVectorize/struct_access.ll | 87 + .../Transforms/LoopVectorize/tbaa-nodep.ll | 101 + .../Transforms/LoopVectorize/tripcount.ll | 211 + .../LoopVectorize/undef-inst-bug.ll | 36 + .../unroll-novec-memcheck-metadata.ll | 36 + llvm/test/Transforms/LoopVectorize/unroll.ll | 37 + .../Transforms/LoopVectorize/unroll_novec.ll | 48 + .../LoopVectorize/unsafe-dep-remark.ll | 73 + .../LoopVectorize/unsized-pointee-crash.ll | 23 + .../Transforms/LoopVectorize/value-ptr-bug.ll | 50 + .../LoopVectorize/vect-phiscev-sext-trunc.ll | 211 + .../LoopVectorize/vect.omp.persistence.ll | 36 + .../Transforms/LoopVectorize/vect.stats.ll | 58 + .../Transforms/LoopVectorize/vector-geps.ll | 61 + .../LoopVectorize/vectorize-once.ll | 76 + .../LoopVectorize/version-mem-access.ll | 94 + .../vplan-stress-test-no-explict-vf.ll | 45 + .../LoopVectorize/vplan_hcfg_stress_test.ll | 51 + .../Transforms/LoopVectorize/write-only.ll | 25 + .../LoopVectorize/zero-sized-pointee-crash.ll | 26 + .../LoopVersioning/add-phi-update-users.ll | 65 + llvm/test/Transforms/LoopVersioning/basic.ll | 47 + .../exit-block-dominates-rt-check-block.ll | 38 + .../LoopVersioning/incorrect-phi.ll | 60 + llvm/test/Transforms/LoopVersioning/lcssa.ll | 72 + .../LoopVersioning/loop-invariant-bound.ll | 38 + .../LoopVersioning/noalias-version-twice.ll | 107 + .../test/Transforms/LoopVersioning/noalias.ll | 54 + .../LoopVersioningLICM/loopversioningLICM1.ll | 67 + .../LoopVersioningLICM/loopversioningLICM2.ll | 52 + .../LoopVersioningLICM/loopversioningLICM3.ll | 45 + .../Transforms/LoopVersioningLICM/metadata.ll | 104 + .../Transforms/LowerAtomic/atomic-load.ll | 37 + .../Transforms/LowerAtomic/atomic-swap.ll | 39 + llvm/test/Transforms/LowerAtomic/barrier.ll | 8 + .../LowerExpectIntrinsic/PR33346.ll | 22 + .../Transforms/LowerExpectIntrinsic/basic.ll | 291 + .../LowerExpectIntrinsic/expect_nonboolean.ll | 104 + .../LowerExpectIntrinsic/phi_merge.ll | 356 ++ .../Transforms/LowerExpectIntrinsic/phi_or.ll | 103 + .../LowerExpectIntrinsic/phi_tern.ll | 56 + .../Transforms/LowerGuardIntrinsic/basic.ll | 77 + .../LowerGuardIntrinsic/with-calling-conv.ll | 15 + .../LowerInvoke/2003-12-10-Crash.ll | 25 + .../Transforms/LowerInvoke/lowerinvoke.ll | 26 + .../LowerSwitch/2003-05-01-PHIProblem.ll | 15 + .../LowerSwitch/2003-08-23-EmptySwitch.ll | 9 + .../2004-03-13-SwitchIsDefaultCrash.ll | 19 + .../2014-06-10-SwitchContiguousOpt.ll | 27 + .../2014-06-11-SwitchDefaultUnreachableOpt.ll | 44 + .../LowerSwitch/2014-06-23-PHIlowering.ll | 40 + .../LowerSwitch/delete-default-block-crash.ll | 27 + .../do-not-handle-impossible-values.ll | 895 +++ llvm/test/Transforms/LowerSwitch/feature.ll | 104 + ...old-popular-case-to-unreachable-default.ll | 110 + .../LowerSwitch/phi-in-dead-block.ll | 40 + .../Inputs/blockaddr-import.yaml | 9 + .../Inputs/cfi-direct-call.yaml | 12 + .../Inputs/cfi-direct-call1.yaml | 13 + .../LowerTypeTests/Inputs/export-icall.yaml | 29 + .../LowerTypeTests/Inputs/exported-funcs.yaml | 22 + .../LowerTypeTests/Inputs/import-alias.yaml | 11 + .../LowerTypeTests/Inputs/import-icall.yaml | 20 + .../LowerTypeTests/Inputs/import-unsat.yaml | 11 + .../LowerTypeTests/Inputs/import.yaml | 47 + .../Inputs/use-typeid1-dead.yaml | 7 + .../Inputs/use-typeid1-typeid2.yaml | 6 + .../LowerTypeTests/blockaddr-import.ll | 22 + .../LowerTypeTests/blockaddress-2.ll | 26 + .../Transforms/LowerTypeTests/blockaddress.ll | 27 + .../LowerTypeTests/cfi-direct-call.ll | 60 + .../LowerTypeTests/cfi-direct-call1.ll | 96 + .../Transforms/LowerTypeTests/constant.ll | 33 + .../Transforms/LowerTypeTests/export-alias.ll | 21 + .../LowerTypeTests/export-allones.ll | 182 + .../LowerTypeTests/export-bytearray.ll | 61 + .../LowerTypeTests/export-cross-dso-cfi.ll | 39 + .../Transforms/LowerTypeTests/export-dead.ll | 14 + .../Transforms/LowerTypeTests/export-icall.ll | 91 + .../LowerTypeTests/export-inline.ll | 54 + .../LowerTypeTests/export-nothing.ll | 8 + .../LowerTypeTests/export-single.ll | 17 + .../LowerTypeTests/export-symver.ll | 16 + .../LowerTypeTests/external-global.ll | 14 + .../LowerTypeTests/function-arm-thumb.ll | 47 + .../LowerTypeTests/function-disjoint.ll | 49 + .../Transforms/LowerTypeTests/function-ext.ll | 41 + .../LowerTypeTests/function-weak.ll | 66 + .../Transforms/LowerTypeTests/function.ll | 79 + .../LowerTypeTests/icall-branch-funnel.ll | 46 + .../Transforms/LowerTypeTests/import-alias.ll | 30 + .../Transforms/LowerTypeTests/import-icall.ll | 47 + .../Transforms/LowerTypeTests/import-unsat.ll | 26 + llvm/test/Transforms/LowerTypeTests/import.ll | 193 + llvm/test/Transforms/LowerTypeTests/layout.ll | 27 + .../Transforms/LowerTypeTests/nonstring.ll | 32 + .../test/Transforms/LowerTypeTests/pr25902.ll | 19 + .../test/Transforms/LowerTypeTests/pr37625.ll | 14 + .../test/Transforms/LowerTypeTests/section.ll | 26 + llvm/test/Transforms/LowerTypeTests/simple.ll | 113 + .../Transforms/LowerTypeTests/simplify.ll | 38 + .../Transforms/LowerTypeTests/simplify_phi.ll | 20 + .../LowerTypeTests/single-offset.ll | 37 + .../test/Transforms/LowerTypeTests/unnamed.ll | 18 + llvm/test/Transforms/LowerTypeTests/unsat.ll | 11 + .../LowerWidenableCondition/basic.ll | 44 + .../Transforms/MakeGuardsExplicit/basic.ll | 135 + .../Mem2Reg/2002-03-28-UninitializedVal.ll | 11 + .../2002-05-01-ShouldNotPromoteThisAlloca.ll | 12 + .../Mem2Reg/2003-04-10-DFNotFound.ll | 10 + .../Mem2Reg/2003-04-18-DeadBlockProblem.ll | 16 + .../2003-04-24-MultipleIdenticalSuccessors.ll | 16 + .../Mem2Reg/2003-06-26-IterativePromote.ll | 16 + .../Mem2Reg/2003-10-05-DeadPHIInsertion.ll | 22 + .../Mem2Reg/2005-06-30-ReadBeforeWrite.ll | 47 + .../Transforms/Mem2Reg/2005-11-28-Crash.ll | 62 + .../Mem2Reg/2007-08-27-VolatileLoadsStores.ll | 47 + .../Transforms/Mem2Reg/ConvertDebugInfo.ll | 52 + .../Transforms/Mem2Reg/ConvertDebugInfo2.ll | 67 + .../Mem2Reg/PromoteMemToRegister.ll | 21 + .../Transforms/Mem2Reg/UndefValuesMerge.ll | 13 + llvm/test/Transforms/Mem2Reg/atomic.ll | 12 + llvm/test/Transforms/Mem2Reg/crash.ll | 44 + .../Transforms/Mem2Reg/dbg-addr-inline-dse.ll | 94 + llvm/test/Transforms/Mem2Reg/dbg-addr.ll | 91 + .../Mem2Reg/dbg-inline-scope-for-phi.ll | 110 + .../Transforms/Mem2Reg/debug-alloca-phi-2.ll | 46 + .../Transforms/Mem2Reg/debug-alloca-phi.ll | 46 + .../Transforms/Mem2Reg/debug-alloca-vla-1.ll | 62 + .../Transforms/Mem2Reg/debug-alloca-vla-2.ll | 64 + .../Transforms/Mem2Reg/ignore-lifetime.ll | 26 + llvm/test/Transforms/Mem2Reg/optnone.ll | 21 + llvm/test/Transforms/Mem2Reg/pr24179.ll | 45 + .../pr37632-unreachable-list-of-stores.ll | 20 + .../Mem2Reg/preserve-nonnull-load-metadata.ll | 89 + llvm/test/Transforms/Mem2Reg/undef-order.ll | 53 + .../MemCpyOpt/2008-02-24-MultipleUseofSRet.ll | 36 + .../MemCpyOpt/2008-03-13-ReturnSlotBitcast.ll | 22 + .../2011-06-02-CallSlotOverwritten.ll | 36 + llvm/test/Transforms/MemCpyOpt/align.ll | 37 + llvm/test/Transforms/MemCpyOpt/atomic.ll | 41 + llvm/test/Transforms/MemCpyOpt/callslot_aa.ll | 22 + .../Transforms/MemCpyOpt/callslot_deref.ll | 30 + .../Transforms/MemCpyOpt/callslot_throw.ll | 34 + .../Transforms/MemCpyOpt/capturing-func.ll | 22 + llvm/test/Transforms/MemCpyOpt/crash.ll | 55 + llvm/test/Transforms/MemCpyOpt/fca2memcpy.ll | 129 + llvm/test/Transforms/MemCpyOpt/form-memset.ll | 301 + .../Transforms/MemCpyOpt/invariant.start.ll | 47 + llvm/test/Transforms/MemCpyOpt/lifetime.ll | 25 + .../MemCpyOpt/load-store-to-memcpy.ll | 64 + .../Transforms/MemCpyOpt/loadstore-sret.ll | 25 + .../memcpy-to-memset-with-lifetimes.ll | 55 + .../Transforms/MemCpyOpt/memcpy-to-memset.ll | 89 + .../test/Transforms/MemCpyOpt/memcpy-undef.ll | 46 + llvm/test/Transforms/MemCpyOpt/memcpy.ll | 253 + llvm/test/Transforms/MemCpyOpt/memmove.ll | 40 + .../MemCpyOpt/memset-memcpy-oversized.ll | 213 + .../memset-memcpy-redundant-memset.ll | 168 + .../MemCpyOpt/memset-memcpy-to-2x-memset.ll | 101 + llvm/test/Transforms/MemCpyOpt/nontemporal.ll | 49 + llvm/test/Transforms/MemCpyOpt/pr29105.ll | 39 + .../Transforms/MemCpyOpt/process_store.ll | 39 + .../Transforms/MemCpyOpt/profitable-memset.ll | 20 + llvm/test/Transforms/MemCpyOpt/smaller.ll | 29 + llvm/test/Transforms/MemCpyOpt/sret.ll | 30 + .../test/Transforms/MemCpyOpt/stackrestore.ll | 74 + .../MergeFunc/2011-02-08-RemoveEqual.ll | 276 + .../MergeFunc/2013-01-10-MergeFuncAssert.ll | 36 + .../Transforms/MergeFunc/address-spaces.ll | 35 + llvm/test/Transforms/MergeFunc/alias.ll | 116 + llvm/test/Transforms/MergeFunc/alloca.ll | 61 + .../MergeFunc/apply_function_attributes.ll | 47 + .../MergeFunc/call-and-invoke-with-ranges.ll | 92 + .../MergeFunc/constant-entire-value.ll | 42 + llvm/test/Transforms/MergeFunc/crash.ll | 46 + llvm/test/Transforms/MergeFunc/crash2.ll | 54 + .../MergeFunc/external-before-local.ll | 55 + llvm/test/Transforms/MergeFunc/fold-weak.ll | 47 + llvm/test/Transforms/MergeFunc/functions.ll | 27 + .../Transforms/MergeFunc/gep-base-type.ll | 46 + llvm/test/Transforms/MergeFunc/inline-asm.ll | 53 + .../MergeFunc/inttoptr-address-space.ll | 29 + llvm/test/Transforms/MergeFunc/inttoptr.ll | 56 + .../test/Transforms/MergeFunc/linkonce_odr.ll | 42 + .../merge-block-address-other-function.ll | 49 + .../MergeFunc/merge-block-address.ll | 91 + .../MergeFunc/merge-const-ptr-and-int.ll | 20 + .../MergeFunc/merge-different-vector-types.ll | 18 + .../Transforms/MergeFunc/merge-ptr-and-int.ll | 27 + .../MergeFunc/merge-small-unnamed-addr.ll | 14 + .../MergeFunc/merge-unnamed-addr-bitcast.ll | 30 + .../MergeFunc/merge-unnamed-addr.ll | 18 + .../Transforms/MergeFunc/merge-weak-crash.ll | 47 + .../mergefunc-preserve-debug-info.ll | 223 + .../MergeFunc/mergefunc-struct-return.ll | 40 + ...no-merge-block-address-different-labels.ll | 96 + .../no-merge-block-address-other-function.ll | 61 + .../MergeFunc/no-merge-ptr-different-sizes.ll | 24 + .../no-merge-ptr-int-different-values.ll | 23 + .../MergeFunc/nonzero-address-spaces.ll | 30 + .../Transforms/MergeFunc/phi-check-blocks.ll | 50 + .../Transforms/MergeFunc/phi-speculation1.ll | 30 + .../Transforms/MergeFunc/phi-speculation2.ll | 30 + .../MergeFunc/ptr-int-transitivity-1.ll | 21 + .../MergeFunc/ptr-int-transitivity-2.ll | 25 + .../MergeFunc/ptr-int-transitivity-3.ll | 21 + .../Transforms/MergeFunc/ranges-multiple.ll | 44 + llvm/test/Transforms/MergeFunc/ranges.ll | 43 + .../MergeFunc/self-referential-global.ll | 40 + llvm/test/Transforms/MergeFunc/tailcall.ll | 21 + llvm/test/Transforms/MergeFunc/too-small.ll | 14 + .../MergeFunc/undef-different-types.ll | 21 + .../MergeFunc/unnamed-addr-reprocessing.ll | 35 + llvm/test/Transforms/MergeFunc/va_arg.ll | 93 + .../Transforms/MergeFunc/vector-GEP-crash.ll | 12 + llvm/test/Transforms/MergeFunc/vector.ll | 72 + .../MergeFunc/vectors-and-arrays.ll | 19 + llvm/test/Transforms/MergeFunc/weak-small.ll | 16 + .../MergeICmps/X86/alias-merge-blocks.ll | 64 + llvm/test/Transforms/MergeICmps/X86/atomic.ll | 47 + .../MergeICmps/X86/entry-block-shuffled.ll | 56 + .../MergeICmps/X86/gep-used-outside.ll | 36 + .../MergeICmps/X86/int64-and-ptr.ll | 39 + .../X86/last-block-produce-no-value.ll | 57 + .../Transforms/MergeICmps/X86/lit.local.cfg | 3 + .../X86/multiple-blocks-does-work.ll | 64 + .../MergeICmps/X86/pair-int32-int32.ll | 131 + .../test/Transforms/MergeICmps/X86/pr36557.ll | 100 + .../MergeICmps/X86/split-block-does-work.ll | 113 + .../MergeICmps/X86/tuple-four-int8.ll | 81 + .../MergeICmps/X86/two-complex-bb.ll | 58 + .../Transforms/MergeICmps/X86/volatile.ll | 48 + .../Transforms/MergeICmps/pair-int32-int32.ll | 94 + llvm/test/Transforms/MetaRenamer/main.ll | 15 + .../Transforms/MetaRenamer/metarenamer.ll | 113 + .../test/Transforms/NameAnonGlobals/rename.ll | 34 + .../NaryReassociate/NVPTX/lit.local.cfg | 2 + .../NaryReassociate/NVPTX/nary-gep.ll | 144 + .../NaryReassociate/NVPTX/nary-slsr.ll | 48 + .../Transforms/NaryReassociate/nary-add.ll | 212 + .../Transforms/NaryReassociate/nary-mul.ll | 20 + .../Transforms/NaryReassociate/pr24301.ll | 15 + .../Transforms/NaryReassociate/pr35710.ll | 19 + .../Transforms/NaryReassociate/pr37539.ll | 29 + .../NewGVN/2007-07-25-DominatedLoop.ll | 86 + .../NewGVN/2007-07-25-InfiniteLoop.ll | 15 + .../test/Transforms/NewGVN/2007-07-25-Loop.ll | 15 + .../NewGVN/2007-07-25-NestedLoop.ll | 38 + .../NewGVN/2007-07-25-SinglePredecessor.ll | 29 + .../NewGVN/2007-07-26-InterlockingLoops.ll | 40 + .../NewGVN/2007-07-26-NonRedundant.ll | 16 + .../NewGVN/2007-07-26-PhiErasure.ll | 42 + .../Transforms/NewGVN/2007-07-30-PredIDom.ll | 274 + .../NewGVN/2007-07-31-NoDomInherit.ll | 315 + .../NewGVN/2007-07-31-RedundantPhi.ll | 23 + .../Transforms/NewGVN/2008-02-12-UndefLoad.ll | 22 + .../Transforms/NewGVN/2008-02-13-NewPHI.ll | 22 + .../NewGVN/2008-07-02-Unreachable.ll | 36 + .../NewGVN/2008-12-09-SelfRemove.ll | 38 + .../Transforms/NewGVN/2008-12-12-RLE-Crash.ll | 35 + .../NewGVN/2008-12-14-rle-reanalyze.ll | 18 + .../NewGVN/2008-12-15-CacheVisited.ll | 28 + .../NewGVN/2009-01-21-SortInvalidation.ll | 55 + .../NewGVN/2009-01-22-SortInvalidation.ll | 100 + .../Transforms/NewGVN/2009-03-10-PREOnVoid.ll | 110 + .../NewGVN/2009-07-13-MemDepSortFail.ll | 67 + .../NewGVN/2009-11-12-MemDepMallocBitCast.ll | 15 + .../NewGVN/2010-03-31-RedundantPHIs.ll | 42 + .../Transforms/NewGVN/2010-05-08-OneBit.ll | 67 + .../Transforms/NewGVN/2010-11-13-Simplify.ll | 15 + .../NewGVN/2011-04-27-phioperands.ll | 106 + .../2011-07-07-MatchIntrinsicExtract.ll | 91 + .../Transforms/NewGVN/2011-09-07-TypeIdFor.ll | 81 + .../Transforms/NewGVN/2012-05-22-PreCrash.ll | 33 + .../NewGVN/2016-08-30-MaskedScatterGather.ll | 43 + .../Transforms/NewGVN/MemdepMiscompile.ll | 54 + llvm/test/Transforms/NewGVN/assume-equal.ll | 274 + llvm/test/Transforms/NewGVN/assumes.ll | 26 + .../Transforms/NewGVN/basic-cyclic-opt.ll | 315 + .../Transforms/NewGVN/basic-undef-test.ll | 15 + llvm/test/Transforms/NewGVN/basic.ll | 35 + llvm/test/Transforms/NewGVN/big-endian.ll | 40 + .../test/Transforms/NewGVN/bitcast-of-call.ll | 20 + llvm/test/Transforms/NewGVN/br-identical.ll | 39 + .../Transforms/NewGVN/calloc-load-removal.ll | 25 + llvm/test/Transforms/NewGVN/calls-nonlocal.ll | 78 + llvm/test/Transforms/NewGVN/calls-readonly.ll | 45 + llvm/test/Transforms/NewGVN/commute.ll | 23 + llvm/test/Transforms/NewGVN/completeness.ll | 605 ++ llvm/test/Transforms/NewGVN/cond_br.ll | 55 + llvm/test/Transforms/NewGVN/cond_br2.ll | 141 + llvm/test/Transforms/NewGVN/condprop-xfail.ll | 123 + llvm/test/Transforms/NewGVN/condprop.ll | 252 + llvm/test/Transforms/NewGVN/crash-no-aa.ll | 15 + llvm/test/Transforms/NewGVN/crash.ll | 201 + .../Transforms/NewGVN/cyclic-phi-handling.ll | 37 + .../Transforms/NewGVN/dbg-redundant-load.ll | 52 + llvm/test/Transforms/NewGVN/deadstore.ll | 79 + llvm/test/Transforms/NewGVN/debugloc.ll | 78 + llvm/test/Transforms/NewGVN/edge.ll | 170 + .../NewGVN/eliminate-callsite-inline.ll | 18 + .../Transforms/NewGVN/eliminate-ssacopy.ll | 81 + llvm/test/Transforms/NewGVN/equivalent-phi.ll | 68 + llvm/test/Transforms/NewGVN/fence.ll | 90 + llvm/test/Transforms/NewGVN/flags-simplify.ll | 100 + llvm/test/Transforms/NewGVN/flags.ll | 18 + .../test/Transforms/NewGVN/fold-const-expr.ll | 98 + llvm/test/Transforms/NewGVN/fpmath.ll | 45 + llvm/test/Transforms/NewGVN/funclet.ll | 44 + llvm/test/Transforms/NewGVN/int_sideeffect.ll | 27 + .../test/Transforms/NewGVN/invariant.group.ll | 460 ++ .../test/Transforms/NewGVN/invariant.start.ll | 59 + .../test/Transforms/NewGVN/lifetime-simple.ll | 20 + .../Transforms/NewGVN/load-constant-mem.ll | 21 + .../load-from-unreachable-predecessor.ll | 20 + llvm/test/Transforms/NewGVN/loadforward.ll | 32 + .../Transforms/NewGVN/malloc-load-removal.ll | 56 + .../test/Transforms/NewGVN/memory-handling.ll | 195 + .../Transforms/NewGVN/metadata-nonnull.ll | 178 + .../Transforms/NewGVN/metadata-simplify.ll | 160 + .../NewGVN/no_speculative_loads_with_asan.ll | 81 + llvm/test/Transforms/NewGVN/noalias.ll | 43 + .../NewGVN/non-integral-pointers.ll | 39 + .../Transforms/NewGVN/non-local-offset.ll | 59 + .../Transforms/NewGVN/nonescaping-malloc.ll | 112 + .../Transforms/NewGVN/null-aliases-nothing.ll | 20 + llvm/test/Transforms/NewGVN/opt-remarks.ll | 113 + .../test/Transforms/NewGVN/pair_jumpthread.ll | 120 + .../Transforms/NewGVN/phi-edge-handling.ll | 60 + .../NewGVN/phi-of-ops-move-block.ll | 107 + .../NewGVN/phi-translate-partial-alias.ll | 27 + llvm/test/Transforms/NewGVN/pr10820.ll | 19 + llvm/test/Transforms/NewGVN/pr12979.ll | 93 + llvm/test/Transforms/NewGVN/pr14166.ll | 26 + llvm/test/Transforms/NewGVN/pr17732.ll | 29 + llvm/test/Transforms/NewGVN/pr17852.ll | 66 + llvm/test/Transforms/NewGVN/pr24397.ll | 18 + llvm/test/Transforms/NewGVN/pr24426.ll | 18 + llvm/test/Transforms/NewGVN/pr25440.ll | 108 + llvm/test/Transforms/NewGVN/pr28562.ll | 9 + llvm/test/Transforms/NewGVN/pr31472.ll | 34 + llvm/test/Transforms/NewGVN/pr31483.ll | 106 + llvm/test/Transforms/NewGVN/pr31491.ll | 30 + llvm/test/Transforms/NewGVN/pr31501.ll | 136 + llvm/test/Transforms/NewGVN/pr31573.ll | 42 + llvm/test/Transforms/NewGVN/pr31594.ll | 122 + llvm/test/Transforms/NewGVN/pr31613.ll | 135 + llvm/test/Transforms/NewGVN/pr31682.ll | 41 + llvm/test/Transforms/NewGVN/pr31758.ll | 34 + llvm/test/Transforms/NewGVN/pr32403.ll | 65 + llvm/test/Transforms/NewGVN/pr32607.ll | 33 + llvm/test/Transforms/NewGVN/pr32836.ll | 45 + llvm/test/Transforms/NewGVN/pr32838.ll | 157 + llvm/test/Transforms/NewGVN/pr32845.ll | 64 + llvm/test/Transforms/NewGVN/pr32852.ll | 24 + llvm/test/Transforms/NewGVN/pr32897.ll | 25 + llvm/test/Transforms/NewGVN/pr32934.ll | 68 + llvm/test/Transforms/NewGVN/pr32945.ll | 24 + llvm/test/Transforms/NewGVN/pr32952.ll | 42 + llvm/test/Transforms/NewGVN/pr33014.ll | 54 + llvm/test/Transforms/NewGVN/pr33086.ll | 59 + llvm/test/Transforms/NewGVN/pr33116.ll | 39 + llvm/test/Transforms/NewGVN/pr33185.ll | 120 + llvm/test/Transforms/NewGVN/pr33187.ll | 148 + llvm/test/Transforms/NewGVN/pr33196.ll | 72 + llvm/test/Transforms/NewGVN/pr33204.ll | 77 + llvm/test/Transforms/NewGVN/pr33305.ll | 185 + llvm/test/Transforms/NewGVN/pr33367.ll | 137 + llvm/test/Transforms/NewGVN/pr33432.ll | 30 + llvm/test/Transforms/NewGVN/pr33461.ll | 36 + llvm/test/Transforms/NewGVN/pr33720.ll | 91 + llvm/test/Transforms/NewGVN/pr34135.ll | 44 + llvm/test/Transforms/NewGVN/pr34430.ll | 48 + llvm/test/Transforms/NewGVN/pr34452.ll | 49 + llvm/test/Transforms/NewGVN/pr35074.ll | 62 + llvm/test/Transforms/NewGVN/pr35125.ll | 70 + llvm/test/Transforms/NewGVN/pre-compare.ll | 68 + llvm/test/Transforms/NewGVN/pre-new-inst.ll | 30 + llvm/test/Transforms/NewGVN/predicates.ll | 111 + .../Transforms/NewGVN/propagate-ir-flags.ll | 28 + llvm/test/Transforms/NewGVN/range.ll | 100 + llvm/test/Transforms/NewGVN/readattrs.ll | 17 + llvm/test/Transforms/NewGVN/refine-stores.ll | 189 + llvm/test/Transforms/NewGVN/rle-must-alias.ll | 48 + .../Transforms/NewGVN/rle-no-phi-translate.ll | 28 + llvm/test/Transforms/NewGVN/rle-nonlocal.ll | 40 + llvm/test/Transforms/NewGVN/rle.ll | 59 + llvm/test/Transforms/NewGVN/simp-to-self.ll | 27 + .../test/Transforms/NewGVN/stale-loop-info.ll | 50 + llvm/test/Transforms/NewGVN/storeoverstore.ll | 90 + llvm/test/Transforms/NewGVN/tbaa.ll | 148 + .../NewGVN/unreachable_block_infinite_loop.ll | 43 + .../Transforms/NewGVN/verify-memoryphi.ll | 29 + .../Transforms/NewGVN/volatile-nonvolatile.ll | 61 + llvm/test/Transforms/ObjCARC/allocas.ll | 500 ++ llvm/test/Transforms/ObjCARC/apelim.ll | 55 + llvm/test/Transforms/ObjCARC/basic.ll | 3074 +++++++++ llvm/test/Transforms/ObjCARC/cfg-hazards.ll | 435 ++ .../ObjCARC/clang-arc-use-barrier.ll | 45 + llvm/test/Transforms/ObjCARC/comdat-ipo.ll | 53 + .../ObjCARC/contract-catchswitch.ll | 81 + .../ObjCARC/contract-end-of-use-list.ll | 30 + .../ObjCARC/contract-marker-funclet.ll | 62 + .../Transforms/ObjCARC/contract-marker.ll | 45 + .../ObjCARC/contract-replace-arg-use.ll | 46 + .../ObjCARC/contract-storestrong-funclet.ll | 37 + .../ObjCARC/contract-storestrong-ivar.ll | 31 + .../ObjCARC/contract-storestrong.ll | 261 + .../Transforms/ObjCARC/contract-testcases.ll | 95 + llvm/test/Transforms/ObjCARC/contract.ll | 232 + llvm/test/Transforms/ObjCARC/empty-block.ll | 59 + ...e-that-exception-unwind-path-is-visited.ll | 171 + llvm/test/Transforms/ObjCARC/escape.ll | 134 + llvm/test/Transforms/ObjCARC/expand.ll | 94 + llvm/test/Transforms/ObjCARC/funclet.ll | 112 + llvm/test/Transforms/ObjCARC/gvn.ll | 41 + .../ObjCARC/intrinsic-use-isolated.ll | 16 + llvm/test/Transforms/ObjCARC/intrinsic-use.ll | 113 + llvm/test/Transforms/ObjCARC/invoke-2.ll | 57 + llvm/test/Transforms/ObjCARC/invoke.ll | 224 + .../move-and-form-retain-autorelease.ll | 223 + .../ObjCARC/move-and-merge-autorelease.ll | 108 + llvm/test/Transforms/ObjCARC/nested.ll | 825 +++ .../Transforms/ObjCARC/opt-catchswitch.ll | 54 + llvm/test/Transforms/ObjCARC/path-overflow.ll | 2193 +++++++ llvm/test/Transforms/ObjCARC/pointer-types.ll | 31 + llvm/test/Transforms/ObjCARC/post-inlining.ll | 48 + llvm/test/Transforms/ObjCARC/pr12270.ll | 21 + llvm/test/Transforms/ObjCARC/provenance.ll | 52 + .../ObjCARC/retain-block-side-effects.ll | 42 + .../Transforms/ObjCARC/retain-not-declared.ll | 69 + llvm/test/Transforms/ObjCARC/rle-s2l.ll | 138 + llvm/test/Transforms/ObjCARC/rv.ll | 392 ++ .../test/Transforms/ObjCARC/split-backedge.ll | 50 + .../tail-call-invariant-enforcement.ll | 108 + .../Transforms/ObjCARC/unsafe-claim-rv.ll | 47 + llvm/test/Transforms/ObjCARC/weak-contract.ll | 14 + llvm/test/Transforms/ObjCARC/weak-copies.ll | 89 + llvm/test/Transforms/ObjCARC/weak-dce.ll | 46 + llvm/test/Transforms/ObjCARC/weak.ll | 57 + .../PGOProfile/Inputs/PR28219.proftext | 10 + .../PGOProfile/Inputs/branch1.proftext | 8 + .../Inputs/branch1_large_count.proftext | 8 + .../PGOProfile/Inputs/branch2.proftext | 8 + .../PGOProfile/Inputs/criticaledge.proftext | 19 + .../PGOProfile/Inputs/cspgo.proftext | 151 + .../PGOProfile/Inputs/diag.proftext | 7 + .../PGOProfile/Inputs/diag_FE.proftext | 5 + .../PGOProfile/Inputs/func_entry.proftext | 17 + .../PGOProfile/Inputs/indirect_call.proftext | 43 + .../PGOProfile/Inputs/indirectbr.proftext | 12 + .../PGOProfile/Inputs/irreducible.proftext | 29 + .../PGOProfile/Inputs/landingpad.proftext | 16 + .../Inputs/large_count_remarks.proftext | 8 + .../PGOProfile/Inputs/loop1.proftext | 8 + .../PGOProfile/Inputs/loop2.proftext | 9 + .../Inputs/memop_size_annotation.proftext | 27 + .../Inputs/multiple_hash_profile.proftext | 36 + .../PGOProfile/Inputs/noreturncall.proftext | 11 + .../Transforms/PGOProfile/Inputs/remap.map | 8 + .../PGOProfile/Inputs/remap.proftext | 8 + .../PGOProfile/Inputs/select1.proftext | 8 + .../PGOProfile/Inputs/select2.proftext | 11 + .../Inputs/select_hash_conflict.proftext | 10 + .../PGOProfile/Inputs/switch.proftext | 10 + .../PGOProfile/Inputs/thinlto_cs.proftext | 72 + .../Inputs/thinlto_cspgo_bar_gen.ll | 74 + .../Inputs/thinlto_cspgo_bar_use.ll | 70 + .../Inputs/thinlto_indirect_call_promotion.ll | 16 + .../Inputs/thinlto_samplepgo_icp.ll | 27 + .../Inputs/thinlto_samplepgo_icp2a.ll | 21 + .../Inputs/thinlto_samplepgo_icp2b.ll | 28 + .../Inputs/thinlto_samplepgo_icp3.ll | 31 + .../PGOProfile/Inputs/unreachable_bb.proftext | 9 + llvm/test/Transforms/PGOProfile/PR28219.ll | 12 + .../Transforms/PGOProfile/X86/lit.local.cfg | 3 + llvm/test/Transforms/PGOProfile/X86/macho.ll | 10 + llvm/test/Transforms/PGOProfile/branch1.ll | 62 + llvm/test/Transforms/PGOProfile/branch2.ll | 41 + llvm/test/Transforms/PGOProfile/chr.ll | 1912 ++++++ .../Transforms/PGOProfile/comdat_internal.ll | 26 + .../Transforms/PGOProfile/comdat_rename.ll | 52 + .../Transforms/PGOProfile/counter_promo.ll | 68 + .../PGOProfile/counter_promo_exit_merge.ll | 74 + .../PGOProfile/counter_promo_mexits.ll | 80 + .../PGOProfile/counter_promo_nest.ll | 165 + .../Transforms/PGOProfile/criticaledge.ll | 112 + .../PGOProfile/cspgo_profile_summary.ll | 155 + .../Transforms/PGOProfile/diag_FE_profile.ll | 13 + .../Transforms/PGOProfile/diag_mismatch.ll | 13 + .../PGOProfile/diag_no_funcprofdata.ll | 17 + .../Transforms/PGOProfile/diag_no_profile.ll | 10 + .../PGOProfile/do-not-instrument.ll | 28 + llvm/test/Transforms/PGOProfile/func_entry.ll | 29 + .../PGOProfile/icp_covariant_call_return.ll | 44 + .../PGOProfile/icp_covariant_invoke_return.ll | 112 + llvm/test/Transforms/PGOProfile/icp_invoke.ll | 106 + .../Transforms/PGOProfile/icp_invoke_nouse.ll | 68 + .../Transforms/PGOProfile/icp_mismatch_msg.ll | 40 + llvm/test/Transforms/PGOProfile/icp_sample.ll | 44 + llvm/test/Transforms/PGOProfile/icp_vararg.ll | 33 + .../PGOProfile/indirect_call_annotation.ll | 36 + .../PGOProfile/indirect_call_profile.ll | 71 + .../PGOProfile/indirect_call_promotion.ll | 65 + .../PGOProfile/indirect_call_promotion_vla.ll | 28 + llvm/test/Transforms/PGOProfile/indirectbr.ll | 50 + .../Transforms/PGOProfile/infinite_loop.ll | 21 + .../PGOProfile/infinite_loop_gen.ll | 17 + .../test/Transforms/PGOProfile/irreducible.ll | 139 + llvm/test/Transforms/PGOProfile/landingpad.ll | 129 + .../PGOProfile/large_count_remarks.ll | 22 + llvm/test/Transforms/PGOProfile/loop1.ll | 47 + llvm/test/Transforms/PGOProfile/loop2.ll | 75 + llvm/test/Transforms/PGOProfile/memcpy.ll | 35 + .../test/Transforms/PGOProfile/memop_clone.ll | 27 + .../PGOProfile/memop_size_annotation.ll | 59 + .../PGOProfile/memop_size_from_strlen.ll | 14 + .../Transforms/PGOProfile/memop_size_opt.ll | 154 + .../PGOProfile/memop_size_opt_zero.ll | 19 + .../PGOProfile/multiple_hash_profile.ll | 36 + .../Transforms/PGOProfile/noreturncall.ll | 45 + llvm/test/Transforms/PGOProfile/preinline.ll | 23 + llvm/test/Transforms/PGOProfile/remap.ll | 28 + llvm/test/Transforms/PGOProfile/select1.ll | 34 + llvm/test/Transforms/PGOProfile/select2.ll | 37 + .../PGOProfile/select_hash_conflict.ll | 97 + llvm/test/Transforms/PGOProfile/single_bb.ll | 15 + .../split-indirectbr-critical-edges.ll | 39 + .../PGOProfile/statics_counter_naming.ll | 16 + llvm/test/Transforms/PGOProfile/switch.ll | 51 + .../PGOProfile/thinlto_cspgo_gen.ll | 88 + .../PGOProfile/thinlto_cspgo_use.ll | 82 + .../thinlto_indirect_call_promotion.ll | 39 + .../PGOProfile/thinlto_samplepgo_icp.ll | 63 + .../PGOProfile/thinlto_samplepgo_icp2.ll | 78 + .../PGOProfile/thinlto_samplepgo_icp3.ll | 64 + .../thinlto_samplepgo_icp_droppeddead.ll | 71 + .../Transforms/PGOProfile/unreachable_bb.ll | 23 + .../X86/good-prototype.ll | 23 + .../PartiallyInlineLibCalls/X86/lit.local.cfg | 2 + .../PartiallyInlineLibCalls/bad-prototype.ll | 23 + .../PartiallyInlineLibCalls/nobuiltin.ll | 12 + .../2010-03-22-empty-baseclass.ll | 162 + llvm/test/Transforms/PhaseOrdering/PR6627.ll | 93 + llvm/test/Transforms/PhaseOrdering/basic.ll | 51 + .../PhaseOrdering/bitfield-bittests.ll | 130 + llvm/test/Transforms/PhaseOrdering/gdce.ll | 106 + .../PhaseOrdering/globalaa-retained.ll | 66 + llvm/test/Transforms/PhaseOrdering/rotate.ll | 38 + .../PhaseOrdering/scev-custom-dl.ll | 67 + llvm/test/Transforms/PhaseOrdering/scev.ll | 64 + .../PhaseOrdering/simplifycfg-options.ll | 104 + llvm/test/Transforms/PlaceSafepoints/basic.ll | 77 + .../PlaceSafepoints/call-in-loop.ll | 30 + .../PlaceSafepoints/finite-loops.ll | 143 + .../Transforms/PlaceSafepoints/libcall.ll | 37 + .../test/Transforms/PlaceSafepoints/memset.ll | 20 + .../PlaceSafepoints/no-statepoints.ll | 23 + .../PlaceSafepoints/split-backedge.ll | 46 + .../PlaceSafepoints/statepoint-coreclr.ll | 29 + .../PlaceSafepoints/statepoint-frameescape.ll | 29 + .../PreISelIntrinsicLowering/load-relative.ll | 27 + .../PreISelIntrinsicLowering/objc-arc.ll | 312 + .../Transforms/PruneEH/2008-06-02-Weak.ll | 20 + llvm/test/Transforms/PruneEH/ipo-nounwind.ll | 44 + llvm/test/Transforms/PruneEH/looptest.ll | 44 + llvm/test/Transforms/PruneEH/musttail.ll | 15 + .../Transforms/PruneEH/operand-bundles.ll | 27 + llvm/test/Transforms/PruneEH/pr23971.ll | 22 + llvm/test/Transforms/PruneEH/pr26263.ll | 70 + llvm/test/Transforms/PruneEH/recursivetest.ll | 30 + llvm/test/Transforms/PruneEH/seh-nounwind.ll | 32 + .../Transforms/PruneEH/simplenoreturntest.ll | 13 + llvm/test/Transforms/PruneEH/simpletest.ll | 26 + .../2002-05-15-AgressiveSubMove.ll | 10 + .../Reassociate/2002-05-15-MissedTree.ll | 11 + .../Reassociate/2002-05-15-SubReassociate.ll | 31 + .../2002-07-09-DominanceProblem.ll | 10 + .../Reassociate/2003-08-12-InfiniteLoop.ll | 9 + .../2005-09-01-ArrayOutOfBounds.ll | 24 + .../2006-04-27-ReassociateVector.ll | 12 + .../Reassociate/2011-01-26-UseAfterFree.ll | 33 + .../Reassociate/2012-05-08-UndefLeak.ll | 85 + .../Reassociate/2012-06-08-InfiniteLoop.ll | 21 + .../test/Transforms/Reassociate/absorption.ll | 27 + .../Reassociate/add_across_block_crash.ll | 30 + llvm/test/Transforms/Reassociate/basictest.ll | 297 + .../Transforms/Reassociate/binop-identity.ll | 71 + .../Reassociate/canonicalize-neg-const.ll | 185 + llvm/test/Transforms/Reassociate/commute.ll | 19 + llvm/test/Transforms/Reassociate/crash.ll | 174 + llvm/test/Transforms/Reassociate/crash2.ll | 28 + llvm/test/Transforms/Reassociate/deadcode.ll | 37 + .../Reassociate/erase_inst_made_change.ll | 29 + .../Transforms/Reassociate/factorize-again.ll | 45 + .../Reassociate/fast-AgressiveSubMove.ll | 40 + .../Reassociate/fast-ArrayOutOfBounds.ll | 65 + .../Transforms/Reassociate/fast-MissedTree.ll | 39 + .../Reassociate/fast-ReassociateVector.ll | 400 ++ .../Reassociate/fast-SubReassociate.ll | 119 + .../Transforms/Reassociate/fast-basictest.ll | 606 ++ .../Transforms/Reassociate/fast-fp-commute.ll | 46 + .../Transforms/Reassociate/fast-mightymul.ll | 35 + .../Transforms/Reassociate/fast-multistep.ll | 35 + .../test/Transforms/Reassociate/fp-commute.ll | 19 + llvm/test/Transforms/Reassociate/fp-expr.ll | 39 + .../Transforms/Reassociate/infloop-deadphi.ll | 28 + llvm/test/Transforms/Reassociate/inverses.ll | 62 + .../Transforms/Reassociate/keep-debug-loc.ll | 48 + .../Transforms/Reassociate/long-chains.ll | 37 + llvm/test/Transforms/Reassociate/looptest.ll | 52 + .../Transforms/Reassociate/matching-binops.ll | 359 ++ llvm/test/Transforms/Reassociate/mightymul.ll | 35 + llvm/test/Transforms/Reassociate/min_int.ll | 13 + .../Reassociate/mixed-fast-nonfast-fp.ll | 42 + llvm/test/Transforms/Reassociate/mulfactor.ll | 128 + llvm/test/Transforms/Reassociate/multistep.ll | 35 + llvm/test/Transforms/Reassociate/negation.ll | 46 + llvm/test/Transforms/Reassociate/negation1.ll | 16 + llvm/test/Transforms/Reassociate/no-op.ll | 38 + .../Transforms/Reassociate/optional-flags.ll | 29 + llvm/test/Transforms/Reassociate/otherops.ll | 42 + .../pointer-collision-non-determinism.ll | 107 + llvm/test/Transforms/Reassociate/pr12245.ll | 46 + llvm/test/Transforms/Reassociate/pr21205.ll | 21 + llvm/test/Transforms/Reassociate/pr28367.ll | 28 + .../Transforms/Reassociate/propagate-flags.ll | 13 + .../Reassociate/reassoc-intermediate-fnegs.ll | 37 + .../Reassociate/reassociate-deadinst.ll | 16 + .../reassociate_dbgvalue_discard.ll | 79 + llvm/test/Transforms/Reassociate/repeats.ll | 252 + llvm/test/Transforms/Reassociate/secondary.ll | 24 + .../Transforms/Reassociate/shift-factor.ll | 16 + llvm/test/Transforms/Reassociate/shifttest.ll | 12 + llvm/test/Transforms/Reassociate/subtest.ll | 28 + .../Transforms/Reassociate/vaarg_movable.ll | 28 + .../test/Transforms/Reassociate/wrap-flags.ll | 45 + .../Transforms/Reassociate/xor_reassoc.ll | 294 + llvm/test/Transforms/Reg2Mem/crash.ll | 88 + .../base-pointers-1.ll | 26 + .../base-pointers-10.ll | 36 + .../base-pointers-11.ll | 25 + .../base-pointers-12.ll | 21 + .../base-pointers-13.ll | 20 + .../base-pointers-2.ll | 20 + .../base-pointers-3.ll | 20 + .../base-pointers-4.ll | 45 + .../base-pointers-5.ll | 29 + .../base-pointers-6.ll | 38 + .../base-pointers-7.ll | 46 + .../base-pointers-8.ll | 38 + .../base-pointers-9.ll | 21 + .../RewriteStatepointsForGC/base-pointers.ll | 155 + .../RewriteStatepointsForGC/base-vector.ll | 279 + .../RewriteStatepointsForGC/basic.ll | 74 + .../RewriteStatepointsForGC/basics.ll | 89 + .../RewriteStatepointsForGC/call-gc-result.ll | 39 + .../check_traversal_order.ll | 38 + .../RewriteStatepointsForGC/codegen-cond.ll | 82 + .../RewriteStatepointsForGC/constants.ll | 264 + .../deopt-intrinsic-cconv.ll | 17 + .../deopt-intrinsic.ll | 36 + .../deopt-lowering-attrs.ll | 35 + .../RewriteStatepointsForGC/deref-pointers.ll | 126 + .../drop-invalid-metadata.ll | 141 + .../gc-relocate-creation.ll | 23 + .../RewriteStatepointsForGC/invokes.ll | 138 + .../RewriteStatepointsForGC/leaf-function.ll | 34 + .../RewriteStatepointsForGC/libcall.ll | 15 + .../live-vector-nosplit.ll | 119 + .../liveness-basics.ll | 166 + .../patchable-statepoints.ll | 45 + .../RewriteStatepointsForGC/preprocess.ll | 63 + .../relocate-invoke-result.ll | 33 + .../RewriteStatepointsForGC/relocation.ll | 286 + .../rematerialize-derived-pointers.ll | 331 + .../RewriteStatepointsForGC/rewrite-invoke.ll | 33 + .../scalar-base-vector.ll | 143 + .../statepoint-attrs.ll | 17 + .../statepoint-calling-conventions.ll | 43 + .../statepoint-coreclr.ll | 32 + .../statepoint-format.ll | 43 + .../two-invokes-one-landingpad.ll | 34 + .../unreachable-regression.ll | 34 + .../RewriteStatepointsForGC/vector-bitcast.ll | 29 + .../SCCP/2002-05-02-MissSecondInst.ll | 8 + .../SCCP/2002-05-20-MissedIncomingValue.ll | 19 + .../SCCP/2002-05-21-InvalidSimplify.ll | 33 + .../SCCP/2002-08-30-GetElementPtrTest.ll | 9 + .../SCCP/2003-06-24-OverdefinedPHIValue.ll | 30 + .../SCCP/2003-08-26-InvokeHandling.ll | 23 + .../Transforms/SCCP/2004-11-16-DeadInvoke.ll | 18 + .../SCCP/2004-12-10-UndefBranchBug.ll | 12 + .../SCCP/2006-10-23-IPSCCP-Crash.ll | 103 + .../Transforms/SCCP/2006-12-04-PackedType.ll | 140 + .../Transforms/SCCP/2006-12-19-UndefBug.ll | 8 + .../Transforms/SCCP/2007-05-16-InvokeCrash.ll | 45 + .../SCCP/2008-01-27-UndefCorrelate.ll | 36 + .../SCCP/2008-04-22-multiple-ret-sccp.ll | 11 + .../SCCP/2008-05-23-UndefCallFold.ll | 14 + .../SCCP/2009-01-14-IPSCCP-Invoke.ll | 26 + .../SCCP/2009-05-27-VectorOperandZero.ll | 10 + llvm/test/Transforms/SCCP/apint-array.ll | 23 + llvm/test/Transforms/SCCP/apint-basictest.ll | 16 + llvm/test/Transforms/SCCP/apint-basictest2.ll | 17 + llvm/test/Transforms/SCCP/apint-basictest3.ll | 23 + llvm/test/Transforms/SCCP/apint-basictest4.ll | 25 + llvm/test/Transforms/SCCP/apint-bigarray.ll | 23 + llvm/test/Transforms/SCCP/apint-bigint.ll | 9 + llvm/test/Transforms/SCCP/apint-bigint2.ll | 40 + llvm/test/Transforms/SCCP/apint-ipsccp1.ll | 24 + llvm/test/Transforms/SCCP/apint-ipsccp2.ll | 19 + llvm/test/Transforms/SCCP/apint-ipsccp3.ll | 23 + llvm/test/Transforms/SCCP/apint-ipsccp4.ll | 49 + llvm/test/Transforms/SCCP/apint-load.ll | 36 + llvm/test/Transforms/SCCP/apint-phi.ll | 19 + llvm/test/Transforms/SCCP/apint-select.ll | 21 + .../test/Transforms/SCCP/atomic-load-store.ll | 30 + llvm/test/Transforms/SCCP/atomic.ll | 9 + llvm/test/Transforms/SCCP/bitcast.ll | 9 + llvm/test/Transforms/SCCP/calltest.ll | 31 + llvm/test/Transforms/SCCP/comdat-ipo.ll | 28 + llvm/test/Transforms/SCCP/constant-struct.ll | 72 + llvm/test/Transforms/SCCP/crash.ll | 34 + .../Transforms/SCCP/definite-initializer.ll | 11 + llvm/test/Transforms/SCCP/dont-zap-return.ll | 24 + .../Transforms/SCCP/global-alias-constprop.ll | 12 + llvm/test/Transforms/SCCP/indirectbr.ll | 76 + .../Transforms/SCCP/ip-constant-ranges.ll | 198 + .../test/Transforms/SCCP/ipsccp-addr-taken.ll | 28 + llvm/test/Transforms/SCCP/ipsccp-basic.ll | 273 + .../SCCP/ipsccp-branch-unresolved-undef.ll | 24 + .../SCCP/ipsccp-phi-one-pred-dead.ll | 41 + .../SCCP/ipsccp-preserve-analysis.ll | 56 + .../SCCP/ipsccp-ssa-copy-nested-conds.ll | 50 + .../Transforms/SCCP/latticeval-invalidate.ll | 41 + llvm/test/Transforms/SCCP/loadtest.ll | 46 + llvm/test/Transforms/SCCP/logical-nuke.ll | 39 + llvm/test/Transforms/SCCP/overdefined-div.ll | 32 + llvm/test/Transforms/SCCP/pr27712.ll | 30 + llvm/test/Transforms/SCCP/pr35357.ll | 24 + .../test/Transforms/SCCP/preserve-analysis.ll | 34 + llvm/test/Transforms/SCCP/return-zapped.ll | 62 + llvm/test/Transforms/SCCP/retvalue-undef.ll | 32 + llvm/test/Transforms/SCCP/sccptest.ll | 58 + llvm/test/Transforms/SCCP/select.ll | 12 + .../Transforms/SCCP/switch-multiple-undef.ll | 27 + .../switch-undef-constantfoldterminator.ll | 47 + llvm/test/Transforms/SCCP/switch.ll | 13 + llvm/test/Transforms/SCCP/ub-shift.ll | 69 + llvm/test/Transforms/SCCP/undef-resolve.ll | 182 + llvm/test/Transforms/SCCP/vector-bitcast.ll | 20 + .../SLPVectorizer/AArch64/64-bit-vector.ll | 45 + .../SLPVectorizer/AArch64/PR38339.ll | 124 + .../SLPVectorizer/AArch64/commute.ll | 96 + .../SLPVectorizer/AArch64/ext-trunc.ll | 111 + .../SLPVectorizer/AArch64/gather-cost.ll | 53 + .../SLPVectorizer/AArch64/gather-reduce.ll | 543 ++ .../SLPVectorizer/AArch64/gather-root.ll | 318 + .../SLPVectorizer/AArch64/getelementptr.ll | 242 + .../SLPVectorizer/AArch64/horizontal.ll | 436 ++ .../SLPVectorizer/AArch64/lit.local.cfg | 2 + .../SLPVectorizer/AArch64/load-store-q.ll | 46 + .../SLPVectorizer/AArch64/matmul.ll | 139 + .../SLPVectorizer/AArch64/minimum-sizes.ll | 80 + .../AArch64/mismatched-intrinsics.ll | 23 + .../SLPVectorizer/AArch64/nontemporal.ll | 87 + .../SLPVectorizer/AArch64/remarks.ll | 32 + .../SLPVectorizer/AArch64/sdiv-pow2.ll | 59 + .../SLPVectorizer/AArch64/spillcost-di.ll | 93 + .../SLPVectorizer/AArch64/transpose.ll | 310 + .../SLPVectorizer/AArch64/tsc-s352.ll | 127 + .../address-space-ptr-sze-gep-index-assert.ll | 149 + .../SLPVectorizer/AMDGPU/horizontal-store.ll | 250 + .../SLPVectorizer/AMDGPU/lit.local.cfg | 3 + .../SLPVectorizer/AMDGPU/packed-math.ll | 203 + .../SLPVectorizer/AMDGPU/reduction.ll | 722 +++ .../SLPVectorizer/ARM/extract-insert.ll | 31 + .../SLPVectorizer/ARM/lit.local.cfg | 2 + .../Transforms/SLPVectorizer/ARM/memory.ll | 28 + .../test/Transforms/SLPVectorizer/ARM/sroa.ll | 87 + .../SLPVectorizer/NVPTX/lit.local.cfg | 2 + .../NVPTX/non-vectorizable-intrinsic.ll | 57 + .../Transforms/SLPVectorizer/NVPTX/v2f16.ll | 70 + .../SLPVectorizer/PowerPC/aggregate.ll | 24 + .../SLPVectorizer/PowerPC/lit.local.cfg | 2 + .../SLPVectorizer/PowerPC/pr27897.ll | 46 + .../SLPVectorizer/PowerPC/short-to-double.ll | 39 + .../SystemZ/SLP-cmp-cost-query.ll | 36 + .../SLPVectorizer/SystemZ/lit.local.cfg | 3 + .../SLPVectorizer/SystemZ/pr34619.ll | 52 + .../Transforms/SLPVectorizer/X86/PR32086.ll | 94 + .../Transforms/SLPVectorizer/X86/PR34635.ll | 98 + .../Transforms/SLPVectorizer/X86/PR35628_1.ll | 74 + .../Transforms/SLPVectorizer/X86/PR35628_2.ll | 64 + .../Transforms/SLPVectorizer/X86/PR35777.ll | 45 + .../Transforms/SLPVectorizer/X86/PR35865.ll | 27 + .../Transforms/SLPVectorizer/X86/PR36280.ll | 25 + .../Transforms/SLPVectorizer/X86/PR39774.ll | 237 + .../Transforms/SLPVectorizer/X86/PR40310.ll | 93 + .../Transforms/SLPVectorizer/X86/addsub.ll | 390 ++ .../Transforms/SLPVectorizer/X86/aggregate.ll | 23 + .../Transforms/SLPVectorizer/X86/align.ll | 76 + .../SLPVectorizer/X86/alternate-calls.ll | 65 + .../SLPVectorizer/X86/alternate-cast.ll | 489 ++ .../SLPVectorizer/X86/alternate-fp.ll | 161 + .../SLPVectorizer/X86/alternate-int.ll | 571 ++ .../SLPVectorizer/X86/arith-add-saddo.ll | 1254 ++++ .../SLPVectorizer/X86/arith-add-ssat.ll | 775 +++ .../SLPVectorizer/X86/arith-add-uaddo.ll | 1254 ++++ .../SLPVectorizer/X86/arith-add-usat.ll | 729 +++ .../Transforms/SLPVectorizer/X86/arith-add.ll | 708 +++ .../Transforms/SLPVectorizer/X86/arith-fix.ll | 1765 ++++++ .../Transforms/SLPVectorizer/X86/arith-fp.ll | 1323 ++++ .../SLPVectorizer/X86/arith-mul-smulo.ll | 1254 ++++ .../SLPVectorizer/X86/arith-mul-umulo.ll | 1254 ++++ .../Transforms/SLPVectorizer/X86/arith-mul.ll | 775 +++ .../SLPVectorizer/X86/arith-sub-ssat.ll | 775 +++ .../SLPVectorizer/X86/arith-sub-ssubo.ll | 1254 ++++ .../SLPVectorizer/X86/arith-sub-usat.ll | 729 +++ .../SLPVectorizer/X86/arith-sub-usubo.ll | 1254 ++++ .../Transforms/SLPVectorizer/X86/arith-sub.ll | 708 +++ .../Transforms/SLPVectorizer/X86/atomics.ll | 35 + .../Transforms/SLPVectorizer/X86/bad_types.ll | 112 + .../SLPVectorizer/X86/barriercall.ll | 45 + .../SLPVectorizer/X86/bitreverse.ll | 423 ++ .../SLPVectorizer/X86/blending-shuffle.ll | 179 + .../Transforms/SLPVectorizer/X86/bswap.ll | 247 + .../test/Transforms/SLPVectorizer/X86/call.ll | 177 + .../test/Transforms/SLPVectorizer/X86/cast.ll | 115 + .../SLPVectorizer/X86/cmp_commute.ll | 283 + .../Transforms/SLPVectorizer/X86/cmp_sel.ll | 37 + .../SLPVectorizer/X86/commutativity.ll | 116 + .../SLPVectorizer/X86/compare-reduce.ll | 76 + .../SLPVectorizer/X86/consecutive-access.ll | 556 ++ .../SLPVectorizer/X86/continue_vectorizing.ll | 50 + .../SLPVectorizer/X86/crash_7zip.ll | 65 + .../SLPVectorizer/X86/crash_binaryop.ll | 64 + .../SLPVectorizer/X86/crash_bullet.ll | 213 + .../SLPVectorizer/X86/crash_bullet3.ll | 141 + .../SLPVectorizer/X86/crash_cmpop.ll | 141 + .../SLPVectorizer/X86/crash_dequeue.ll | 68 + .../SLPVectorizer/X86/crash_flop7.ll | 77 + .../Transforms/SLPVectorizer/X86/crash_gep.ll | 31 + .../SLPVectorizer/X86/crash_lencod.ll | 150 + .../SLPVectorizer/X86/crash_mandeltext.ll | 180 + .../X86/crash_netbsd_decompress.ll | 66 + .../SLPVectorizer/X86/crash_scheduling.ll | 79 + .../SLPVectorizer/X86/crash_sim4b1.ll | 191 + .../SLPVectorizer/X86/crash_smallpt.ll | 166 + .../SLPVectorizer/X86/crash_vectorizeTree.ll | 95 + .../SLPVectorizer/X86/cross_block_slp.ll | 66 + llvm/test/Transforms/SLPVectorizer/X86/cse.ll | 363 ++ .../test/Transforms/SLPVectorizer/X86/ctlz.ll | 905 +++ .../Transforms/SLPVectorizer/X86/ctpop.ll | 512 ++ .../test/Transforms/SLPVectorizer/X86/cttz.ll | 905 +++ .../Transforms/SLPVectorizer/X86/cycle_dup.ll | 76 + .../SLPVectorizer/X86/debug_info.ll | 101 + .../Transforms/SLPVectorizer/X86/diamond.ll | 157 + .../SLPVectorizer/X86/external_user.ll | 132 + .../X86/external_user_jumbled_load.ll | 43 + .../SLPVectorizer/X86/extract-shuffle.ll | 22 + .../Transforms/SLPVectorizer/X86/extract.ll | 79 + .../SLPVectorizer/X86/extract_in_tree_user.ll | 101 + .../SLPVectorizer/X86/extractcost.ll | 46 + .../SLPVectorizer/X86/extractelement.ll | 61 + .../SLPVectorizer/X86/fabs-cost-softfp.ll | 44 + .../test/Transforms/SLPVectorizer/X86/fabs.ll | 275 + .../Transforms/SLPVectorizer/X86/fcopysign.ll | 343 ++ .../test/Transforms/SLPVectorizer/X86/flag.ll | 87 + llvm/test/Transforms/SLPVectorizer/X86/fma.ll | 563 ++ .../Transforms/SLPVectorizer/X86/fptosi.ll | 561 ++ .../Transforms/SLPVectorizer/X86/fptoui.ll | 673 ++ .../Transforms/SLPVectorizer/X86/fround.ll | 2159 +++++++ .../Transforms/SLPVectorizer/X86/funclet.ll | 70 + llvm/test/Transforms/SLPVectorizer/X86/gep.ll | 65 + .../SLPVectorizer/X86/gep_mismatch.ll | 36 + .../test/Transforms/SLPVectorizer/X86/hadd.ll | 527 ++ .../Transforms/SLPVectorizer/X86/hoist.ll | 68 + .../SLPVectorizer/X86/horizontal-list.ll | 1733 ++++++ .../SLPVectorizer/X86/horizontal-minmax.ll | 1141 ++++ .../SLPVectorizer/X86/horizontal.ll | 1887 ++++++ .../test/Transforms/SLPVectorizer/X86/hsub.ll | 527 ++ .../SLPVectorizer/X86/implicitfloat.ll | 38 + .../SLPVectorizer/X86/in-tree-user.ll | 81 + .../SLPVectorizer/X86/insert-after-bundle.ll | 701 +++ .../X86/insert-element-build-vector.ll | 754 +++ .../SLPVectorizer/X86/insertvalue.ll | 307 + .../Transforms/SLPVectorizer/X86/intrinsic.ll | 515 ++ .../X86/jumbled-load-multiuse.ll | 40 + .../X86/jumbled-load-shuffle-placement.ll | 124 + .../X86/jumbled-load-used-in-phi.ll | 225 + .../SLPVectorizer/X86/jumbled-load.ll | 112 + .../Transforms/SLPVectorizer/X86/limit.ll | 70 + .../SLPVectorizer/X86/lit.local.cfg | 3 + .../SLPVectorizer/X86/load-merge.ll | 50 + .../SLPVectorizer/X86/long_chains.ll | 66 + .../SLPVectorizer/X86/loopinvariant.ll | 102 + .../Transforms/SLPVectorizer/X86/metadata.ll | 71 + .../SLPVectorizer/X86/minimum-sizes.ll | 85 + .../SLPVectorizer/X86/multi_block.ll | 64 + .../SLPVectorizer/X86/multi_user.ll | 61 + .../Transforms/SLPVectorizer/X86/odd_store.ll | 62 + .../SLPVectorizer/X86/operandorder.ll | 474 ++ llvm/test/Transforms/SLPVectorizer/X86/opt.ll | 50 + .../Transforms/SLPVectorizer/X86/ordering.ll | 103 + .../Transforms/SLPVectorizer/X86/partail.ll | 80 + llvm/test/Transforms/SLPVectorizer/X86/phi.ll | 341 + .../test/Transforms/SLPVectorizer/X86/phi3.ll | 54 + .../SLPVectorizer/X86/phi_landingpad.ll | 48 + .../SLPVectorizer/X86/phi_overalignedtype.ll | 58 + .../Transforms/SLPVectorizer/X86/powof2div.ll | 147 + .../Transforms/SLPVectorizer/X86/pr16571.ll | 22 + .../Transforms/SLPVectorizer/X86/pr16628.ll | 43 + .../Transforms/SLPVectorizer/X86/pr16899.ll | 46 + .../Transforms/SLPVectorizer/X86/pr18060.ll | 81 + .../Transforms/SLPVectorizer/X86/pr19657.ll | 60 + .../Transforms/SLPVectorizer/X86/pr23510.ll | 59 + .../Transforms/SLPVectorizer/X86/pr27163.ll | 66 + .../Transforms/SLPVectorizer/X86/pr31599.ll | 30 + .../Transforms/SLPVectorizer/X86/pr35497.ll | 105 + .../SLPVectorizer/X86/propagate_ir_flags.ll | 607 ++ .../SLPVectorizer/X86/reassociated-loads.ll | 118 + .../Transforms/SLPVectorizer/X86/reduction.ll | 70 + .../SLPVectorizer/X86/reduction2.ll | 51 + .../SLPVectorizer/X86/reduction_loads.ll | 81 + .../SLPVectorizer/X86/reduction_unrolled.ll | 352 ++ .../SLPVectorizer/X86/remark_horcost.ll | 137 + .../SLPVectorizer/X86/remark_listcost.ll | 61 + .../SLPVectorizer/X86/remark_not_all_parts.ll | 85 + .../SLPVectorizer/X86/remark_unsupported.ll | 53 + .../SLPVectorizer/X86/reorder_phi.ll | 76 + .../SLPVectorizer/X86/reorder_repeated_ops.ll | 130 + .../Transforms/SLPVectorizer/X86/resched.ll | 172 + .../Transforms/SLPVectorizer/X86/return.ll | 70 + .../X86/reverse_extract_elements.ll | 134 + .../Transforms/SLPVectorizer/X86/rgb_phi.ll | 104 + .../Transforms/SLPVectorizer/X86/saxpy.ll | 90 + .../SLPVectorizer/X86/schedule-bundle.ll | 53 + .../SLPVectorizer/X86/schedule_budget.ll | 138 + .../SLPVectorizer/X86/scheduling.ll | 78 + .../test/Transforms/SLPVectorizer/X86/sext.ll | 911 +++ .../SLPVectorizer/X86/shift-ashr.ll | 914 +++ .../SLPVectorizer/X86/shift-lshr.ll | 863 +++ .../Transforms/SLPVectorizer/X86/shift-shl.ll | 815 +++ .../SLPVectorizer/X86/sign-extend.ll | 62 + .../SLPVectorizer/X86/simple-loop.ll | 152 + .../Transforms/SLPVectorizer/X86/simplebb.ll | 121 + .../Transforms/SLPVectorizer/X86/sitofp.ll | 1262 ++++ .../SLPVectorizer/X86/slp-throttle.ll | 37 + .../test/Transforms/SLPVectorizer/X86/sqrt.ll | 274 + .../SLPVectorizer/X86/store-jumbled.ll | 61 + .../SLPVectorizer/X86/stores_vectorize.ll | 314 + .../Transforms/SLPVectorizer/X86/tiny-tree.ll | 268 + .../Transforms/SLPVectorizer/X86/uitofp.ll | 1164 ++++ .../SLPVectorizer/X86/undef_vect.ll | 86 + .../SLPVectorizer/X86/unreachable.ll | 69 + .../Transforms/SLPVectorizer/X86/value-bug.ll | 108 + .../X86/vect_copyable_in_binops.ll | 984 +++ .../Transforms/SLPVectorizer/X86/vector.ll | 49 + .../SLPVectorizer/X86/vector_gep.ll | 30 + .../X86/vectorize-reorder-reuse.ll | 230 + .../test/Transforms/SLPVectorizer/X86/zext.ll | 785 +++ .../SLPVectorizer/XCore/lit.local.cfg | 2 + .../XCore/no-vector-registers.ll | 38 + .../SLPVectorizer/int_sideeffect.ll | 37 + llvm/test/Transforms/SROA/address-spaces.ll | 131 + llvm/test/Transforms/SROA/alignment.ll | 231 + .../Transforms/SROA/alloca-address-space.ll | 113 + llvm/test/Transforms/SROA/basictest.ll | 1918 ++++++ llvm/test/Transforms/SROA/big-endian.ll | 252 + llvm/test/Transforms/SROA/dbg-addr-diamond.ll | 127 + llvm/test/Transforms/SROA/dbg-single-piece.ll | 37 + llvm/test/Transforms/SROA/dead-inst.ll | 97 + llvm/test/Transforms/SROA/fca.ll | 48 + .../Transforms/SROA/mem-par-metadata-sroa.ll | 111 + .../Transforms/SROA/non-integral-pointers.ll | 88 + llvm/test/Transforms/SROA/phi-and-select.ll | 646 ++ .../SROA/phi-with-duplicate-pred.ll | 51 + .../Transforms/SROA/pointer-offset-size.ll | 29 + llvm/test/Transforms/SROA/ppcf128-no-fold.ll | 36 + llvm/test/Transforms/SROA/pr26972.ll | 17 + llvm/test/Transforms/SROA/pr37267.ll | 74 + llvm/test/Transforms/SROA/preserve-nonnull.ll | 92 + .../SROA/slice-order-independence.ll | 37 + llvm/test/Transforms/SROA/slice-width.ll | 106 + .../test/Transforms/SROA/vector-conversion.ll | 53 + .../SROA/vector-lifetime-intrinsic.ll | 31 + llvm/test/Transforms/SROA/vector-promotion.ll | 625 ++ .../Transforms/SROA/vectors-of-pointers.ll | 25 + llvm/test/Transforms/SafeStack/AArch64/abi.ll | 20 + .../Transforms/SafeStack/AArch64/abi_ssp.ll | 23 + .../SafeStack/AArch64/lit.local.cfg | 3 + .../SafeStack/AArch64/unreachable.ll | 23 + llvm/test/Transforms/SafeStack/ARM/abi.ll | 18 + llvm/test/Transforms/SafeStack/ARM/debug.ll | 98 + .../Transforms/SafeStack/ARM/lit.local.cfg | 3 + llvm/test/Transforms/SafeStack/ARM/setjmp.ll | 36 + llvm/test/Transforms/SafeStack/X86/abi.ll | 30 + llvm/test/Transforms/SafeStack/X86/abi_ssp.ll | 26 + .../Transforms/SafeStack/X86/addr-taken.ll | 22 + .../Transforms/SafeStack/X86/array-aligned.ll | 38 + llvm/test/Transforms/SafeStack/X86/array.ll | 89 + llvm/test/Transforms/SafeStack/X86/byval.ll | 68 + llvm/test/Transforms/SafeStack/X86/call.ll | 178 + llvm/test/Transforms/SafeStack/X86/cast.ll | 39 + .../Transforms/SafeStack/X86/coloring-ssp.ll | 34 + .../test/Transforms/SafeStack/X86/coloring.ll | 44 + .../Transforms/SafeStack/X86/coloring2.ll | 521 ++ .../SafeStack/X86/constant-gep-call.ll | 26 + .../Transforms/SafeStack/X86/constant-gep.ll | 20 + .../Transforms/SafeStack/X86/constant-geps.ll | 28 + .../SafeStack/X86/debug-loc-dynamic.ll | 56 + .../Transforms/SafeStack/X86/debug-loc.ll | 80 + .../Transforms/SafeStack/X86/debug-loc2.ll | 96 + .../SafeStack/X86/dynamic-alloca.ll | 22 + .../SafeStack/X86/escape-addr-pointer.ll | 23 + .../SafeStack/X86/escape-bitcast-store.ll | 23 + .../SafeStack/X86/escape-bitcast-store2.ll | 20 + .../Transforms/SafeStack/X86/escape-call.ll | 16 + .../SafeStack/X86/escape-casted-pointer.ll | 24 + .../SafeStack/X86/escape-gep-call.ll | 20 + .../SafeStack/X86/escape-gep-invoke.ll | 34 + .../SafeStack/X86/escape-gep-negative.ll | 18 + .../SafeStack/X86/escape-gep-ptrtoint.ll | 22 + .../SafeStack/X86/escape-gep-store.ll | 23 + .../SafeStack/X86/escape-phi-call.ll | 36 + .../SafeStack/X86/escape-select-call.ll | 22 + .../Transforms/SafeStack/X86/escape-vector.ll | 21 + llvm/test/Transforms/SafeStack/X86/invoke.ll | 33 + .../Transforms/SafeStack/X86/layout-frag.ll | 39 + .../SafeStack/X86/layout-region-split.ll | 84 + .../Transforms/SafeStack/X86/lit.local.cfg | 3 + .../SafeStack/X86/memintrinsic-oob-read.ll | 14 + llvm/test/Transforms/SafeStack/X86/no-attr.ll | 27 + .../Transforms/SafeStack/X86/phi-cycle.ll | 50 + llvm/test/Transforms/SafeStack/X86/phi.ll | 35 + llvm/test/Transforms/SafeStack/X86/ret.ll | 17 + llvm/test/Transforms/SafeStack/X86/setjmp.ll | 37 + llvm/test/Transforms/SafeStack/X86/setjmp2.ll | 43 + .../Transforms/SafeStack/X86/sink-to-use.ll | 22 + llvm/test/Transforms/SafeStack/X86/ssp.ll | 30 + llvm/test/Transforms/SafeStack/X86/store.ll | 63 + llvm/test/Transforms/SafeStack/X86/struct.ll | 40 + .../Inputs/bad_discriminator_value.prof | 2 + .../SampleProfile/Inputs/bad_fn_header.prof | 3 + .../SampleProfile/Inputs/bad_line_values.prof | 2 + .../SampleProfile/Inputs/bad_mangle.prof | 3 + .../SampleProfile/Inputs/bad_sample_line.prof | 3 + .../SampleProfile/Inputs/bad_samples.prof | 2 + .../SampleProfile/Inputs/branch.prof | 10 + .../SampleProfile/Inputs/calls.prof | 10 + .../Inputs/cold-indirect-call.prof | 6 + .../Inputs/cov-zero-samples.prof | 10 + .../Inputs/coverage-warning.prof | 5 + .../SampleProfile/Inputs/discriminator.prof | 8 + .../SampleProfile/Inputs/einline.prof | 7 + .../SampleProfile/Inputs/entry_counts.prof | 3 + .../Inputs/entry_counts_cold.prof | 20 + .../SampleProfile/Inputs/flattened.prof | 2 + .../SampleProfile/Inputs/fnptr.binprof | Bin 0 -> 225 bytes .../SampleProfile/Inputs/fnptr.prof | 13 + .../Inputs/function_metadata.compact.afdo | Bin 0 -> 295 bytes .../Inputs/function_metadata.prof | 17 + .../SampleProfile/Inputs/gcc-simple.afdo | Bin 0 -> 1972 bytes .../SampleProfile/Inputs/indirect-call.afdo | Bin 0 -> 1744 bytes .../Inputs/indirect-call.compact.afdo | Bin 0 -> 533 bytes .../SampleProfile/Inputs/indirect-call.prof | 31 + .../SampleProfile/Inputs/inline-act.prof | 3 + .../SampleProfile/Inputs/inline-combine.prof | 2 + .../SampleProfile/Inputs/inline-coverage.prof | 7 + .../SampleProfile/Inputs/inline-hint.prof | 3 + .../Inputs/inline.compactbinary.afdo | Bin 0 -> 185 bytes .../SampleProfile/Inputs/inline.prof | 7 + .../SampleProfile/Inputs/nodebug.prof | 2 + .../SampleProfile/Inputs/nolocinfo.prof | 3 + .../SampleProfile/Inputs/offset.prof | 4 + .../SampleProfile/Inputs/propagate.prof | 22 + .../Transforms/SampleProfile/Inputs/remap.map | 8 + .../SampleProfile/Inputs/remap.prof | 10 + .../SampleProfile/Inputs/remarks.prof | 7 + .../SampleProfile/Inputs/summary.prof | 9 + .../SampleProfile/Inputs/syntax.prof | 3 + .../Inputs/warm-inline-instance.prof | 11 + llvm/test/Transforms/SampleProfile/branch.ll | 242 + llvm/test/Transforms/SampleProfile/calls.ll | 116 + .../SampleProfile/cold-indirect-call.ll | 31 + .../SampleProfile/compact-binary-profile.ll | 121 + .../SampleProfile/cov-zero-samples.ll | 147 + .../SampleProfile/coverage-warning.ll | 46 + .../Transforms/SampleProfile/discriminator.ll | 90 + .../Transforms/SampleProfile/early-inline.ll | 76 + .../Transforms/SampleProfile/entry_counts.ll | 31 + .../SampleProfile/entry_counts_cold.ll | 170 + .../Transforms/SampleProfile/flattened.ll | 39 + llvm/test/Transforms/SampleProfile/fnptr.ll | 157 + .../SampleProfile/function_metadata.ll | 59 + .../Transforms/SampleProfile/gcc-simple.ll | 218 + .../SampleProfile/indirect-call-gcc.ll | 26 + .../Transforms/SampleProfile/indirect-call.ll | 213 + .../Transforms/SampleProfile/inline-act.ll | 72 + .../inline-cold-callsite-samplepgo.ll | 31 + .../SampleProfile/inline-combine.ll | 47 + .../SampleProfile/inline-coverage.ll | 135 + llvm/test/Transforms/SampleProfile/inline.ll | 109 + llvm/test/Transforms/SampleProfile/nodebug.ll | 20 + .../Transforms/SampleProfile/nolocinfo.ll | 38 + llvm/test/Transforms/SampleProfile/offset.ll | 82 + .../Transforms/SampleProfile/propagate.ll | 317 + llvm/test/Transforms/SampleProfile/remap.ll | 60 + llvm/test/Transforms/SampleProfile/remarks.ll | 225 + .../section-accurate-samplepgo.ll | 52 + llvm/test/Transforms/SampleProfile/summary.ll | 26 + llvm/test/Transforms/SampleProfile/syntax.ll | 29 + .../SampleProfile/warm-inline-instance.ll | 115 + .../X86/expand-masked-compressstore.ll | 94 + .../X86/expand-masked-expandload.ll | 102 + .../X86/expand-masked-gather.ll | 63 + .../X86/expand-masked-load.ll | 119 + .../X86/expand-masked-store.ll | 59 + llvm/test/Transforms/Scalarizer/basic.ll | 453 ++ llvm/test/Transforms/Scalarizer/cache-bug.ll | 31 + llvm/test/Transforms/Scalarizer/crash-bug.ll | 25 + llvm/test/Transforms/Scalarizer/dbginfo.ll | 86 + llvm/test/Transforms/Scalarizer/dbgloc-bug.ll | 44 + llvm/test/Transforms/Scalarizer/intrinsics.ll | 110 + llvm/test/Transforms/Scalarizer/order-bug.ll | 24 + llvm/test/Transforms/Scalarizer/phi-bug.ll | 25 + llvm/test/Transforms/Scalarizer/store-bug.ll | 26 + llvm/test/Transforms/Scalarizer/vector-gep.ll | 123 + .../AMDGPU/lit.local.cfg | 3 + ...-gep-and-gvn-addrspace-addressing-modes.ll | 139 + .../NVPTX/lit.local.cfg | 3 + .../NVPTX/split-gep-and-gvn.ll | 236 + .../NVPTX/split-gep.ll | 300 + .../2006-06-13-SingleEntryPHI.ll | 36 + .../2006-06-27-DeadSwitchCase.ll | 32 + .../2007-05-09-Unreachable.ll | 29 + .../SimpleLoopUnswitch/2007-05-09-tl.ll | 96 + .../2007-07-12-ExitDomInfo.ll | 46 + .../SimpleLoopUnswitch/2007-07-13-DomInfo.ll | 28 + .../SimpleLoopUnswitch/2007-07-18-DomInfo.ll | 67 + .../SimpleLoopUnswitch/2007-08-01-Dom.ll | 30 + .../SimpleLoopUnswitch/2007-08-01-LCSSA.ll | 56 + .../2007-10-04-DomFrontier.ll | 29 + .../SimpleLoopUnswitch/2008-06-02-DomInfo.ll | 27 + .../2008-06-17-DomFrontier.ll | 22 + .../SimpleLoopUnswitch/2010-11-18-LCSSA.ll | 29 + .../2011-06-02-CritSwitch.ll | 29 + .../SimpleLoopUnswitch/2011-09-26-EHCrash.ll | 64 + .../2012-04-02-IndirectBr.ll | 42 + .../2012-04-30-LoopUnswitch-LPad-Crash.ll | 97 + .../SimpleLoopUnswitch/2012-05-20-Phi.ll | 26 + .../2015-09-18-Addrspace.ll | 29 + .../SimpleLoopUnswitch/LIV-loop-condtion.ll | 37 + .../SimpleLoopUnswitch/basictest.ll | 185 + .../SimpleLoopUnswitch/cleanuppad.ll | 45 + .../SimpleLoopUnswitch/copy-metadata.ll | 35 + .../Transforms/SimpleLoopUnswitch/crash.ll | 67 + .../SimpleLoopUnswitch/delete-dead-blocks.ll | 101 + .../exponential-behavior.ll | 52 + .../exponential-nontrivial-unswitch-nested.ll | 139 + ...exponential-nontrivial-unswitch-nested2.ll | 149 + .../exponential-nontrivial-unswitch.ll | 80 + .../exponential-nontrivial-unswitch2.ll | 56 + .../exponential-switch-unswitch.ll | 118 + .../formDedicatedAfterTrivial1.ll | 25 + .../formDedicatedAfterTrivial2.ll | 22 + .../formDedicatedAfterTrivial3.ll | 37 + .../Transforms/SimpleLoopUnswitch/guards.ll | 239 + .../SimpleLoopUnswitch/infinite-loop.ll | 65 + .../Transforms/SimpleLoopUnswitch/msan.ll | 142 + .../nontrivial-unswitch-cost.ll | 502 ++ .../SimpleLoopUnswitch/nontrivial-unswitch.ll | 4216 +++++++++++++ .../Transforms/SimpleLoopUnswitch/pr37888.ll | 39 + .../SimpleLoopUnswitch/preserve-analyses.ll | 130 + .../trivial-unswitch-iteration.ll | 42 + .../SimpleLoopUnswitch/trivial-unswitch.ll | 1245 ++++ .../SimpleLoopUnswitch/update-scev.ll | 187 + .../SimplifyCFG/2002-05-21-PHIElimination.ll | 19 + .../SimplifyCFG/2002-09-24-PHIAssertion.ll | 13 + .../SimplifyCFG/2003-03-07-DominateProblem.ll | 17 + .../SimplifyCFG/2003-08-05-InvokeCrash.ll | 16 + .../SimplifyCFG/2003-08-17-BranchFold.ll | 22 + .../2003-08-17-BranchFoldOrdering.ll | 27 + .../SimplifyCFG/2003-08-17-FoldSwitch-dbg.ll | 57 + .../SimplifyCFG/2003-08-17-FoldSwitch.ll | 104 + .../2004-12-10-SimplifyCFGCrash.ll | 40 + .../SimplifyCFG/2005-06-16-PHICrash.ll | 95 + .../SimplifyCFG/2005-08-01-PHIUpdateFail.ll | 71 + .../SimplifyCFG/2005-10-02-InvokeSimplify.ll | 18 + .../2005-12-03-IncorrectPHIFold.ll | 123 + .../SimplifyCFG/2006-02-17-InfiniteUnroll.ll | 27 + .../SimplifyCFG/2006-06-12-InfLoop.ll | 413 ++ .../SimplifyCFG/2006-08-03-Crash.ll | 96 + .../SimplifyCFG/2006-10-19-UncondDiv.ll | 29 + .../SimplifyCFG/2006-12-08-Ptr-ICmp-Branch.ll | 131 + .../SimplifyCFG/2007-11-22-InvokeNoUnwind.ll | 20 + .../SimplifyCFG/2007-12-21-Crash.ll | 37 + .../SimplifyCFG/2008-01-02-hoist-fp-add.ll | 27 + .../SimplifyCFG/2008-05-16-PHIBlockMerge.ll | 131 + .../2008-07-13-InfLoopMiscompile.ll | 55 + .../SimplifyCFG/2008-09-08-MultiplePred.ll | 60 + .../2008-09-17-SpeculativeHoist.ll | 18 + ...008-10-03-SpeculativelyExecuteBeforePHI.ll | 36 + .../SimplifyCFG/2008-12-06-SingleEntryPhi.ll | 13 + .../SimplifyCFG/2008-12-16-DCECond.ll | 46 + .../SimplifyCFG/2009-01-18-PHIPropCrash.ll | 30 + .../SimplifyCFG/2009-05-12-externweak.ll | 47 + .../SimplifyCFG/2010-03-30-InvokeCrash.ll | 22 + .../SimplifyCFG/2011-03-08-UnreachableUse.ll | 31 + .../SimplifyCFG/2011-09-05-TrivialLPad.ll | 22 + .../SimplifyCFG/AArch64/cttz-ctlz.ll | 43 + .../SimplifyCFG/AArch64/lit.local.cfg | 5 + .../SimplifyCFG/AArch64/prefer-fma.ll | 73 + .../SimplifyCFG/AMDGPU/cttz-ctlz.ll | 249 + .../SimplifyCFG/AMDGPU/lit.local.cfg | 2 + .../Transforms/SimplifyCFG/ARM/cttz-ctlz.ll | 43 + .../Transforms/SimplifyCFG/ARM/lit.local.cfg | 5 + .../SimplifyCFG/ARM/select-trunc-i64.ll | 25 + .../switch-to-lookup-table-constant-expr.ll | 40 + .../SimplifyCFG/ARM/switch-to-lookup-table.ll | 138 + llvm/test/Transforms/SimplifyCFG/BrUnwind.ll | 15 + .../ConditionalTrappingConstantExpr.ll | 67 + .../SimplifyCFG/CoveredLookupTable.ll | 49 + llvm/test/Transforms/SimplifyCFG/DeadSetCC.ll | 28 + .../Transforms/SimplifyCFG/EmptyBlockMerge.ll | 21 + .../SimplifyCFG/EqualPHIEdgeBlockMerge.ll | 256 + .../ForwardSwitchConditionToPHI.ll | 123 + .../Hexagon/disable-lookup-table.ll | 36 + .../SimplifyCFG/Hexagon/lit.local.cfg | 5 + .../Hexagon/switch-to-lookup-table.ll | 62 + llvm/test/Transforms/SimplifyCFG/HoistCode.ll | 11 + llvm/test/Transforms/SimplifyCFG/InfLoop.ll | 101 + .../Transforms/SimplifyCFG/MagicPointer.ll | 149 + .../Transforms/SimplifyCFG/Mips/cttz-ctlz.ll | 43 + .../Transforms/SimplifyCFG/Mips/lit.local.cfg | 5 + llvm/test/Transforms/SimplifyCFG/PHINode.ll | 15 + llvm/test/Transforms/SimplifyCFG/PR16069.ll | 33 + llvm/test/Transforms/SimplifyCFG/PR17073.ll | 73 + llvm/test/Transforms/SimplifyCFG/PR25267.ll | 24 + .../SimplifyCFG/PR27615-simplify-cond-br.ll | 71 + llvm/test/Transforms/SimplifyCFG/PR29163.ll | 31 + llvm/test/Transforms/SimplifyCFG/PR30210.ll | 36 + llvm/test/Transforms/SimplifyCFG/PR9946.ll | 18 + .../Transforms/SimplifyCFG/PhiBlockMerge.ll | 29 + .../Transforms/SimplifyCFG/PhiBlockMerge2.ll | 27 + .../Transforms/SimplifyCFG/PhiEliminate.ll | 27 + .../Transforms/SimplifyCFG/PhiEliminate2.ll | 34 + .../Transforms/SimplifyCFG/PhiEliminate3.ll | 34 + .../Transforms/SimplifyCFG/PhiNoEliminate.ll | 27 + .../SimplifyCFG/PowerPC/cttz-ctlz-spec.ll | 45 + .../SimplifyCFG/PowerPC/lit.local.cfg | 2 + .../SimplifyCFG/RISCV/lit.local.cfg | 5 + .../SimplifyCFG/RISCV/select-trunc-i64.ll | 28 + .../SimplifyCFG/SPARC/lit.local.cfg | 3 + .../SPARC/switch_to_lookup_table.ll | 32 + .../Transforms/SimplifyCFG/SpeculativeExec.ll | 121 + .../SimplifyCFG/UncondBranchToHeader.ll | 18 + .../SimplifyCFG/UncondBranchToReturn.ll | 33 + .../SimplifyCFG/UnreachableEliminate.ll | 188 + .../SimplifyCFG/X86/disable-lookup-table.ll | 46 + .../Transforms/SimplifyCFG/X86/lit.local.cfg | 3 + .../SimplifyCFG/X86/speculate-cttz-ctlz.ll | 318 + .../SimplifyCFG/X86/switch-covered-bug.ll | 52 + .../SimplifyCFG/X86/switch-table-bug.ll | 43 + .../SimplifyCFG/X86/switch_to_lookup_table.ll | 1452 +++++ llvm/test/Transforms/SimplifyCFG/assume.ll | 22 + .../Transforms/SimplifyCFG/attr-convergent.ll | 28 + .../SimplifyCFG/attr-noduplicate.ll | 37 + llvm/test/Transforms/SimplifyCFG/basictest.ll | 133 + llvm/test/Transforms/SimplifyCFG/bbi-23595.ll | 50 + .../SimplifyCFG/branch-cond-merge.ll | 19 + .../SimplifyCFG/branch-cond-prop.ll | 17 + .../Transforms/SimplifyCFG/branch-fold-dbg.ll | 59 + .../SimplifyCFG/branch-fold-test.ll | 17 + .../SimplifyCFG/branch-fold-three.ll | 259 + .../SimplifyCFG/branch-fold-threshold.ll | 83 + .../Transforms/SimplifyCFG/branch-fold.ll | 70 + .../SimplifyCFG/branch-phi-thread.ll | 66 + llvm/test/Transforms/SimplifyCFG/bug-25299.ll | 40 + llvm/test/Transforms/SimplifyCFG/clamp.ll | 22 + .../SimplifyCFG/combine-parallel-mem-md.ll | 56 + .../SimplifyCFG/common-dest-folding.ll | 57 + .../Transforms/SimplifyCFG/critedge-assume.ll | 83 + llvm/test/Transforms/SimplifyCFG/dbginfo.ll | 71 + .../dce-cond-after-folding-terminator.ll | 52 + .../SimplifyCFG/debug-info-thread-phi.ll | 38 + .../Transforms/SimplifyCFG/div-rem-pairs.ll | 114 + .../SimplifyCFG/duplicate-landingpad.ll | 110 + .../Transforms/SimplifyCFG/duplicate-phis.ll | 21 + .../Transforms/SimplifyCFG/empty-catchpad.ll | 115 + .../SimplifyCFG/empty-cleanuppad.ll | 470 ++ .../Transforms/SimplifyCFG/extract-cost.ll | 22 + .../SimplifyCFG/fold-branch-debuginvariant.ll | 49 + .../Transforms/SimplifyCFG/fold-debug-info.ll | 102 + llvm/test/Transforms/SimplifyCFG/gepcost.ll | 28 + llvm/test/Transforms/SimplifyCFG/guards.ll | 100 + .../SimplifyCFG/hoist-common-code.ll | 18 + .../SimplifyCFG/hoist-dbgvalue-inlined.ll | 51 + .../Transforms/SimplifyCFG/hoist-dbgvalue.ll | 55 + .../SimplifyCFG/hoist-with-range.ll | 20 + .../Transforms/SimplifyCFG/implied-and-or.ll | 250 + .../implied-cond-matching-false-dest.ll | 339 + .../SimplifyCFG/implied-cond-matching-imm.ll | 123 + .../SimplifyCFG/implied-cond-matching.ll | 1029 ++++ .../Transforms/SimplifyCFG/implied-cond.ll | 81 + .../test/Transforms/SimplifyCFG/indirectbr.ll | 251 + .../Transforms/SimplifyCFG/inline-asm-sink.ll | 29 + llvm/test/Transforms/SimplifyCFG/invoke.ll | 162 + .../Transforms/SimplifyCFG/invoke_unwind.ll | 75 + .../SimplifyCFG/iterative-simplify.ll | 100 + llvm/test/Transforms/SimplifyCFG/lifetime.ll | 29 + .../SimplifyCFG/merge-cleanuppads.ll | 39 + .../SimplifyCFG/merge-cond-stores-2.ll | 321 + .../SimplifyCFG/merge-cond-stores.ll | 408 ++ .../Transforms/SimplifyCFG/multiple-phis.ll | 59 + .../test/Transforms/SimplifyCFG/no-md-sink.ll | 52 + .../no_speculative_loads_with_asan.ll | 59 + .../no_speculative_loads_with_tsan.ll | 40 + .../Transforms/SimplifyCFG/noreturn-call.ll | 29 + .../Transforms/SimplifyCFG/opt-for-fuzzing.ll | 49 + .../SimplifyCFG/phi-undef-loadstore.ll | 239 + llvm/test/Transforms/SimplifyCFG/pr33605.ll | 64 + llvm/test/Transforms/SimplifyCFG/pr34131.ll | 74 + llvm/test/Transforms/SimplifyCFG/pr35774.ll | 35 + llvm/test/Transforms/SimplifyCFG/pr39807.ll | 43 + .../preserve-branchweights-partial.ll | 37 + .../preserve-branchweights-switch-create.ll | 140 + .../SimplifyCFG/preserve-branchweights.ll | 675 ++ .../preserve-llvm-loop-metadata.ll | 54 + .../SimplifyCFG/preserve-load-metadata-2.ll | 32 + .../SimplifyCFG/preserve-load-metadata-3.ll | 32 + .../SimplifyCFG/preserve-load-metadata.ll | 32 + .../preserve-make-implicit-on-switch-to-br.ll | 30 + .../SimplifyCFG/preserve-store-alignment.ll | 267 + .../Transforms/SimplifyCFG/rangereduce.ll | 347 ++ .../Transforms/SimplifyCFG/remove-debug-2.ll | 68 + .../Transforms/SimplifyCFG/remove-debug.ll | 88 + .../Transforms/SimplifyCFG/return-merge.ll | 19 + .../Transforms/SimplifyCFG/seh-nounwind.ll | 31 + .../test/Transforms/SimplifyCFG/select-gep.ll | 26 + .../SimplifyCFG/sink-common-code.ll | 892 +++ .../Transforms/SimplifyCFG/speculate-call.ll | 23 + .../SimplifyCFG/speculate-dbgvalue.ll | 83 + .../Transforms/SimplifyCFG/speculate-math.ll | 165 + .../Transforms/SimplifyCFG/speculate-store.ll | 90 + .../SimplifyCFG/speculate-vector-ops.ll | 60 + .../SimplifyCFG/speculate-with-offset.ll | 94 + .../SimplifyCFG/statepoint-invoke-unwind.ll | 24 + .../suppress-zero-branch-weights.ll | 40 + .../SimplifyCFG/switch-dead-default.ll | 179 + .../SimplifyCFG/switch-masked-bits.ll | 77 + .../SimplifyCFG/switch-on-const-select.ll | 141 + .../SimplifyCFG/switch-range-to-icmp.ll | 77 + .../SimplifyCFG/switch-simplify-crash.ll | 108 + .../Transforms/SimplifyCFG/switch-to-br.ll | 64 + .../Transforms/SimplifyCFG/switch-to-icmp.ll | 57 + ...h-to-select-multiple-edge-per-block-phi.ll | 54 + .../SimplifyCFG/switch-to-select-two-case.ll | 41 + .../SimplifyCFG/switch_create-custom-dl.ll | 660 ++ .../Transforms/SimplifyCFG/switch_create.ll | 660 ++ .../SimplifyCFG/switch_switch_fold.ll | 65 + .../Transforms/SimplifyCFG/switch_thread.ll | 113 + .../Transforms/SimplifyCFG/switch_undef.ll | 24 + .../Transforms/SimplifyCFG/trap-debugloc.ll | 22 + .../SimplifyCFG/trap-no-null-opt-debugloc.ll | 24 + .../SimplifyCFG/trapping-load-unreachable.ll | 125 + .../SimplifyCFG/two-entry-phi-return.ll | 26 + .../SimplifyCFG/unreachable-blocks.ll | 28 + .../SimplifyCFG/unreachable-cleanuppad.ll | 40 + .../SimplifyCFG/volatile-phioper.ll | 48 + .../SimplifyCFG/wineh-unreachable.ll | 167 + llvm/test/Transforms/Sink/badloadsink.ll | 26 + llvm/test/Transforms/Sink/basic.ll | 144 + llvm/test/Transforms/Sink/call.ll | 112 + llvm/test/Transforms/Sink/catchswitch.ll | 37 + llvm/test/Transforms/Sink/convergent.ll | 23 + llvm/test/Transforms/Sink/fence.ll | 28 + llvm/test/Transforms/Sink/landingpad.ll | 33 + .../SpeculateAroundPHIs/basic-x86.ll | 595 ++ .../SpeculativeExecution/spec-calls.ll | 64 + .../SpeculativeExecution/spec-casts.ll | 136 + .../SpeculativeExecution/spec-compares.ll | 31 + .../SpeculativeExecution/spec-fp.ll | 87 + .../Transforms/SpeculativeExecution/spec.ll | 198 + .../AMDGPU/lit.local.cfg | 2 + .../AMDGPU/pr23975.ll | 20 + .../reassociate-geps-and-slsr-addrspace.ll | 107 + .../NVPTX/lit.local.cfg | 2 + .../NVPTX/reassociate-geps-and-slsr.ll | 74 + .../NVPTX/speculative-slsr.ll | 71 + .../X86/lit.local.cfg | 2 + .../StraightLineStrengthReduce/X86/no-slsr.ll | 44 + .../StraightLineStrengthReduce/slsr-add.ll | 172 + .../StraightLineStrengthReduce/slsr-gep.ll | 191 + .../StraightLineStrengthReduce/slsr-mul.ll | 147 + .../Transforms/StripDeadPrototypes/basic.ll | 12 + .../StripSymbols/2007-01-15-llvm.used.ll | 20 + .../StripSymbols/2010-06-30-StripDebug.ll | 34 + .../StripSymbols/2010-08-25-crash.ll | 29 + .../Transforms/StripSymbols/block-address.ll | 23 + .../test/Transforms/StripSymbols/strip-cov.ll | 20 + .../StripSymbols/strip-dead-debug-info.ll | 68 + .../AMDGPU/backedge-id-bug-xfail.ll | 77 + .../StructurizeCFG/AMDGPU/backedge-id-bug.ll | 164 + .../StructurizeCFG/AMDGPU/lit.local.cfg | 2 + .../AMDGPU/loop-subregion-misordered.ll | 165 + .../StructurizeCFG/AMDGPU/uniform-regions.ll | 82 + .../StructurizeCFG/branch-on-argument.ll | 50 + .../Transforms/StructurizeCFG/bug36015.ll | 53 + .../StructurizeCFG/invert-condition.ll | 30 + .../StructurizeCFG/invert-constantexpr.ll | 50 + .../StructurizeCFG/loop-continue-phi.ll | 40 + .../StructurizeCFG/loop-multiple-exits.ll | 50 + .../StructurizeCFG/nested-loop-order.ll | 68 + .../StructurizeCFG/no-branch-to-entry.ll | 38 + .../one-loop-multiple-backedges.ll | 45 + .../post-order-traversal-bug.ll | 100 + .../rebuild-ssa-infinite-loop.ll | 56 + llvm/test/Transforms/StructurizeCFG/switch.ll | 23 + .../SyntheticCountsPropagation/initial.ll | 79 + .../SyntheticCountsPropagation/prop.ll | 50 + .../SyntheticCountsPropagation/scc.ll | 19 + .../2010-06-26-MultipleReturnValues.ll | 20 + llvm/test/Transforms/TailCallElim/EraseBB.ll | 26 + .../TailCallElim/accum_recursion.ll | 75 + .../test/Transforms/TailCallElim/ackermann.ll | 26 + llvm/test/Transforms/TailCallElim/basic.ll | 241 + llvm/test/Transforms/TailCallElim/debugloc.ll | 16 + .../Transforms/TailCallElim/deopt-bundle.ll | 57 + .../TailCallElim/dont_reorder_load.ll | 82 + llvm/test/Transforms/TailCallElim/dup_tail.ll | 26 + .../Transforms/TailCallElim/inf-recursion.ll | 54 + llvm/test/Transforms/TailCallElim/notail.ll | 24 + .../TailCallElim/opt-remarks-recursion.ll | 38 + .../Transforms/TailCallElim/reorder_load.ll | 174 + llvm/test/Transforms/TailCallElim/setjmp.ll | 29 + .../circular-reference.ll | 9 + .../Transforms/ThinLTOBitcodeWriter/comdat.ll | 80 + .../ThinLTOBitcodeWriter/filter-alias.ll | 20 + .../ThinLTOBitcodeWriter/function-alias.ll | 25 + .../Transforms/ThinLTOBitcodeWriter/new-pm.ll | 9 + .../ThinLTOBitcodeWriter/no-type-md.ll | 36 + .../ThinLTOBitcodeWriter/pr33536.ll | 37 + .../split-internal-typeid.ll | 40 + .../ThinLTOBitcodeWriter/split-internal1.ll | 27 + .../ThinLTOBitcodeWriter/split-internal2.ll | 32 + .../split-vfunc-internal.ll | 21 + .../ThinLTOBitcodeWriter/split-vfunc.ll | 79 + .../Transforms/ThinLTOBitcodeWriter/split.ll | 44 + .../Transforms/ThinLTOBitcodeWriter/symver.ll | 25 + .../ThinLTOBitcodeWriter/unsplittable.ll | 35 + .../ThinLTOBitcodeWriter/x86/lit.local.cfg | 3 + .../ThinLTOBitcodeWriter/x86/module-asm.ll | 12 + .../PR37334-break-crit-edges-require-dt.ll | 44 + .../Transforms/Util/PredicateInfo/condprop.ll | 471 ++ .../Transforms/Util/PredicateInfo/diamond.ll | 68 + .../Transforms/Util/PredicateInfo/edge.ll | 242 + .../Transforms/Util/PredicateInfo/ordering.ll | 79 + .../Transforms/Util/PredicateInfo/pr33456.ll | 68 + .../Transforms/Util/PredicateInfo/pr33457.ll | 93 + .../Util/PredicateInfo/testandor.ll | 211 + .../Util/PredicateInfo/unnamed-types.ll | 36 + .../call-promotion-utils-ptrcast-attribute.ll | 32 + .../Util/call-promotion-utils-ptrcast.ll | 50 + .../Transforms/Util/clone-dicompileunit.ll | 66 + .../Util/combine-alias-scope-metadata.ll | 24 + llvm/test/Transforms/Util/dbg-user-of-aext.ll | 87 + llvm/test/Transforms/Util/flattencfg.ll | 26 + .../Util/libcalls-fast-math-inf-loop.ll | 60 + .../Transforms/Util/libcalls-opt-remarks.ll | 57 + .../Util/libcalls-shrinkwrap-double.ll | 241 + .../Util/libcalls-shrinkwrap-float.ll | 191 + .../Util/libcalls-shrinkwrap-long-double.ll | 192 + .../Transforms/Util/lowerinvoke-funclet.ll | 39 + llvm/test/Transforms/Util/lowerswitch.ll | 302 + .../Util/simplify-dbg-declare-load.ll | 61 + llvm/test/Transforms/Util/store-first-op.ll | 37 + .../Transforms/Util/strip-gc-relocates.ll | 120 + ...-nonlinetable-debuginfo-containingtypes.ll | 94 + .../Util/strip-nonlinetable-debuginfo-cus.ll | 24 + .../strip-nonlinetable-debuginfo-localvars.ll | 36 + .../strip-nonlinetable-debuginfo-loops.ll | 71 + ...-nonlinetable-debuginfo-subroutinetypes.ll | 22 + .../WholeProgramDevirt/Inputs/export.yaml | 21 + .../Inputs/import-branch-funnel.yaml | 11 + .../Inputs/import-indir.yaml | 42 + .../Inputs/import-single-impl.yaml | 13 + .../Inputs/import-uniform-ret-val.yaml | 19 + .../Inputs/import-unique-ret-val0.yaml | 11 + .../Inputs/import-unique-ret-val1.yaml | 11 + .../Inputs/import-vcp-branch-funnel.yaml | 23 + .../WholeProgramDevirt/Inputs/import-vcp.yaml | 23 + .../bad-read-from-vtable.ll | 81 + .../branch-funnel-threshold.ll | 100 + .../WholeProgramDevirt/branch-funnel.ll | 163 + .../WholeProgramDevirt/constant-arg.ll | 77 + .../devirt-single-impl-check.ll | 42 + .../WholeProgramDevirt/devirt-single-impl.ll | 47 + .../WholeProgramDevirt/expand-check.ll | 63 + .../WholeProgramDevirt/export-nothing.ll | 8 + .../WholeProgramDevirt/export-single-impl.ll | 101 + .../export-uniform-ret-val.ll | 41 + .../export-unique-ret-val.ll | 90 + .../export-unsuccessful-checked.ll | 28 + .../WholeProgramDevirt/export-vcp.ll | 102 + .../WholeProgramDevirt/import-indir.ll | 108 + .../import-no-dominating-assume.ll | 37 + .../Transforms/WholeProgramDevirt/import.ll | 121 + .../WholeProgramDevirt/non-constant-vtable.ll | 32 + .../WholeProgramDevirt/pointer-vtable.ll | 30 + .../WholeProgramDevirt/soa-vtable.ll | 52 + .../WholeProgramDevirt/struct-vtable.ll | 63 + .../uniform-retval-invoke.ll | 43 + .../WholeProgramDevirt/uniform-retval.ll | 36 + .../WholeProgramDevirt/unique-retval.ll | 60 + .../WholeProgramDevirt/vcp-accesses-memory.ll | 69 + .../Transforms/WholeProgramDevirt/vcp-decl.ll | 32 + .../WholeProgramDevirt/vcp-no-this.ll | 35 + .../vcp-non-constant-arg.ll | 35 + .../WholeProgramDevirt/vcp-too-wide-ints.ll | 65 + .../WholeProgramDevirt/vcp-type-mismatch.ll | 71 + .../WholeProgramDevirt/vcp-uses-this.ll | 37 + .../virtual-const-prop-begin.ll | 139 + .../virtual-const-prop-check.ll | 147 + .../virtual-const-prop-end.ll | 134 + .../WholeProgramDevirt/vtable-decl.ll | 25 + 4868 files changed, 575521 insertions(+) create mode 100644 llvm/include/llvm/Transforms/Scalar/LoopFuse.h create mode 100644 llvm/lib/Transforms/Scalar/LoopFuse.cpp create mode 100644 llvm/test/Transforms/ADCE/2002-01-31-UseStuckAround.ll create mode 100644 llvm/test/Transforms/ADCE/2002-05-22-PHITest.ll create mode 100644 llvm/test/Transforms/ADCE/2002-05-23-ZeroArgPHITest.ll create mode 100644 llvm/test/Transforms/ADCE/2002-05-28-Crash-distilled.ll create mode 100644 llvm/test/Transforms/ADCE/2002-05-28-Crash.ll create mode 100644 llvm/test/Transforms/ADCE/2002-07-17-AssertionFailure.ll create mode 100644 llvm/test/Transforms/ADCE/2002-07-17-PHIAssertion.ll create mode 100644 llvm/test/Transforms/ADCE/2002-07-29-Segfault.ll create mode 100644 llvm/test/Transforms/ADCE/2003-01-22-PredecessorProblem.ll create mode 100644 llvm/test/Transforms/ADCE/2003-04-25-PHIPostDominateProblem.ll create mode 100644 llvm/test/Transforms/ADCE/2003-06-11-InvalidCFG.ll create mode 100644 llvm/test/Transforms/ADCE/2003-06-24-BadSuccessor.ll create mode 100644 llvm/test/Transforms/ADCE/2003-06-24-BasicFunctionality.ll create mode 100644 llvm/test/Transforms/ADCE/2003-09-10-UnwindInstFail.ll create mode 100644 llvm/test/Transforms/ADCE/2003-09-15-InfLoopCrash.ll create mode 100644 llvm/test/Transforms/ADCE/2003-11-16-MissingPostDominanceInfo.ll create mode 100644 llvm/test/Transforms/ADCE/2004-05-04-UnreachableBlock.ll create mode 100644 llvm/test/Transforms/ADCE/2005-02-17-PHI-Invoke-Crash.ll create mode 100644 llvm/test/Transforms/ADCE/2016-09-06.ll create mode 100644 llvm/test/Transforms/ADCE/2017-08-21-DomTree-deletions.ll create mode 100644 llvm/test/Transforms/ADCE/basictest.ll create mode 100644 llvm/test/Transforms/ADCE/basictest1.ll create mode 100644 llvm/test/Transforms/ADCE/basictest2.ll create mode 100644 llvm/test/Transforms/ADCE/dce_pure_call.ll create mode 100644 llvm/test/Transforms/ADCE/dce_pure_invoke.ll create mode 100644 llvm/test/Transforms/ADCE/debug-info-intrinsic.ll create mode 100644 llvm/test/Transforms/ADCE/delete-profiling-calls-to-constant.ll create mode 100644 llvm/test/Transforms/ADCE/domtree-DoubleDeletion.ll create mode 100644 llvm/test/Transforms/ADCE/unreachable-function.ll create mode 100644 llvm/test/Transforms/ADCE/unreachable.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/basic.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/call-nested.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/call.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/dbg-declare-discriminator.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/diamond.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/first-only.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/inlined.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/invoke.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/memcpy-discriminator.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/multiple.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/no-discriminators.ll create mode 100644 llvm/test/Transforms/AddDiscriminators/oneline.ll create mode 100644 llvm/test/Transforms/AggressiveInstCombine/masked-cmp.ll create mode 100644 llvm/test/Transforms/AggressiveInstCombine/rotate.ll create mode 100644 llvm/test/Transforms/AggressiveInstCombine/trunc_const_expr.ll create mode 100644 llvm/test/Transforms/AggressiveInstCombine/trunc_multi_uses.ll create mode 100644 llvm/test/Transforms/AggressiveInstCombine/trunc_unreachable_bb.ll create mode 100644 llvm/test/Transforms/AlignmentFromAssumptions/simple.ll create mode 100644 llvm/test/Transforms/AlignmentFromAssumptions/simple32.ll create mode 100644 llvm/test/Transforms/AlignmentFromAssumptions/start-unk.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/2008-02-01-ReturnAttrs.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/2008-07-02-array-indexing.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/2008-09-07-CGUpdate.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/2008-09-08-CGUpdateSelfEdge.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/X86/attributes.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/ArgumentPromotion/X86/min-legal-vector-width.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/aggregate-promote.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/attrs.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/basictest.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/byval-2.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/byval.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/chained.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/control-flow.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/control-flow2.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/crash.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/dbg.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/fp80.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/inalloca.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/invalidation.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/musttail.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/naked_functions.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/nonzero-address-spaces.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/pr27568.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/pr3085.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/pr32917.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/pr33641_remove_arg_dbgvalue.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/profile.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/reserve-tbaa.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/sret.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/tail.ll create mode 100644 llvm/test/Transforms/ArgumentPromotion/variadic.ll create mode 100644 llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll create mode 100644 llvm/test/Transforms/AtomicExpand/AArch64/expand-atomicrmw-xchg-fp.ll create mode 100644 llvm/test/Transforms/AtomicExpand/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll create mode 100644 llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fsub.ll create mode 100644 llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-nand.ll create mode 100644 llvm/test/Transforms/AtomicExpand/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/AtomicExpand/ARM/atomic-expansion-v7.ll create mode 100644 llvm/test/Transforms/AtomicExpand/ARM/atomic-expansion-v8.ll create mode 100644 llvm/test/Transforms/AtomicExpand/ARM/atomicrmw-fp.ll create mode 100644 llvm/test/Transforms/AtomicExpand/ARM/cmpxchg-weak.ll create mode 100644 llvm/test/Transforms/AtomicExpand/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/AtomicExpand/Hexagon/atomicrmw-fp.ll create mode 100644 llvm/test/Transforms/AtomicExpand/Hexagon/lit.local.cfg create mode 100644 llvm/test/Transforms/AtomicExpand/Mips/atomicrmw-fp.ll create mode 100644 llvm/test/Transforms/AtomicExpand/Mips/lit.local.cfg create mode 100644 llvm/test/Transforms/AtomicExpand/RISCV/atomicrmw-fp.ll create mode 100644 llvm/test/Transforms/AtomicExpand/RISCV/lit.local.cfg create mode 100644 llvm/test/Transforms/AtomicExpand/SPARC/libcalls.ll create mode 100644 llvm/test/Transforms/AtomicExpand/SPARC/lit.local.cfg create mode 100644 llvm/test/Transforms/AtomicExpand/SPARC/partword.ll create mode 100644 llvm/test/Transforms/AtomicExpand/X86/expand-atomic-libcall.ll create mode 100644 llvm/test/Transforms/AtomicExpand/X86/expand-atomic-non-integer.ll create mode 100644 llvm/test/Transforms/AtomicExpand/X86/expand-atomic-rmw-fp.ll create mode 100644 llvm/test/Transforms/AtomicExpand/X86/expand-atomic-rmw-initial-load.ll create mode 100644 llvm/test/Transforms/AtomicExpand/X86/expand-atomic-xchg-fp.ll create mode 100644 llvm/test/Transforms/AtomicExpand/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/BDCE/basic.ll create mode 100644 llvm/test/Transforms/BDCE/dbg-multipleuses.ll create mode 100644 llvm/test/Transforms/BDCE/dce-pure.ll create mode 100644 llvm/test/Transforms/BDCE/dead-uses.ll create mode 100644 llvm/test/Transforms/BDCE/dead-void-ro.ll create mode 100644 llvm/test/Transforms/BDCE/invalidate-assumptions.ll create mode 100644 llvm/test/Transforms/BDCE/order.ll create mode 100644 llvm/test/Transforms/BDCE/pr26587.ll create mode 100644 llvm/test/Transforms/BDCE/vectors.ll create mode 100644 llvm/test/Transforms/BlockExtractor/extract-blocks.ll create mode 100644 llvm/test/Transforms/BlockExtractor/invalid-block.ll create mode 100644 llvm/test/Transforms/BlockExtractor/invalid-function.ll create mode 100644 llvm/test/Transforms/BranchFolding/2007-10-19-InlineAsmDirectives.ll create mode 100644 llvm/test/Transforms/CallSiteSplitting/callsite-instructions-before-call.ll create mode 100644 llvm/test/Transforms/CallSiteSplitting/callsite-no-or-structure.ll create mode 100644 llvm/test/Transforms/CallSiteSplitting/callsite-no-splitting.ll create mode 100644 llvm/test/Transforms/CallSiteSplitting/callsite-split-debug.ll create mode 100644 llvm/test/Transforms/CallSiteSplitting/callsite-split-or-phi.ll create mode 100644 llvm/test/Transforms/CallSiteSplitting/callsite-split-preserve-debug.ll create mode 100644 llvm/test/Transforms/CallSiteSplitting/callsite-split.ll create mode 100644 llvm/test/Transforms/CallSiteSplitting/lpad.ll create mode 100644 llvm/test/Transforms/CallSiteSplitting/musttail.ll create mode 100644 llvm/test/Transforms/CallSiteSplitting/split-loop.ll create mode 100644 llvm/test/Transforms/CalledValuePropagation/simple-arguments.ll create mode 100644 llvm/test/Transforms/CalledValuePropagation/simple-memory.ll create mode 100644 llvm/test/Transforms/CalledValuePropagation/simple-select.ll create mode 100644 llvm/test/Transforms/CanonicalizeAliases/canonicalize.ll create mode 100644 llvm/test/Transforms/CodeExtractor/2004-03-13-LoopExtractorCrash.ll create mode 100644 llvm/test/Transforms/CodeExtractor/2004-03-14-DominanceProblem.ll create mode 100644 llvm/test/Transforms/CodeExtractor/2004-03-14-NoSwitchSupport.ll create mode 100644 llvm/test/Transforms/CodeExtractor/2004-03-17-MissedLiveIns.ll create mode 100644 llvm/test/Transforms/CodeExtractor/2004-03-17-UpdatePHIsOutsideRegion.ll create mode 100644 llvm/test/Transforms/CodeExtractor/2004-03-18-InvokeHandling.ll create mode 100644 llvm/test/Transforms/CodeExtractor/2004-08-12-BlockExtractPHI.ll create mode 100644 llvm/test/Transforms/CodeExtractor/2004-11-12-InvokeExtract.ll create mode 100644 llvm/test/Transforms/CodeExtractor/BlockAddressReference.ll create mode 100644 llvm/test/Transforms/CodeExtractor/BlockAddressSelfReference.ll create mode 100644 llvm/test/Transforms/CodeExtractor/ExtractedFnEntryCount.ll create mode 100644 llvm/test/Transforms/CodeExtractor/MultipleExitBranchProb.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineAlloca.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineAlloca2.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineAlloca4.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineAlloca5.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineAnd.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineAndOr.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineAttributes.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineCallRef.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineDebug.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineEntryPHICost.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineEntryUpdate.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineHighCost.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineInvokeProducesOutVal.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineLiveAcross.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineNoInline.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineNoLiveOut.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineNotViable.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineORECrash.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineOptRemark.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineOr.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineOrAnd.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlinePGOMultiRegion.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlinePGORegion.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineVarArg.ll create mode 100644 llvm/test/Transforms/CodeExtractor/PartialInlineVarArgsDebug.ll create mode 100644 llvm/test/Transforms/CodeExtractor/SingleCondition.ll create mode 100644 llvm/test/Transforms/CodeExtractor/X86/InheritTargetAttributes.ll create mode 100644 llvm/test/Transforms/CodeExtractor/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/CodeExtractor/cost.ll create mode 100644 llvm/test/Transforms/CodeExtractor/cost_meta.ll create mode 100644 llvm/test/Transforms/CodeExtractor/extract-assume.ll create mode 100644 llvm/test/Transforms/CodeExtractor/inline_eh.ll create mode 100644 llvm/test/Transforms/CodeExtractor/inline_eh_1.ll create mode 100644 llvm/test/Transforms/CodeExtractor/live_shrink.ll create mode 100644 llvm/test/Transforms/CodeExtractor/live_shrink_gep.ll create mode 100644 llvm/test/Transforms/CodeExtractor/live_shrink_hoist.ll create mode 100644 llvm/test/Transforms/CodeExtractor/live_shrink_multiple.ll create mode 100644 llvm/test/Transforms/CodeExtractor/live_shrink_unsafe.ll create mode 100644 llvm/test/Transforms/CodeExtractor/unreachable-block.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/2008-11-24-RAUW-Self.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/AArch64/free-zext.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/AArch64/large-offset-gep.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/CodeGenPrepare/AArch64/sink-free-instructions.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/AArch64/trunc-weird-user.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/AArch64/widen_switch.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/CodeGenPrepare/AMDGPU/no-sink-addrspacecast.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/AMDGPU/sink-addrspacecast.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/ARM/bitreverse-recognize.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/ARM/large-offset-gep.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/CodeGenPrepare/ARM/memory-intrinsics.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/ARM/overflow-intrinsics.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/ARM/sink-addrmode.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/ARM/sink-free-instructions.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/ARM/splitgep.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/ARM/tailcall-dup.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/Mips/lit.local.cfg create mode 100644 llvm/test/Transforms/CodeGenPrepare/Mips/pr35209.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/NVPTX/bypass-slow-div-constant-numerator.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/NVPTX/bypass-slow-div-not-exact.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/NVPTX/bypass-slow-div-special-cases.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/NVPTX/bypass-slow-div.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/NVPTX/dont-sink-nop-addrspacecast.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/NVPTX/lit.local.cfg create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/catchpad-phi-cast.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/computedgoto.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/cttz-ctlz.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/ext-logicop.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/extend-sink-hoist.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/fcmp-sinking.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/memset_chk-simplify-nobuiltin.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/multi-extension.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/optimizeSelect-DT.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/overflow-intrinsics.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/pr27536.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/pr35658.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/select.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/sink-addrmode-base.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/sink-addrmode-select.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/sink-addrmode-two-phi.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/sink-addrmode.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/sink-addrspacecast.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/widen_switch.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/x86-shuffle-sink.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/basic.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/bitreverse-hang.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/builtin-condition.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/crash-on-large-allocas.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/dom-tree.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/gep-unmerging.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/invariant.group.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/nonintegral.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/section-samplepgo.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/section.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/sink-shift-and-trunc.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/skip-merging-case-block.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/split-indirect-loop.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/statepoint-relocate.ll create mode 100644 llvm/test/Transforms/CodeGenPrepare/widenable-condition.ll create mode 100644 llvm/test/Transforms/ConstProp/2002-05-03-DivideByZeroException.ll create mode 100644 llvm/test/Transforms/ConstProp/2002-05-03-NotOperator.ll create mode 100644 llvm/test/Transforms/ConstProp/2002-09-03-SetCC-Bools.ll create mode 100644 llvm/test/Transforms/ConstProp/2003-05-12-DivideError.ll create mode 100644 llvm/test/Transforms/ConstProp/2005-01-28-SetCCGEP.ll create mode 100644 llvm/test/Transforms/ConstProp/2006-11-30-vector-cast.ll create mode 100644 llvm/test/Transforms/ConstProp/2006-12-01-TruncBoolBug.ll create mode 100644 llvm/test/Transforms/ConstProp/2006-12-01-bool-casts.ll create mode 100644 llvm/test/Transforms/ConstProp/2007-02-05-BitCast.ll create mode 100644 llvm/test/Transforms/ConstProp/2007-02-23-sdiv.ll create mode 100644 llvm/test/Transforms/ConstProp/2008-07-07-VectorCompare.ll create mode 100644 llvm/test/Transforms/ConstProp/2009-06-20-constexpr-zero-lhs.ll create mode 100644 llvm/test/Transforms/ConstProp/2009-09-01-GEP-Crash.ll create mode 100644 llvm/test/Transforms/ConstProp/InsertElement.ll create mode 100644 llvm/test/Transforms/ConstProp/avx512.ll create mode 100644 llvm/test/Transforms/ConstProp/basictest.ll create mode 100644 llvm/test/Transforms/ConstProp/bitcast.ll create mode 100644 llvm/test/Transforms/ConstProp/bswap.ll create mode 100644 llvm/test/Transforms/ConstProp/calls-math-finite.ll create mode 100644 llvm/test/Transforms/ConstProp/calls.ll create mode 100644 llvm/test/Transforms/ConstProp/cast.ll create mode 100644 llvm/test/Transforms/ConstProp/constant-expr.ll create mode 100644 llvm/test/Transforms/ConstProp/convert-from-fp16.ll create mode 100644 llvm/test/Transforms/ConstProp/div-zero.ll create mode 100644 llvm/test/Transforms/ConstProp/extractvalue.ll create mode 100644 llvm/test/Transforms/ConstProp/float-to-ptr-cast.ll create mode 100644 llvm/test/Transforms/ConstProp/insertvalue.ll create mode 100644 llvm/test/Transforms/ConstProp/loads.ll create mode 100644 llvm/test/Transforms/ConstProp/logicaltest.ll create mode 100644 llvm/test/Transforms/ConstProp/overflow-ops.ll create mode 100644 llvm/test/Transforms/ConstProp/phi.ll create mode 100644 llvm/test/Transforms/ConstProp/remtest.ll create mode 100644 llvm/test/Transforms/ConstProp/shift.ll create mode 100644 llvm/test/Transforms/ConstProp/sse.ll create mode 100644 llvm/test/Transforms/ConstProp/trunc_vec.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/AArch64/const-addr.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/AArch64/const-hoist-gep.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/AArch64/large-immediate.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/ConstantHoisting/ARM/bad-cases.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/ARM/const-addr-no-neg-offset.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/ARM/const-hoist-gep.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/ARM/gep-struct-index.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/ARM/insertvalue.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/ARM/is-legal-addressing-imm.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/ConstantHoisting/ARM/same-offset-multi-types.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/PowerPC/const-base-addr.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/PowerPC/lit.local.cfg create mode 100644 llvm/test/Transforms/ConstantHoisting/PowerPC/masks.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/bad-cases.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/cast-inst.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/const-base-addr.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/dbg-dominatingblock.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/dbg-samebasicblock.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/delete-dead-cast-inst.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/ehpad.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/large-immediate.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/phi.ll create mode 100644 llvm/test/Transforms/ConstantHoisting/X86/stackmap.ll create mode 100644 llvm/test/Transforms/ConstantMerge/2002-09-23-CPR-Update.ll create mode 100644 llvm/test/Transforms/ConstantMerge/2003-10-28-MergeExternalConstants.ll create mode 100644 llvm/test/Transforms/ConstantMerge/2011-01-15-EitherOrder.ll create mode 100644 llvm/test/Transforms/ConstantMerge/align.ll create mode 100644 llvm/test/Transforms/ConstantMerge/dont-merge.ll create mode 100644 llvm/test/Transforms/ConstantMerge/merge-both.ll create mode 100644 llvm/test/Transforms/ConstantMerge/merge-dbg.ll create mode 100644 llvm/test/Transforms/ConstantMerge/unnamed-addr.ll create mode 100644 llvm/test/Transforms/Coroutines/ArgAddr.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-catchswitch.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-cleanup.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-debug.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-early.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-elide.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-frame-unreachable.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-frame.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-heap-elide.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-materialize.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-padding.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-spill-after-phi.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-spill-corobegin.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-split-00.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-split-01.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-split-02.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-split-alloc.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-split-dbg.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-split-eh.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-split-hidden.ll create mode 100644 llvm/test/Transforms/Coroutines/coro-split-musttail.ll create mode 100644 llvm/test/Transforms/Coroutines/ex0.ll create mode 100644 llvm/test/Transforms/Coroutines/ex1.ll create mode 100644 llvm/test/Transforms/Coroutines/ex2.ll create mode 100644 llvm/test/Transforms/Coroutines/ex3.ll create mode 100644 llvm/test/Transforms/Coroutines/ex4.ll create mode 100644 llvm/test/Transforms/Coroutines/ex5.ll create mode 100644 llvm/test/Transforms/Coroutines/no-suspend.ll create mode 100644 llvm/test/Transforms/Coroutines/phi-coro-end.ll create mode 100644 llvm/test/Transforms/Coroutines/restart-trigger.ll create mode 100644 llvm/test/Transforms/Coroutines/smoketest.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/2010-09-02-Trunc.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/2010-09-26-MergeConstantRange.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/add.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/alloca.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/ashr.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/basic.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/conflict.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/crash.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/deopt.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/guards.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/icmp.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/non-null.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/overflow_predicate.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/overflows.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/phi-common-val.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/pointer.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/pr35807.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/range.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/sdiv.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/select.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/srem.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/udiv.ll create mode 100644 llvm/test/Transforms/CorrelatedValuePropagation/urem.ll create mode 100644 llvm/test/Transforms/CrossDSOCFI/basic.ll create mode 100644 llvm/test/Transforms/CrossDSOCFI/cfi_functions.ll create mode 100644 llvm/test/Transforms/CrossDSOCFI/thumb.ll create mode 100644 llvm/test/Transforms/DCE/basic.ll create mode 100644 llvm/test/Transforms/DCE/calls-errno.ll create mode 100644 llvm/test/Transforms/DCE/guards.ll create mode 100644 llvm/test/Transforms/DCE/int_sideeffect.ll create mode 100644 llvm/test/Transforms/DeadArgElim/2006-06-27-struct-ret.ll create mode 100644 llvm/test/Transforms/DeadArgElim/2007-02-07-FuncRename.ll create mode 100644 llvm/test/Transforms/DeadArgElim/2007-10-18-VarargsReturn.ll create mode 100644 llvm/test/Transforms/DeadArgElim/2007-12-20-ParamAttrs.ll create mode 100644 llvm/test/Transforms/DeadArgElim/2008-01-16-VarargsParamAttrs.ll create mode 100644 llvm/test/Transforms/DeadArgElim/2008-06-23-DeadAfterLive.ll create mode 100644 llvm/test/Transforms/DeadArgElim/2009-03-17-MRE-Invoke.ll create mode 100644 llvm/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll create mode 100644 llvm/test/Transforms/DeadArgElim/2013-05-17-VarargsAndBlockAddress.ll create mode 100644 llvm/test/Transforms/DeadArgElim/aggregates.ll create mode 100644 llvm/test/Transforms/DeadArgElim/allocsize.ll create mode 100644 llvm/test/Transforms/DeadArgElim/basictest.ll create mode 100644 llvm/test/Transforms/DeadArgElim/call_profile.ll create mode 100644 llvm/test/Transforms/DeadArgElim/canon.ll create mode 100644 llvm/test/Transforms/DeadArgElim/comdat.ll create mode 100644 llvm/test/Transforms/DeadArgElim/dbginfo-preserve-dbgloc.ll create mode 100644 llvm/test/Transforms/DeadArgElim/dbginfo-update-dbgval-local.ll create mode 100644 llvm/test/Transforms/DeadArgElim/dbginfo-update-dbgval.ll create mode 100644 llvm/test/Transforms/DeadArgElim/dbginfo.ll create mode 100644 llvm/test/Transforms/DeadArgElim/dead_vaargs.ll create mode 100644 llvm/test/Transforms/DeadArgElim/deadexternal.ll create mode 100644 llvm/test/Transforms/DeadArgElim/deadretval.ll create mode 100644 llvm/test/Transforms/DeadArgElim/deadretval2.ll create mode 100644 llvm/test/Transforms/DeadArgElim/func_metadata.ll create mode 100644 llvm/test/Transforms/DeadArgElim/funclet.ll create mode 100644 llvm/test/Transforms/DeadArgElim/keepalive.ll create mode 100644 llvm/test/Transforms/DeadArgElim/linkage.ll create mode 100644 llvm/test/Transforms/DeadArgElim/multdeadretval.ll create mode 100644 llvm/test/Transforms/DeadArgElim/musttail-caller.ll create mode 100644 llvm/test/Transforms/DeadArgElim/naked_functions.ll create mode 100644 llvm/test/Transforms/DeadArgElim/nonzero-address-spaces.ll create mode 100644 llvm/test/Transforms/DeadArgElim/operandbundle.ll create mode 100644 llvm/test/Transforms/DeadArgElim/returned.ll create mode 100644 llvm/test/Transforms/DeadArgElim/variadic_safety.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/2011-03-25-DSEMiscompile.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/2011-09-06-EndOfFunction.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/2011-09-06-MemCpy.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/2016-07-17-UseAfterFree.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/OverwriteStoreBegin.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/OverwriteStoreEnd.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/PartialStore.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/X86/gather-null-pointer.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/atomic.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/calloc-store.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/combined-partial-overwrites.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/const-pointers.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/crash.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/cs-cs-aliasing.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/debuginfo.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/dominate.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/fence.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/free.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/inst-limits.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/int_sideeffect.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/invariant.start.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/launder.invariant.group.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/libcalls.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/lifetime.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/mda-with-dbg-values.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/memintrinsics.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/memset-missing-debugloc.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/merge-stores-big-endian.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/merge-stores.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/no-targetdata.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/operand-bundles.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/pr11390.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/simple.ll create mode 100644 llvm/test/Transforms/DeadStoreElimination/tail-byval.ll create mode 100644 llvm/test/Transforms/DivRemPairs/PowerPC/div-rem-pairs.ll create mode 100644 llvm/test/Transforms/DivRemPairs/PowerPC/lit.local.cfg create mode 100644 llvm/test/Transforms/DivRemPairs/X86/div-rem-pairs.ll create mode 100644 llvm/test/Transforms/DivRemPairs/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/EarlyCSE/AArch64/intrinsics.ll create mode 100644 llvm/test/Transforms/EarlyCSE/AArch64/ldstN.ll create mode 100644 llvm/test/Transforms/EarlyCSE/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/EarlyCSE/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/EarlyCSE/AMDGPU/memrealtime.ll create mode 100644 llvm/test/Transforms/EarlyCSE/and_or.ll create mode 100644 llvm/test/Transforms/EarlyCSE/atomics.ll create mode 100644 llvm/test/Transforms/EarlyCSE/basic.ll create mode 100644 llvm/test/Transforms/EarlyCSE/commute.ll create mode 100644 llvm/test/Transforms/EarlyCSE/conditional.ll create mode 100644 llvm/test/Transforms/EarlyCSE/const-speculation.ll create mode 100644 llvm/test/Transforms/EarlyCSE/debug-info-undef.ll create mode 100644 llvm/test/Transforms/EarlyCSE/debuginfo-dce.ll create mode 100644 llvm/test/Transforms/EarlyCSE/edge.ll create mode 100644 llvm/test/Transforms/EarlyCSE/fence.ll create mode 100644 llvm/test/Transforms/EarlyCSE/flags.ll create mode 100644 llvm/test/Transforms/EarlyCSE/floatingpoint.ll create mode 100644 llvm/test/Transforms/EarlyCSE/globalsaa-memoryssa.ll create mode 100644 llvm/test/Transforms/EarlyCSE/guards.ll create mode 100644 llvm/test/Transforms/EarlyCSE/instsimplify-dom.ll create mode 100644 llvm/test/Transforms/EarlyCSE/int_sideeffect.ll create mode 100644 llvm/test/Transforms/EarlyCSE/intrinsics.ll create mode 100644 llvm/test/Transforms/EarlyCSE/invariant-loads.ll create mode 100644 llvm/test/Transforms/EarlyCSE/invariant.start.ll create mode 100644 llvm/test/Transforms/EarlyCSE/memoryssa.ll create mode 100644 llvm/test/Transforms/EarlyCSE/pr33406.ll create mode 100644 llvm/test/Transforms/EarlyCSE/preserve_memoryssa.ll create mode 100644 llvm/test/Transforms/EarlyCSE/read-reg.ll create mode 100644 llvm/test/Transforms/EarlyCSE/readnone-mayunwind.ll create mode 100644 llvm/test/Transforms/EliminateAvailableExternally/visibility.ll create mode 100644 llvm/test/Transforms/EntryExitInstrumenter/debug-info.ll create mode 100644 llvm/test/Transforms/EntryExitInstrumenter/mcount.ll create mode 100644 llvm/test/Transforms/ExpandMemCmp/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/ExpandMemCmp/X86/memcmp.ll create mode 100644 llvm/test/Transforms/Float2Int/basic.ll create mode 100644 llvm/test/Transforms/Float2Int/float2int-optnone.ll create mode 100644 llvm/test/Transforms/Float2Int/toolarge.ll create mode 100644 llvm/test/Transforms/ForcedFunctionAttrs/forced.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/2008-09-03-Mutual.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/2008-09-03-ReadNone.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/2008-09-03-ReadOnly.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/2008-09-13-VolatileRead.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/2008-12-29-Constant.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/2009-01-02-LocalStores.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/2010-10-30-volatile.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/assume.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/atomic.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/comdat-ipo.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/convergent.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/incompatible_fn_attrs.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/int_sideeffect.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/naked_functions.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/nocapture.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/nonnull-global.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/nonnull.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/norecurse.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/operand-bundles-scc.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/optnone-simple.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/optnone.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/out-of-bounds-iterator-bug.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/readattrs.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/readnone.ll create mode 100644 llvm/test/Transforms/FunctionAttrs/returned.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/adjustable_threshold.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/comdat.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/funcimport.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/funcimport_alias.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/funcimport_cutoff.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/funcimport_debug.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/funcimport_forcecold.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/funcimport_resolved1.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/funcimport_resolved2.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/funcimport_var2.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/hotness_based_import.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/import_stats.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/inlineasm.ll create mode 100644 llvm/test/Transforms/FunctionImport/Inputs/not-prevailing.ll create mode 100644 llvm/test/Transforms/FunctionImport/adjustable_threshold.ll create mode 100644 llvm/test/Transforms/FunctionImport/comdat.ll create mode 100644 llvm/test/Transforms/FunctionImport/funcimport.ll create mode 100644 llvm/test/Transforms/FunctionImport/funcimport_alias.ll create mode 100644 llvm/test/Transforms/FunctionImport/funcimport_cutoff.ll create mode 100644 llvm/test/Transforms/FunctionImport/funcimport_debug.ll create mode 100644 llvm/test/Transforms/FunctionImport/funcimport_forcecold.ll create mode 100644 llvm/test/Transforms/FunctionImport/funcimport_forcecold_samplepgo.ll create mode 100644 llvm/test/Transforms/FunctionImport/funcimport_resolved.ll create mode 100644 llvm/test/Transforms/FunctionImport/funcimport_var.ll create mode 100644 llvm/test/Transforms/FunctionImport/hotness_based_import.ll create mode 100644 llvm/test/Transforms/FunctionImport/import_stats.ll create mode 100644 llvm/test/Transforms/FunctionImport/inlineasm.ll create mode 100644 llvm/test/Transforms/FunctionImport/not-prevailing.ll create mode 100644 llvm/test/Transforms/GCOVProfiling/function-numbering.ll create mode 100644 llvm/test/Transforms/GCOVProfiling/global-ctor.ll create mode 100644 llvm/test/Transforms/GCOVProfiling/linezero.ll create mode 100644 llvm/test/Transforms/GCOVProfiling/linkagename.ll create mode 100644 llvm/test/Transforms/GCOVProfiling/modules.ll create mode 100644 llvm/test/Transforms/GCOVProfiling/return-block.ll create mode 100644 llvm/test/Transforms/GCOVProfiling/three-element-mdnode.ll create mode 100644 llvm/test/Transforms/GCOVProfiling/version.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-25-DominatedLoop.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-25-InfiniteLoop.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-25-Loop.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-25-NestedLoop.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-25-SinglePredecessor.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-26-InterlockingLoops.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-26-NonRedundant.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-26-PhiErasure.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-30-PredIDom.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-31-NoDomInherit.ll create mode 100644 llvm/test/Transforms/GVN/2007-07-31-RedundantPhi.ll create mode 100644 llvm/test/Transforms/GVN/2008-02-12-UndefLoad.ll create mode 100644 llvm/test/Transforms/GVN/2008-02-13-NewPHI.ll create mode 100644 llvm/test/Transforms/GVN/2008-07-02-Unreachable.ll create mode 100644 llvm/test/Transforms/GVN/2008-12-09-SelfRemove.ll create mode 100644 llvm/test/Transforms/GVN/2008-12-12-RLE-Crash.ll create mode 100644 llvm/test/Transforms/GVN/2008-12-14-rle-reanalyze.ll create mode 100644 llvm/test/Transforms/GVN/2008-12-15-CacheVisited.ll create mode 100644 llvm/test/Transforms/GVN/2009-01-21-SortInvalidation.ll create mode 100644 llvm/test/Transforms/GVN/2009-01-22-SortInvalidation.ll create mode 100644 llvm/test/Transforms/GVN/2009-03-10-PREOnVoid.ll create mode 100644 llvm/test/Transforms/GVN/2009-07-13-MemDepSortFail.ll create mode 100644 llvm/test/Transforms/GVN/2009-11-12-MemDepMallocBitCast.ll create mode 100644 llvm/test/Transforms/GVN/2010-03-31-RedundantPHIs.ll create mode 100644 llvm/test/Transforms/GVN/2010-05-08-OneBit.ll create mode 100644 llvm/test/Transforms/GVN/2010-11-13-Simplify.ll create mode 100644 llvm/test/Transforms/GVN/2011-04-27-phioperands.ll create mode 100644 llvm/test/Transforms/GVN/2011-07-07-MatchIntrinsicExtract.ll create mode 100644 llvm/test/Transforms/GVN/2011-09-07-TypeIdFor.ll create mode 100644 llvm/test/Transforms/GVN/2012-05-22-PreCrash.ll create mode 100644 llvm/test/Transforms/GVN/2016-08-30-MaskedScatterGather.ll create mode 100644 llvm/test/Transforms/GVN/MemdepMiscompile.ll create mode 100644 llvm/test/Transforms/GVN/PRE/2009-02-17-LoadPRECrash.ll create mode 100644 llvm/test/Transforms/GVN/PRE/2009-06-17-InvalidPRE.ll create mode 100644 llvm/test/Transforms/GVN/PRE/2011-06-01-NonLocalMemdepMiscompile.ll create mode 100644 llvm/test/Transforms/GVN/PRE/2017-06-28-pre-load-dbgloc.ll create mode 100644 llvm/test/Transforms/GVN/PRE/2017-10-16-LoadPRECrash.ll create mode 100644 llvm/test/Transforms/GVN/PRE/2018-06-08-pre-load-dbgloc-no-null-opt.ll create mode 100644 llvm/test/Transforms/GVN/PRE/atomic.ll create mode 100644 llvm/test/Transforms/GVN/PRE/invariant-load.ll create mode 100644 llvm/test/Transforms/GVN/PRE/load-metadata.ll create mode 100644 llvm/test/Transforms/GVN/PRE/load-pre-align.ll create mode 100644 llvm/test/Transforms/GVN/PRE/load-pre-licm.ll create mode 100644 llvm/test/Transforms/GVN/PRE/load-pre-nonlocal.ll create mode 100644 llvm/test/Transforms/GVN/PRE/local-pre.ll create mode 100644 llvm/test/Transforms/GVN/PRE/lpre-call-wrap-2.ll create mode 100644 llvm/test/Transforms/GVN/PRE/lpre-call-wrap.ll create mode 100644 llvm/test/Transforms/GVN/PRE/nonintegral.ll create mode 100644 llvm/test/Transforms/GVN/PRE/phi-translate-2.ll create mode 100644 llvm/test/Transforms/GVN/PRE/phi-translate.ll create mode 100644 llvm/test/Transforms/GVN/PRE/pre-after-rle.ll create mode 100644 llvm/test/Transforms/GVN/PRE/pre-basic-add.ll create mode 100644 llvm/test/Transforms/GVN/PRE/pre-gep-load.ll create mode 100644 llvm/test/Transforms/GVN/PRE/pre-jt-add.ll create mode 100644 llvm/test/Transforms/GVN/PRE/pre-load-guards.ll create mode 100644 llvm/test/Transforms/GVN/PRE/pre-load-implicit-cf-updates.ll create mode 100644 llvm/test/Transforms/GVN/PRE/pre-load.ll create mode 100644 llvm/test/Transforms/GVN/PRE/pre-no-cost-phi.ll create mode 100644 llvm/test/Transforms/GVN/PRE/pre-poison-add.ll create mode 100644 llvm/test/Transforms/GVN/PRE/pre-single-pred.ll create mode 100644 llvm/test/Transforms/GVN/PRE/preserve-tbaa.ll create mode 100644 llvm/test/Transforms/GVN/PRE/rle-addrspace-cast.ll create mode 100644 llvm/test/Transforms/GVN/PRE/rle-phi-translate.ll create mode 100644 llvm/test/Transforms/GVN/PRE/rle-semidominated.ll create mode 100644 llvm/test/Transforms/GVN/PRE/rle.ll create mode 100644 llvm/test/Transforms/GVN/PRE/volatile.ll create mode 100644 llvm/test/Transforms/GVN/assume-equal.ll create mode 100644 llvm/test/Transforms/GVN/basic-undef-test.ll create mode 100644 llvm/test/Transforms/GVN/basic.ll create mode 100644 llvm/test/Transforms/GVN/big-endian.ll create mode 100644 llvm/test/Transforms/GVN/bitcast-of-call.ll create mode 100644 llvm/test/Transforms/GVN/br-identical.ll create mode 100644 llvm/test/Transforms/GVN/callbr-loadpre-critedge.ll create mode 100644 llvm/test/Transforms/GVN/callbr-scalarpre-critedge.ll create mode 100644 llvm/test/Transforms/GVN/calloc-load-removal.ll create mode 100644 llvm/test/Transforms/GVN/calls-nonlocal.ll create mode 100644 llvm/test/Transforms/GVN/calls-readonly.ll create mode 100644 llvm/test/Transforms/GVN/commute.ll create mode 100644 llvm/test/Transforms/GVN/cond_br.ll create mode 100644 llvm/test/Transforms/GVN/cond_br2.ll create mode 100644 llvm/test/Transforms/GVN/condprop.ll create mode 100644 llvm/test/Transforms/GVN/crash-no-aa.ll create mode 100644 llvm/test/Transforms/GVN/crash.ll create mode 100644 llvm/test/Transforms/GVN/dbg-redundant-load.ll create mode 100644 llvm/test/Transforms/GVN/debugloc.ll create mode 100644 llvm/test/Transforms/GVN/edge.ll create mode 100644 llvm/test/Transforms/GVN/fence.ll create mode 100644 llvm/test/Transforms/GVN/flags.ll create mode 100644 llvm/test/Transforms/GVN/fold-const-expr.ll create mode 100644 llvm/test/Transforms/GVN/fpmath.ll create mode 100644 llvm/test/Transforms/GVN/funclet.ll create mode 100644 llvm/test/Transforms/GVN/int_sideeffect.ll create mode 100644 llvm/test/Transforms/GVN/invariant.group.ll create mode 100644 llvm/test/Transforms/GVN/invariant.start.ll create mode 100644 llvm/test/Transforms/GVN/lifetime-simple.ll create mode 100644 llvm/test/Transforms/GVN/load-constant-mem.ll create mode 100644 llvm/test/Transforms/GVN/load-from-unreachable-predecessor.ll create mode 100644 llvm/test/Transforms/GVN/malloc-load-removal.ll create mode 100644 llvm/test/Transforms/GVN/no-mem-dep-info.ll create mode 100644 llvm/test/Transforms/GVN/no_speculative_loads_with_asan.ll create mode 100644 llvm/test/Transforms/GVN/noalias.ll create mode 100644 llvm/test/Transforms/GVN/non-integral-pointers.ll create mode 100644 llvm/test/Transforms/GVN/non-local-offset.ll create mode 100644 llvm/test/Transforms/GVN/nonescaping-malloc.ll create mode 100644 llvm/test/Transforms/GVN/null-aliases-nothing.ll create mode 100644 llvm/test/Transforms/GVN/opt-remarks.ll create mode 100644 llvm/test/Transforms/GVN/phi-translate-partial-alias.ll create mode 100644 llvm/test/Transforms/GVN/pr10820.ll create mode 100644 llvm/test/Transforms/GVN/pr12979.ll create mode 100644 llvm/test/Transforms/GVN/pr14166.ll create mode 100644 llvm/test/Transforms/GVN/pr17732.ll create mode 100644 llvm/test/Transforms/GVN/pr17852.ll create mode 100644 llvm/test/Transforms/GVN/pr24397.ll create mode 100644 llvm/test/Transforms/GVN/pr24426.ll create mode 100644 llvm/test/Transforms/GVN/pr25440.ll create mode 100644 llvm/test/Transforms/GVN/pr28562.ll create mode 100644 llvm/test/Transforms/GVN/pr28879.ll create mode 100644 llvm/test/Transforms/GVN/pr32314.ll create mode 100644 llvm/test/Transforms/GVN/pr34908.ll create mode 100644 llvm/test/Transforms/GVN/pr36063.ll create mode 100644 llvm/test/Transforms/GVN/pre-compare.ll create mode 100644 llvm/test/Transforms/GVN/pre-new-inst.ll create mode 100644 llvm/test/Transforms/GVN/propagate-ir-flags.ll create mode 100644 llvm/test/Transforms/GVN/range.ll create mode 100644 llvm/test/Transforms/GVN/readattrs.ll create mode 100644 llvm/test/Transforms/GVN/rle-must-alias.ll create mode 100644 llvm/test/Transforms/GVN/rle-no-phi-translate.ll create mode 100644 llvm/test/Transforms/GVN/rle-nonlocal.ll create mode 100644 llvm/test/Transforms/GVN/stale-loop-info.ll create mode 100644 llvm/test/Transforms/GVN/tbaa.ll create mode 100644 llvm/test/Transforms/GVN/unreachable-predecessor.ll create mode 100644 llvm/test/Transforms/GVN/unreachable_block_infinite_loop.ll create mode 100644 llvm/test/Transforms/GVN/volatile-nonvolatile.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-call.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-convergent.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-inline.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-md.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-more-than-two-branches.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-mssa.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-newgvn.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-pr20242.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-pr22005.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-pr28606.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-pr28933.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-pr31891.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-recursive-geps.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-simplify-phi.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-unsafe-pr31729.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist-very-busy.ll create mode 100644 llvm/test/Transforms/GVNHoist/hoist.ll create mode 100644 llvm/test/Transforms/GVNHoist/infinite-loop-direct.ll create mode 100644 llvm/test/Transforms/GVNHoist/infinite-loop-indirect.ll create mode 100644 llvm/test/Transforms/GVNHoist/int_sideeffect.ll create mode 100644 llvm/test/Transforms/GVNHoist/ld_hoist1.ll create mode 100644 llvm/test/Transforms/GVNHoist/ld_hoist_st_sink.ll create mode 100644 llvm/test/Transforms/GVNHoist/non-trivial-phi.ll create mode 100644 llvm/test/Transforms/GVNHoist/pr28626.ll create mode 100644 llvm/test/Transforms/GVNHoist/pr29031.ll create mode 100644 llvm/test/Transforms/GVNHoist/pr29034.ll create mode 100644 llvm/test/Transforms/GVNHoist/pr30216.ll create mode 100644 llvm/test/Transforms/GVNHoist/pr30499.ll create mode 100644 llvm/test/Transforms/GVNHoist/pr35222-hoist-load.ll create mode 100644 llvm/test/Transforms/GVNHoist/pr36787.ll create mode 100644 llvm/test/Transforms/GVNHoist/pr37445.ll create mode 100644 llvm/test/Transforms/GVNHoist/pr37808.ll create mode 100644 llvm/test/Transforms/GVNHoist/pr38807.ll create mode 100644 llvm/test/Transforms/GVNSink/dither.ll create mode 100644 llvm/test/Transforms/GVNSink/indirect-call.ll create mode 100644 llvm/test/Transforms/GVNSink/int_sideeffect.ll create mode 100644 llvm/test/Transforms/GVNSink/sink-combine-metadata.ll create mode 100644 llvm/test/Transforms/GVNSink/sink-common-code.ll create mode 100644 llvm/test/Transforms/GVNSink/struct.ll create mode 100644 llvm/test/Transforms/GlobalDCE/2002-07-17-CastRef.ll create mode 100644 llvm/test/Transforms/GlobalDCE/2002-07-17-ConstantRef.ll create mode 100644 llvm/test/Transforms/GlobalDCE/2002-08-17-FunctionDGE.ll create mode 100644 llvm/test/Transforms/GlobalDCE/2002-08-17-WorkListTest.ll create mode 100644 llvm/test/Transforms/GlobalDCE/2002-09-12-Redeletion.ll create mode 100644 llvm/test/Transforms/GlobalDCE/2003-07-01-SelfReference.ll create mode 100644 llvm/test/Transforms/GlobalDCE/2003-10-09-PreserveWeakGlobals.ll create mode 100644 llvm/test/Transforms/GlobalDCE/2009-01-05-DeadAliases.ll create mode 100644 llvm/test/Transforms/GlobalDCE/2009-02-17-AliasUsesAliasee.ll create mode 100644 llvm/test/Transforms/GlobalDCE/basicvariabletest.ll create mode 100644 llvm/test/Transforms/GlobalDCE/comdats.ll create mode 100644 llvm/test/Transforms/GlobalDCE/complex-constantexpr.ll create mode 100644 llvm/test/Transforms/GlobalDCE/crash-assertingvh.ll create mode 100644 llvm/test/Transforms/GlobalDCE/deadblockaddr.ll create mode 100644 llvm/test/Transforms/GlobalDCE/externally_available.ll create mode 100644 llvm/test/Transforms/GlobalDCE/global-ifunc.ll create mode 100644 llvm/test/Transforms/GlobalDCE/global_ctors.ll create mode 100644 llvm/test/Transforms/GlobalDCE/global_ctors_integration.ll create mode 100644 llvm/test/Transforms/GlobalDCE/indirectbr.ll create mode 100644 llvm/test/Transforms/GlobalMerge/alignment-2.ll create mode 100644 llvm/test/Transforms/GlobalMerge/alignment.ll create mode 100644 llvm/test/Transforms/GlobalMerge/basic.ll create mode 100644 llvm/test/Transforms/GlobalMerge/debug-info.ll create mode 100644 llvm/test/Transforms/GlobalMerge/used.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2004-10-10-CastStoreOnce.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2005-06-15-LocalizeConstExprCrash.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2005-09-27-Crash.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2006-07-07-InlineAsmCrash.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2006-11-01-ShrinkGlobalPhiCrash.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2007-04-05-Crash.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2007-05-13-Crash.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2007-06-04-PackedStruct.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2007-11-09-GEP-GEP-Crash.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2008-01-03-Crash.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2008-01-13-OutOfRangeSROA.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2008-01-29-VolatileGlobal.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2008-04-26-SROA-Global-Align.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2008-07-17-addrspace.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2008-12-16-HeapSRACrash-2.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2008-12-16-HeapSRACrash.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2009-01-13-phi-user.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2009-02-15-BitcastAlias.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2009-02-15-ResolveAlias.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2009-03-05-dbg.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2009-03-06-Anonymous.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2009-03-07-PromotePtrToBool.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2009-06-01-RecursivePHI.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2009-11-16-BrokenPerformHeapAllocSRoA.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2009-11-16-MallocSingleStoreToGlobalVar.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2010-02-25-MallocPromote.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2010-02-26-MallocSROA.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2010-10-19-WeakOdr.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2011-04-09-EmptyGlobalCtors.ll create mode 100644 llvm/test/Transforms/GlobalOpt/2012-05-11-blockaddress.ll create mode 100644 llvm/test/Transforms/GlobalOpt/GSROA-section.ll create mode 100644 llvm/test/Transforms/GlobalOpt/MallocSROA-section-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/MallocSROA-section.ll create mode 100644 llvm/test/Transforms/GlobalOpt/PowerPC/coldcc_coldsites.ll create mode 100644 llvm/test/Transforms/GlobalOpt/PowerPC/lit.local.cfg create mode 100644 llvm/test/Transforms/GlobalOpt/SROA-section.ll create mode 100644 llvm/test/Transforms/GlobalOpt/alias-resolve.ll create mode 100644 llvm/test/Transforms/GlobalOpt/alias-used-address-space.ll create mode 100644 llvm/test/Transforms/GlobalOpt/alias-used-section.ll create mode 100644 llvm/test/Transforms/GlobalOpt/alias-used.ll create mode 100644 llvm/test/Transforms/GlobalOpt/amdgcn-ctor-alloca.ll create mode 100644 llvm/test/Transforms/GlobalOpt/array-elem-refs.ll create mode 100644 llvm/test/Transforms/GlobalOpt/assume.ll create mode 100644 llvm/test/Transforms/GlobalOpt/atexit.ll create mode 100644 llvm/test/Transforms/GlobalOpt/atomic.ll create mode 100644 llvm/test/Transforms/GlobalOpt/available_externally_global_ctors.ll create mode 100644 llvm/test/Transforms/GlobalOpt/basictest.ll create mode 100644 llvm/test/Transforms/GlobalOpt/blockaddress.ll create mode 100644 llvm/test/Transforms/GlobalOpt/cleanup-pointer-root-users.ll create mode 100644 llvm/test/Transforms/GlobalOpt/coldcc_stress_test.ll create mode 100644 llvm/test/Transforms/GlobalOpt/compiler-used.ll create mode 100644 llvm/test/Transforms/GlobalOpt/constantexpr-dangle.ll create mode 100644 llvm/test/Transforms/GlobalOpt/constantfold-initializers.ll create mode 100644 llvm/test/Transforms/GlobalOpt/crash-2.ll create mode 100644 llvm/test/Transforms/GlobalOpt/crash.ll create mode 100644 llvm/test/Transforms/GlobalOpt/ctor-list-opt-constexpr.ll create mode 100644 llvm/test/Transforms/GlobalOpt/ctor-list-opt-inbounds.ll create mode 100644 llvm/test/Transforms/GlobalOpt/ctor-list-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/cxx-dtor.ll create mode 100644 llvm/test/Transforms/GlobalOpt/deaddeclaration.ll create mode 100644 llvm/test/Transforms/GlobalOpt/deadfunction.ll create mode 100644 llvm/test/Transforms/GlobalOpt/deadglobal-2.ll create mode 100644 llvm/test/Transforms/GlobalOpt/deadglobal.ll create mode 100644 llvm/test/Transforms/GlobalOpt/evaluate-bitcast.ll create mode 100644 llvm/test/Transforms/GlobalOpt/evaluate-call-errors.ll create mode 100644 llvm/test/Transforms/GlobalOpt/evaluate-call.ll create mode 100644 llvm/test/Transforms/GlobalOpt/evaluate-constfold-call.ll create mode 100644 llvm/test/Transforms/GlobalOpt/externally-initialized-aggregate.ll create mode 100644 llvm/test/Transforms/GlobalOpt/externally-initialized-global-ctr.ll create mode 100644 llvm/test/Transforms/GlobalOpt/externally-initialized.ll create mode 100644 llvm/test/Transforms/GlobalOpt/fastcc.ll create mode 100644 llvm/test/Transforms/GlobalOpt/global-demotion.ll create mode 100644 llvm/test/Transforms/GlobalOpt/globalsra-multigep.ll create mode 100644 llvm/test/Transforms/GlobalOpt/globalsra-partial.ll create mode 100644 llvm/test/Transforms/GlobalOpt/globalsra-unknown-index.ll create mode 100644 llvm/test/Transforms/GlobalOpt/globalsra.ll create mode 100644 llvm/test/Transforms/GlobalOpt/heap-sra-1-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/heap-sra-1.ll create mode 100644 llvm/test/Transforms/GlobalOpt/heap-sra-2-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/heap-sra-2.ll create mode 100644 llvm/test/Transforms/GlobalOpt/heap-sra-3-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/heap-sra-3.ll create mode 100644 llvm/test/Transforms/GlobalOpt/heap-sra-4-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/heap-sra-4.ll create mode 100644 llvm/test/Transforms/GlobalOpt/heap-sra-phi-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/heap-sra-phi.ll create mode 100644 llvm/test/Transforms/GlobalOpt/int_sideeffect.ll create mode 100644 llvm/test/Transforms/GlobalOpt/integer-bool-dwarf.ll create mode 100644 llvm/test/Transforms/GlobalOpt/integer-bool.ll create mode 100644 llvm/test/Transforms/GlobalOpt/invariant-nodatalayout.ll create mode 100644 llvm/test/Transforms/GlobalOpt/invariant.group.ll create mode 100644 llvm/test/Transforms/GlobalOpt/invariant.ll create mode 100644 llvm/test/Transforms/GlobalOpt/invoke.ll create mode 100644 llvm/test/Transforms/GlobalOpt/iterate.ll create mode 100644 llvm/test/Transforms/GlobalOpt/load-store-global-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/load-store-global.ll create mode 100644 llvm/test/Transforms/GlobalOpt/localize-constexpr-debuginfo.ll create mode 100644 llvm/test/Transforms/GlobalOpt/localize-constexpr.ll create mode 100644 llvm/test/Transforms/GlobalOpt/malloc-promote-1-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/malloc-promote-1.ll create mode 100644 llvm/test/Transforms/GlobalOpt/malloc-promote-2-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/malloc-promote-2.ll create mode 100644 llvm/test/Transforms/GlobalOpt/malloc-promote-3.ll create mode 100644 llvm/test/Transforms/GlobalOpt/memcpy.ll create mode 100644 llvm/test/Transforms/GlobalOpt/memset-null.ll create mode 100644 llvm/test/Transforms/GlobalOpt/memset.ll create mode 100644 llvm/test/Transforms/GlobalOpt/metadata.ll create mode 100644 llvm/test/Transforms/GlobalOpt/musttail_cc.ll create mode 100644 llvm/test/Transforms/GlobalOpt/naked_functions.ll create mode 100644 llvm/test/Transforms/GlobalOpt/phi-select.ll create mode 100644 llvm/test/Transforms/GlobalOpt/pr21191.ll create mode 100644 llvm/test/Transforms/GlobalOpt/pr33686.ll create mode 100644 llvm/test/Transforms/GlobalOpt/preserve-comdats.ll create mode 100644 llvm/test/Transforms/GlobalOpt/shrink-address-to-bool.ll create mode 100644 llvm/test/Transforms/GlobalOpt/shrink-global-to-bool-check-debug.ll create mode 100644 llvm/test/Transforms/GlobalOpt/static-const-bitcast.ll create mode 100644 llvm/test/Transforms/GlobalOpt/storepointer-compare-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/storepointer-compare.ll create mode 100644 llvm/test/Transforms/GlobalOpt/storepointer-no-null-opt.ll create mode 100644 llvm/test/Transforms/GlobalOpt/storepointer.ll create mode 100644 llvm/test/Transforms/GlobalOpt/tls.ll create mode 100644 llvm/test/Transforms/GlobalOpt/trivialstore.ll create mode 100644 llvm/test/Transforms/GlobalOpt/undef-init.ll create mode 100644 llvm/test/Transforms/GlobalOpt/unnamed-addr.ll create mode 100644 llvm/test/Transforms/GlobalOpt/zeroinitializer-gep-load.ll create mode 100644 llvm/test/Transforms/GlobalSplit/basic.ll create mode 100644 llvm/test/Transforms/GlobalSplit/non-beneficial.ll create mode 100644 llvm/test/Transforms/GlobalSplit/nonlocal.ll create mode 100644 llvm/test/Transforms/GuardWidening/basic.ll create mode 100644 llvm/test/Transforms/GuardWidening/basic_widenable_condition_guards.ll create mode 100644 llvm/test/Transforms/GuardWidening/loop-schedule.ll create mode 100644 llvm/test/Transforms/GuardWidening/mixed_guards.ll create mode 100644 llvm/test/Transforms/GuardWidening/range-check-merging.ll create mode 100644 llvm/test/Transforms/GuardWidening/widen-frequent-branches.ll create mode 100644 llvm/test/Transforms/HotColdSplit/X86/do-not-split.ll create mode 100644 llvm/test/Transforms/HotColdSplit/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/HotColdSplit/addr-taken.ll create mode 100644 llvm/test/Transforms/HotColdSplit/apply-noreturn-bonus.ll create mode 100644 llvm/test/Transforms/HotColdSplit/apply-penalty-for-inputs.ll create mode 100644 llvm/test/Transforms/HotColdSplit/apply-penalty-for-outputs.ll create mode 100644 llvm/test/Transforms/HotColdSplit/apply-successor-penalty.ll create mode 100644 llvm/test/Transforms/HotColdSplit/coldentrycount.ll create mode 100644 llvm/test/Transforms/HotColdSplit/delete-use-without-def-dbg-val.ll create mode 100644 llvm/test/Transforms/HotColdSplit/duplicate-phi-preds-crash.ll create mode 100644 llvm/test/Transforms/HotColdSplit/eh-pads.ll create mode 100644 llvm/test/Transforms/HotColdSplit/eh-typeid-for.ll create mode 100644 llvm/test/Transforms/HotColdSplit/forward-dfs-reaches-marked-block.ll create mode 100644 llvm/test/Transforms/HotColdSplit/lifetime-markers-on-inputs-1.ll create mode 100644 llvm/test/Transforms/HotColdSplit/lifetime-markers-on-inputs-2.ll create mode 100644 llvm/test/Transforms/HotColdSplit/mark-the-whole-func-cold.ll create mode 100644 llvm/test/Transforms/HotColdSplit/minsize.ll create mode 100644 llvm/test/Transforms/HotColdSplit/multiple-exits.ll create mode 100644 llvm/test/Transforms/HotColdSplit/noreturn.ll create mode 100644 llvm/test/Transforms/HotColdSplit/outline-cold-asm.ll create mode 100644 llvm/test/Transforms/HotColdSplit/outline-disjoint-diamonds.ll create mode 100644 llvm/test/Transforms/HotColdSplit/outline-if-then-else.ll create mode 100644 llvm/test/Transforms/HotColdSplit/outline-multiple-entry-region.ll create mode 100644 llvm/test/Transforms/HotColdSplit/outline-while-loop.ll create mode 100644 llvm/test/Transforms/HotColdSplit/phi-with-distinct-outlined-values.ll create mode 100644 llvm/test/Transforms/HotColdSplit/region-overlap.ll create mode 100644 llvm/test/Transforms/HotColdSplit/resume.ll create mode 100644 llvm/test/Transforms/HotColdSplit/split-cold-2.ll create mode 100644 llvm/test/Transforms/HotColdSplit/split-out-dbg-val-of-arg.ll create mode 100644 llvm/test/Transforms/HotColdSplit/split-phis-in-exit-blocks.ll create mode 100644 llvm/test/Transforms/HotColdSplit/succ-block-with-self-edge.ll create mode 100644 llvm/test/Transforms/HotColdSplit/swifterror.ll create mode 100644 llvm/test/Transforms/HotColdSplit/unwind.ll create mode 100644 llvm/test/Transforms/IPConstantProp/2008-06-09-WeakProp.ll create mode 100644 llvm/test/Transforms/IPConstantProp/2009-09-24-byval-ptr.ll create mode 100644 llvm/test/Transforms/IPConstantProp/PR16052.ll create mode 100644 llvm/test/Transforms/IPConstantProp/PR26044.ll create mode 100644 llvm/test/Transforms/IPConstantProp/arg-count-mismatch.ll create mode 100644 llvm/test/Transforms/IPConstantProp/arg-type-mismatch.ll create mode 100644 llvm/test/Transforms/IPConstantProp/comdat-ipo.ll create mode 100644 llvm/test/Transforms/IPConstantProp/dangling-block-address.ll create mode 100644 llvm/test/Transforms/IPConstantProp/deadarg.ll create mode 100644 llvm/test/Transforms/IPConstantProp/fp-bc-icmp-const-fold.ll create mode 100644 llvm/test/Transforms/IPConstantProp/global.ll create mode 100644 llvm/test/Transforms/IPConstantProp/multiple_callbacks.ll create mode 100644 llvm/test/Transforms/IPConstantProp/musttail-call.ll create mode 100644 llvm/test/Transforms/IPConstantProp/naked-return.ll create mode 100644 llvm/test/Transforms/IPConstantProp/openmp_parallel_for.ll create mode 100644 llvm/test/Transforms/IPConstantProp/pthreads.ll create mode 100644 llvm/test/Transforms/IPConstantProp/recursion.ll create mode 100644 llvm/test/Transforms/IPConstantProp/remove-call-inst.ll create mode 100644 llvm/test/Transforms/IPConstantProp/return-argument.ll create mode 100644 llvm/test/Transforms/IPConstantProp/return-constant.ll create mode 100644 llvm/test/Transforms/IPConstantProp/return-constants.ll create mode 100644 llvm/test/Transforms/IPConstantProp/solve-after-each-resolving-undefs-for-function.ll create mode 100644 llvm/test/Transforms/IPConstantProp/thread_local_acs.ll create mode 100644 llvm/test/Transforms/IPConstantProp/user-with-multiple-uses.ll create mode 100644 llvm/test/Transforms/IRCE/add-metadata-pre-post-loops.ll create mode 100644 llvm/test/Transforms/IRCE/bad-loop-structure.ll create mode 100644 llvm/test/Transforms/IRCE/bad_expander.ll create mode 100644 llvm/test/Transforms/IRCE/bug-loop-varying-upper-limit.ll create mode 100644 llvm/test/Transforms/IRCE/bug-mismatched-types.ll create mode 100644 llvm/test/Transforms/IRCE/clamp.ll create mode 100644 llvm/test/Transforms/IRCE/conjunctive-checks.ll create mode 100644 llvm/test/Transforms/IRCE/correct-loop-info.ll create mode 100644 llvm/test/Transforms/IRCE/decrementing-loop.ll create mode 100644 llvm/test/Transforms/IRCE/empty_ranges.ll create mode 100644 llvm/test/Transforms/IRCE/eq_ne.ll create mode 100644 llvm/test/Transforms/IRCE/low-becount.ll create mode 100644 llvm/test/Transforms/IRCE/multiple-access-no-preloop.ll create mode 100644 llvm/test/Transforms/IRCE/non_known_positive_end.ll create mode 100644 llvm/test/Transforms/IRCE/not-likely-taken.ll create mode 100644 llvm/test/Transforms/IRCE/only-lower-check.ll create mode 100644 llvm/test/Transforms/IRCE/only-upper-check.ll create mode 100644 llvm/test/Transforms/IRCE/optimistic_scev.ll create mode 100644 llvm/test/Transforms/IRCE/pre_post_loops.ll create mode 100644 llvm/test/Transforms/IRCE/range_intersect_miscompile.ll create mode 100644 llvm/test/Transforms/IRCE/ranges_of_different_types.ll create mode 100644 llvm/test/Transforms/IRCE/rc-negative-bound.ll create mode 100644 llvm/test/Transforms/IRCE/single-access-no-preloop.ll create mode 100644 llvm/test/Transforms/IRCE/single-access-with-preloop.ll create mode 100644 llvm/test/Transforms/IRCE/skip-profitability-checks.ll create mode 100644 llvm/test/Transforms/IRCE/stride_more_than_1.ll create mode 100644 llvm/test/Transforms/IRCE/unhandled.ll create mode 100644 llvm/test/Transforms/IRCE/unsigned_comparisons_ugt.ll create mode 100644 llvm/test/Transforms/IRCE/unsigned_comparisons_ult.ll create mode 100644 llvm/test/Transforms/IRCE/variable-loop-bounds.ll create mode 100644 llvm/test/Transforms/IRCE/wide_indvar.ll create mode 100644 llvm/test/Transforms/IRCE/with-parent-loops.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2002-09-09-PointerIndVar.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2003-04-16-ExprAnalysis.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2003-09-23-NotAtTop.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2003-12-10-RemoveInstrCrash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2003-12-15-Crash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2004-03-10-PHIInsertionBug.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2004-04-05-InvokeCastCrash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2004-04-07-ScalarEvolutionCrash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2005-02-11-InvokeCrash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2005-02-17-TruncateExprCrash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2005-02-26-ExitValueCompute.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2005-06-15-InstMoveCrash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2005-11-18-Crash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2006-03-31-NegativeStride.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2006-06-16-Indvar-LCSSA-Crash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2006-09-20-LFTR-Crash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2006-12-10-BitCast.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2007-01-06-TripCount.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2007-06-06-DeleteDanglesPtr.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2007-11-23-BitcastCrash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2008-06-15-SCEVExpanderBug.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2008-09-02-IVType.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2008-10-03-CouldNotCompute.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2008-11-25-APFloatAssert.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2009-04-14-shorten_iv_vars.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2009-04-15-shorten-iv-vars-2.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2009-04-22-IndvarCrash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2009-04-27-Floating.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2009-05-24-useafterfree.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2011-09-10-widen-nsw.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2011-09-19-vectoriv.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2011-09-27-hoistsext.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2011-10-27-lftrnull.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2011-11-01-lftrptr.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2011-11-15-multiexit.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2011-11-17-selfphi.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2012-07-17-lftr-undef.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2012-10-19-congruent-constant.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/2014-06-21-congruent-constant.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/IndVarSimplify/AMDGPU/no-widen-to-i64.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/NVPTX/lit.local.cfg create mode 100644 llvm/test/Transforms/IndVarSimplify/NVPTX/no-widen-expensive.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/ada-loops.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/ashr-tripcount.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/avoid-i0.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/backedge-on-min-max.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/bec-cmp.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/canonicalize-cmp.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/casted-argument.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/const_phi.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/constant-fold.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/constant_result.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/crash.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/dangling-use.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/divide-pointer.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/dont-recompute.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/drop-exact.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/elim-extend.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/eliminate-comparison.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/eliminate-max.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/eliminate-rem.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/eliminate-trunc.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/exit_value_test2.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/exit_value_test3.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/exit_value_tests.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/floating-point-iv.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/full_widening.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/huge_muls.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/indirectbr.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/inner-loop-by-latch-cond.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/inner-loop.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/interesting-invoke-use.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/iterationCount_zext_or_trunc.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/iv-fold.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/iv-sext.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/iv-widen-elim-ext.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/iv-widen.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/iv-zext.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lcssa-preservation.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lftr-address-space-pointers.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lftr-extend-const.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lftr-other-uses.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lftr-promote.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lftr-reuse.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lftr-udiv-tripcount.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lftr-wide-trip-count.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lftr-zext.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lftr_disabled.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lftr_simple.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop-invariant-conditions.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate10.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate11.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate7.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate8.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate9.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate_1.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate_2.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate_3.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate_4.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate_5.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/loop_evaluate_6.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/lrev-existing-umin.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/masked-iv.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/no-iv-rewrite.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/overflow-intrinsics.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/phi-uses-value-multiple-times.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/polynomial-expand.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/post-inc-range.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr18223.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr20680.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr22222.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr24356.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr24783.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr24804.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr24952.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr24956.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr25047.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr25051.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr25060.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr25360.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr25421.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr25576.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr25578.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr26973.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr26974.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr27133.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr28935.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr32045.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr35406.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr38674.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr38855.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr39673.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/pr40454.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/preserve-signed-wrap.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/promote-iv-to-eliminate-casts.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/replace-iv-with-loop-invariant.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/replace-loop-exit-folds.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/replace-sdiv-by-udiv.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/replace-srem-by-urem.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/rewrite-loop-exit-value.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/scev-phi-debug-info.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/scevexpander-phi-base-case.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/sharpen-range.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/shrunk-constant.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/signed-trip-count.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/single-element-range.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/sink-alloca.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/sink-from-preheader.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/sink-trapping.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/strengthen-overflow.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/tripcount_compute.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/tripcount_infinite.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/udiv-invariant-but-traps.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/udiv.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/uglygep.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/ult-sub-to-eq.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/use-range-metadata.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/variable-stride-ivs-0.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/variable-stride-ivs-1.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/verify-scev.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/widen-loop-comp.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/widen-nsw.ll create mode 100644 llvm/test/Transforms/IndVarSimplify/zext-nuw.ll create mode 100644 llvm/test/Transforms/IndirectBrExpand/basic.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/basic.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/icmp.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/infer-address-space.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/infer-addrspacecast.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/infer-getelementptr.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/intrinsics.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/old-pass-regressions.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/select.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/AMDGPU/volatile.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/NVPTX/bug31948.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/NVPTX/clone_constexpr.ll create mode 100644 llvm/test/Transforms/InferAddressSpaces/NVPTX/lit.local.cfg create mode 100644 llvm/test/Transforms/InferFunctionAttrs/annotate.ll create mode 100644 llvm/test/Transforms/InferFunctionAttrs/no-proto.ll create mode 100644 llvm/test/Transforms/InferFunctionAttrs/norecurse_debug.ll create mode 100644 llvm/test/Transforms/InferFunctionAttrs/pr30455.ll create mode 100644 llvm/test/Transforms/Inline/2003-09-14-InlineValue.ll create mode 100644 llvm/test/Transforms/Inline/2003-09-22-PHINodeInlineFail.ll create mode 100644 llvm/test/Transforms/Inline/2003-09-22-PHINodesInExceptionDest.ll create mode 100644 llvm/test/Transforms/Inline/2003-09-22-PHINodesInNormalInvokeDest.ll create mode 100644 llvm/test/Transforms/Inline/2003-10-13-AllocaDominanceProblem.ll create mode 100644 llvm/test/Transforms/Inline/2004-04-15-InlineDeletesCall.ll create mode 100644 llvm/test/Transforms/Inline/2004-04-20-InlineLinkOnce.ll create mode 100644 llvm/test/Transforms/Inline/2004-10-17-InlineFunctionWithoutReturn.ll create mode 100644 llvm/test/Transforms/Inline/2006-01-14-CallGraphUpdate.ll create mode 100644 llvm/test/Transforms/Inline/2006-07-12-InlinePruneCGUpdate.ll create mode 100644 llvm/test/Transforms/Inline/2006-11-09-InlineCGUpdate-2.ll create mode 100644 llvm/test/Transforms/Inline/2006-11-09-InlineCGUpdate.ll create mode 100644 llvm/test/Transforms/Inline/2007-04-15-InlineEH.ll create mode 100644 llvm/test/Transforms/Inline/2007-06-25-WeakInline.ll create mode 100644 llvm/test/Transforms/Inline/2007-12-19-InlineNoUnwind.ll create mode 100644 llvm/test/Transforms/Inline/2008-09-02-NoInline.ll create mode 100644 llvm/test/Transforms/Inline/2009-01-08-NoInlineDynamicAlloca.ll create mode 100644 llvm/test/Transforms/Inline/2009-01-13-RecursiveInlineCrash.ll create mode 100644 llvm/test/Transforms/Inline/2009-05-07-CallUsingSelfCrash.ll create mode 100644 llvm/test/Transforms/Inline/2010-05-12-ValueMap.ll create mode 100644 llvm/test/Transforms/Inline/AArch64/binop.ll create mode 100644 llvm/test/Transforms/Inline/AArch64/ext.ll create mode 100644 llvm/test/Transforms/Inline/AArch64/gep-cost.ll create mode 100644 llvm/test/Transforms/Inline/AArch64/inline-target-attr.ll create mode 100644 llvm/test/Transforms/Inline/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/Inline/AArch64/logical-and-or.ll create mode 100644 llvm/test/Transforms/Inline/AArch64/phi.ll create mode 100644 llvm/test/Transforms/Inline/AArch64/select.ll create mode 100644 llvm/test/Transforms/Inline/AArch64/switch.ll create mode 100644 llvm/test/Transforms/Inline/AMDGPU/inline-amdgpu-dx10-clamp.ll create mode 100644 llvm/test/Transforms/Inline/AMDGPU/inline-amdgpu-ieee.ll create mode 100644 llvm/test/Transforms/Inline/AMDGPU/inline-target-cpu.ll create mode 100644 llvm/test/Transforms/Inline/AMDGPU/inline-target-feature-sram-ecc.ll create mode 100644 llvm/test/Transforms/Inline/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/Inline/ARM/inline-fp.ll create mode 100644 llvm/test/Transforms/Inline/ARM/inline-target-attr.ll create mode 100644 llvm/test/Transforms/Inline/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/Inline/ARM/loop-add.ll create mode 100644 llvm/test/Transforms/Inline/ARM/loop-memcpy.ll create mode 100644 llvm/test/Transforms/Inline/ARM/loop-noinline.ll create mode 100644 llvm/test/Transforms/Inline/PR4909.ll create mode 100644 llvm/test/Transforms/Inline/PowerPC/ext.ll create mode 100644 llvm/test/Transforms/Inline/PowerPC/lit.local.cfg create mode 100644 llvm/test/Transforms/Inline/X86/ext.ll create mode 100644 llvm/test/Transforms/Inline/X86/inline-target-attr.ll create mode 100644 llvm/test/Transforms/Inline/X86/inline-target-cpu-i686.ll create mode 100644 llvm/test/Transforms/Inline/X86/inline-target-cpu-x86_64.ll create mode 100644 llvm/test/Transforms/Inline/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/Inline/align.ll create mode 100644 llvm/test/Transforms/Inline/alloca-bonus.ll create mode 100644 llvm/test/Transforms/Inline/alloca-dbgdeclare-merge.ll create mode 100644 llvm/test/Transforms/Inline/alloca-dbgdeclare.ll create mode 100644 llvm/test/Transforms/Inline/alloca-in-scc.ll create mode 100644 llvm/test/Transforms/Inline/alloca-merge-align.ll create mode 100644 llvm/test/Transforms/Inline/alloca_test.ll create mode 100644 llvm/test/Transforms/Inline/always-inline.ll create mode 100644 llvm/test/Transforms/Inline/arg-attr-propagation.ll create mode 100644 llvm/test/Transforms/Inline/array-alloca.ll create mode 100644 llvm/test/Transforms/Inline/array_merge.ll create mode 100644 llvm/test/Transforms/Inline/attributes.ll create mode 100644 llvm/test/Transforms/Inline/basictest.ll create mode 100644 llvm/test/Transforms/Inline/bfi-update.ll create mode 100644 llvm/test/Transforms/Inline/blockaddress.ll create mode 100644 llvm/test/Transforms/Inline/byval-tail-call.ll create mode 100644 llvm/test/Transforms/Inline/byval.ll create mode 100644 llvm/test/Transforms/Inline/byval_lifetime.ll create mode 100644 llvm/test/Transforms/Inline/callgraph-update.ll create mode 100644 llvm/test/Transforms/Inline/casts.ll create mode 100644 llvm/test/Transforms/Inline/cfg_preserve_test.ll create mode 100644 llvm/test/Transforms/Inline/cgscc-cycle.ll create mode 100644 llvm/test/Transforms/Inline/cgscc-incremental-invalidate.ll create mode 100644 llvm/test/Transforms/Inline/cgscc-invalidate.ll create mode 100644 llvm/test/Transforms/Inline/cgscc-update.ll create mode 100644 llvm/test/Transforms/Inline/clear-analyses.ll create mode 100644 llvm/test/Transforms/Inline/comdat-ipo.ll create mode 100644 llvm/test/Transforms/Inline/crash-lifetime-marker.ll create mode 100644 llvm/test/Transforms/Inline/crash.ll create mode 100644 llvm/test/Transforms/Inline/crash2.ll create mode 100644 llvm/test/Transforms/Inline/debug-info-duplicate-calls.ll create mode 100644 llvm/test/Transforms/Inline/debug-invoke.ll create mode 100644 llvm/test/Transforms/Inline/delete-call.ll create mode 100644 llvm/test/Transforms/Inline/deopt-bundles.ll create mode 100644 llvm/test/Transforms/Inline/deoptimize-intrinsic-cconv.ll create mode 100644 llvm/test/Transforms/Inline/deoptimize-intrinsic.ll create mode 100644 llvm/test/Transforms/Inline/devirtualize-2.ll create mode 100644 llvm/test/Transforms/Inline/devirtualize-3.ll create mode 100644 llvm/test/Transforms/Inline/devirtualize.ll create mode 100644 llvm/test/Transforms/Inline/dynamic_alloca_test.ll create mode 100644 llvm/test/Transforms/Inline/ephemeral.ll create mode 100644 llvm/test/Transforms/Inline/externally_available.ll create mode 100644 llvm/test/Transforms/Inline/frameescape.ll create mode 100644 llvm/test/Transforms/Inline/function-count-update-2.ll create mode 100644 llvm/test/Transforms/Inline/function-count-update-3.ll create mode 100644 llvm/test/Transforms/Inline/function-count-update.ll create mode 100644 llvm/test/Transforms/Inline/guard-intrinsic.ll create mode 100644 llvm/test/Transforms/Inline/gvn-inline-iteration.ll create mode 100644 llvm/test/Transforms/Inline/ignore-debug-info.ll create mode 100644 llvm/test/Transforms/Inline/inalloca-not-static.ll create mode 100644 llvm/test/Transforms/Inline/infinite-loop-two-predecessors.ll create mode 100644 llvm/test/Transforms/Inline/inline-assume.ll create mode 100644 llvm/test/Transforms/Inline/inline-brunch-funnel.ll create mode 100644 llvm/test/Transforms/Inline/inline-byval-bonus.ll create mode 100644 llvm/test/Transforms/Inline/inline-cold-callee.ll create mode 100644 llvm/test/Transforms/Inline/inline-cold-callsite-pgo.ll create mode 100644 llvm/test/Transforms/Inline/inline-cold-callsite.ll create mode 100644 llvm/test/Transforms/Inline/inline-cold.ll create mode 100644 llvm/test/Transforms/Inline/inline-constexpr-addrspacecast-argument.ll create mode 100644 llvm/test/Transforms/Inline/inline-fast-math-flags.ll create mode 100644 llvm/test/Transforms/Inline/inline-funclets.ll create mode 100644 llvm/test/Transforms/Inline/inline-hot-callee.ll create mode 100644 llvm/test/Transforms/Inline/inline-hot-callsite-2.ll create mode 100644 llvm/test/Transforms/Inline/inline-hot-callsite.ll create mode 100644 llvm/test/Transforms/Inline/inline-indirect.ll create mode 100644 llvm/test/Transforms/Inline/inline-invoke-tail.ll create mode 100644 llvm/test/Transforms/Inline/inline-invoke-with-asm-call.ll create mode 100644 llvm/test/Transforms/Inline/inline-min-legal-vector-width.ll create mode 100644 llvm/test/Transforms/Inline/inline-optnone.ll create mode 100644 llvm/test/Transforms/Inline/inline-optsize.ll create mode 100644 llvm/test/Transforms/Inline/inline-probe-stack.ll create mode 100644 llvm/test/Transforms/Inline/inline-remark.ll create mode 100644 llvm/test/Transforms/Inline/inline-stack-probe-size.ll create mode 100644 llvm/test/Transforms/Inline/inline-tail.ll create mode 100644 llvm/test/Transforms/Inline/inline-threshold.ll create mode 100644 llvm/test/Transforms/Inline/inline-varargs.ll create mode 100644 llvm/test/Transforms/Inline/inline-vla.ll create mode 100644 llvm/test/Transforms/Inline/inline_cleanup.ll create mode 100644 llvm/test/Transforms/Inline/inline_constprop.ll create mode 100644 llvm/test/Transforms/Inline/inline_dbg_declare.ll create mode 100644 llvm/test/Transforms/Inline/inline_dce.ll create mode 100644 llvm/test/Transforms/Inline/inline_inv_group.ll create mode 100644 llvm/test/Transforms/Inline/inline_invoke.ll create mode 100644 llvm/test/Transforms/Inline/inline_minisize.ll create mode 100644 llvm/test/Transforms/Inline/inline_prune.ll create mode 100644 llvm/test/Transforms/Inline/inline_returns_twice.ll create mode 100644 llvm/test/Transforms/Inline/inline_ssp.ll create mode 100644 llvm/test/Transforms/Inline/inline_stats.ll create mode 100644 llvm/test/Transforms/Inline/inline_unreachable-2.ll create mode 100644 llvm/test/Transforms/Inline/inline_unreachable.ll create mode 100644 llvm/test/Transforms/Inline/internal-scc-members.ll create mode 100644 llvm/test/Transforms/Inline/invoke-cleanup.ll create mode 100644 llvm/test/Transforms/Inline/invoke-combine-clauses.ll create mode 100644 llvm/test/Transforms/Inline/invoke-cost.ll create mode 100644 llvm/test/Transforms/Inline/invoke_test-1.ll create mode 100644 llvm/test/Transforms/Inline/invoke_test-2.ll create mode 100644 llvm/test/Transforms/Inline/invoke_test-3.ll create mode 100644 llvm/test/Transforms/Inline/label-annotation.ll create mode 100644 llvm/test/Transforms/Inline/last-call-bonus.ll create mode 100644 llvm/test/Transforms/Inline/last-call-no-bonus.ll create mode 100644 llvm/test/Transforms/Inline/last-callsite.ll create mode 100644 llvm/test/Transforms/Inline/launder.invariant.group.ll create mode 100644 llvm/test/Transforms/Inline/lifetime-no-datalayout.ll create mode 100644 llvm/test/Transforms/Inline/lifetime.ll create mode 100644 llvm/test/Transforms/Inline/local-as-metadata-undominated-use.ll create mode 100644 llvm/test/Transforms/Inline/monster_scc.ll create mode 100644 llvm/test/Transforms/Inline/nested-inline.ll create mode 100644 llvm/test/Transforms/Inline/noalias-calls.ll create mode 100644 llvm/test/Transforms/Inline/noalias-cs.ll create mode 100644 llvm/test/Transforms/Inline/noalias.ll create mode 100644 llvm/test/Transforms/Inline/noalias2.ll create mode 100644 llvm/test/Transforms/Inline/noinline-recursive-fn.ll create mode 100644 llvm/test/Transforms/Inline/noinline.ll create mode 100644 llvm/test/Transforms/Inline/nonnull.ll create mode 100644 llvm/test/Transforms/Inline/null-function.ll create mode 100644 llvm/test/Transforms/Inline/optimization-remarks-hotness-threshold.ll create mode 100644 llvm/test/Transforms/Inline/optimization-remarks-passed-yaml.ll create mode 100644 llvm/test/Transforms/Inline/optimization-remarks-with-hotness.ll create mode 100644 llvm/test/Transforms/Inline/optimization-remarks-yaml.ll create mode 100644 llvm/test/Transforms/Inline/optimization-remarks.ll create mode 100644 llvm/test/Transforms/Inline/parallel-loop-md-callee.ll create mode 100644 llvm/test/Transforms/Inline/parallel-loop-md-merge.ll create mode 100644 llvm/test/Transforms/Inline/parallel-loop-md.ll create mode 100644 llvm/test/Transforms/Inline/partial-inline-act.ll create mode 100644 llvm/test/Transforms/Inline/pr21206.ll create mode 100644 llvm/test/Transforms/Inline/pr22285.ll create mode 100644 llvm/test/Transforms/Inline/pr26698.ll create mode 100644 llvm/test/Transforms/Inline/pr28298.ll create mode 100644 llvm/test/Transforms/Inline/pr33637.ll create mode 100644 llvm/test/Transforms/Inline/prof-update-instr.ll create mode 100644 llvm/test/Transforms/Inline/prof-update-sample.ll create mode 100644 llvm/test/Transforms/Inline/profile-meta.ll create mode 100644 llvm/test/Transforms/Inline/ptr-diff.ll create mode 100644 llvm/test/Transforms/Inline/recursive.ll create mode 100644 llvm/test/Transforms/Inline/redundant-loads.ll create mode 100644 llvm/test/Transforms/Inline/store-sroa.ll create mode 100644 llvm/test/Transforms/Inline/switch.ll create mode 100644 llvm/test/Transforms/Inline/vector-bonus.ll create mode 100644 llvm/test/Transforms/Inline/vector-no-bonus.ll create mode 100644 llvm/test/Transforms/Inline/zero-cost.ll create mode 100644 llvm/test/Transforms/InstCombine/2003-05-26-CastMiscompile.ll create mode 100644 llvm/test/Transforms/InstCombine/2003-05-27-ConstExprCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2003-06-05-BranchInvertInfLoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2003-07-21-ExternalConstant.ll create mode 100644 llvm/test/Transforms/InstCombine/2003-08-12-AllocaNonNull.ll create mode 100644 llvm/test/Transforms/InstCombine/2003-09-09-VolatileLoadElim.ll create mode 100644 llvm/test/Transforms/InstCombine/2003-10-29-CallSiteResolve.ll create mode 100644 llvm/test/Transforms/InstCombine/2003-11-03-VarargsCallBug.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-01-13-InstCombineInvokePHI.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-02-23-ShiftShiftOverflow.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-03-13-InstCombineInfLoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-04-04-InstCombineReplaceAllUsesWith.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-05-07-UnsizedCastLoad.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-07-27-ConstantExprMul.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-08-09-RemInfLoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-08-10-BoolSetCC.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-09-20-BadLoadCombine.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-09-20-BadLoadCombine2.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-09-28-BadShiftAndSetCC.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-11-22-Missed-and-fold.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-11-27-SetCCForCastLargerAndConstant.ll create mode 100644 llvm/test/Transforms/InstCombine/2004-12-08-RemInfiniteLoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2005-03-04-ShiftOverflow.ll create mode 100644 llvm/test/Transforms/InstCombine/2005-04-07-UDivSelectCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2005-06-15-DivSelectCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2005-06-15-ShiftSetCCCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2005-06-16-RangeCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2005-07-07-DeadPHILoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-02-13-DemandedMiscompile.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-02-28-Crash.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-03-30-ExtractElement.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-04-28-ShiftShiftLongLong.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-05-04-DemandedBitCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-09-15-CastToBool.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-10-19-SignedToUnsignedCastAndConst-2.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-10-20-mask.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-10-26-VectorReassoc.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-11-10-ashr-miscompile.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-12-01-BadFPVectorXform.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-12-05-fp-to-int-ext.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-12-08-Phi-ICmp-Op-Fold.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-12-08-Select-ICmp.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-12-15-Range-Test.ll create mode 100644 llvm/test/Transforms/InstCombine/2006-12-23-Select-Cmp-Cmp.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-01-13-ExtCompareMiscompile.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-01-18-VectorInfLoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-02-01-LoadSinkAlloca.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-02-07-PointerCast.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-02-23-PhiFoldInfLoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-03-13-CompareMerge.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-03-19-BadTruncChangePR1261.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-03-21-SignedRangeTest.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-03-25-BadShiftMask.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-03-25-DoubleShift.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-03-26-BadShiftMask.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-04-08-SingleEltVectorCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-05-10-icmp-or.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-05-14-Crash.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-05-18-CastFoldBug.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-06-06-AshrSignBit.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-06-21-DivCompareMiscomp.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-08-02-InfiniteLoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-09-10-AliasConstFold.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-09-17-AliasConstFold2.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-10-10-EliminateMemCpy.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-10-12-Crash.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-10-28-stacksave.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-10-31-RangeCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-10-31-StringCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-11-07-OpaqueAlignCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-11-15-CompareMiscomp.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-11-25-CompatibleAttributes.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-12-10-ConstFoldCompare.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-12-12-GEPScale.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-12-16-AsmNoUnwind.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-12-18-AddSelCmpSub.ll create mode 100644 llvm/test/Transforms/InstCombine/2007-12-28-IcmpSub2.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-01-06-BitCastAttributes.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-01-06-CastCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-01-06-VoidCast.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-01-13-AndCmpCmp.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-01-14-VarArgTrampoline.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-01-21-MismatchedCastAndCompare.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-01-21-MulTrunc.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-01-27-FloatSelect.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-02-13-MulURem.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-02-16-SDivOverflow2.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-02-23-MulSub.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-02-28-OrFCmpCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-03-13-IntToPtr.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-04-22-ByValBitcast.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-04-28-VolatileStore.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-04-29-VolatileLoadDontMerge.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-04-29-VolatileLoadMerge.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-05-08-LiveStoreDelete.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-05-08-StrLenSink.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-05-09-SinkOfInvoke.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-05-17-InfLoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-05-18-FoldIntToPtr.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-05-22-IDivVector.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-05-23-CompareFold.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-05-31-AddBool.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-05-31-Bools.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-06-05-ashr-crash.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-06-08-ICmpPHI.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-06-13-InfiniteLoopStore.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-06-13-ReadOnlyCallStore.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-06-19-UncondLoad.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-06-21-CompareMiscomp.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-06-24-StackRestore.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-07-08-ShiftOneAndOne.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-07-08-SubAnd.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-07-08-VolatileLoadMerge.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-07-09-SubAndError.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-07-10-CastSextBool.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-07-11-RemAnd.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-07-13-DivZero.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-07-16-fsub.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-08-05-And.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-09-02-VectorCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-10-11-DivCompareFold.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-10-23-ConstFoldWithoutMask.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-11-01-SRemDemandedBits.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-11-08-FCmp.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-11-27-IDivVector.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-11-27-MultiplyIntVec.ll create mode 100644 llvm/test/Transforms/InstCombine/2008-12-17-SRemNegConstVec.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-01-05-i128-crash.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-01-08-AlignAlloca.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-01-16-PointerAddrSpace.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-01-19-fmod-constant-float-specials.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-01-19-fmod-constant-float.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-01-24-EmptyStruct.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-01-31-InfIterate.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-01-31-Pressure.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-02-04-FPBitcast.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-02-11-NotInitialized.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-02-20-InstCombine-SROA.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-02-21-LoadCST.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-02-25-CrashZeroSizeArray.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-03-18-vector-ashr-crash.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-03-24-InfLoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-04-07-MulPromoteToI96.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-05-23-FCmpToICmp.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-06-11-StoreAddrSpace.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-06-16-SRemDemandedBits.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-07-02-MaskedIntVector.ll create mode 100644 llvm/test/Transforms/InstCombine/2009-12-17-CmpSelectNull.ll create mode 100644 llvm/test/Transforms/InstCombine/2010-01-28-NegativeSRem.ll create mode 100644 llvm/test/Transforms/InstCombine/2010-03-03-ExtElim.ll create mode 100644 llvm/test/Transforms/InstCombine/2010-05-30-memcpy-Struct.ll create mode 100644 llvm/test/Transforms/InstCombine/2010-11-01-lshr-mask.ll create mode 100644 llvm/test/Transforms/InstCombine/2010-11-21-SizeZeroTypeGEP.ll create mode 100644 llvm/test/Transforms/InstCombine/2010-11-23-Distributed.ll create mode 100644 llvm/test/Transforms/InstCombine/2011-02-14-InfLoop.ll create mode 100644 llvm/test/Transforms/InstCombine/2011-03-08-SRemMinusOneBadOpt.ll create mode 100644 llvm/test/Transforms/InstCombine/2011-05-02-VectorBoolean.ll create mode 100644 llvm/test/Transforms/InstCombine/2011-05-13-InBoundsGEP.ll create mode 100644 llvm/test/Transforms/InstCombine/2011-05-28-swapmulsub.ll create mode 100644 llvm/test/Transforms/InstCombine/2011-06-13-nsw-alloca.ll create mode 100644 llvm/test/Transforms/InstCombine/2011-09-03-Trampoline.ll create mode 100644 llvm/test/Transforms/InstCombine/2011-10-07-AlignPromotion.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-01-11-OpaqueBitcastCrash.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-02-13-FCmp.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-02-28-ICmp.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-03-10-InstCombine.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-04-24-vselect.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-04-30-SRem.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-05-28-select-hang.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-06-06-LoadOfPHIs.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-07-25-LoadPart.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-07-30-addrsp-bitcast.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-08-28-udiv_ashl.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-09-17-ZeroSizedAlloca.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-10-25-vector-of-pointers.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-12-14-simp-vgep.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-3-15-or-xor-constant.ll create mode 100644 llvm/test/Transforms/InstCombine/2012-6-7-vselect-bitcast.ll create mode 100644 llvm/test/Transforms/InstCombine/2013-03-05-Combine-BitcastTy-Into-Alloca.ll create mode 100644 llvm/test/Transforms/InstCombine/AArch64/2012-04-23-Neon-Intrinsics.ll create mode 100644 llvm/test/Transforms/InstCombine/AArch64/aes-intrinsics.ll create mode 100644 llvm/test/Transforms/InstCombine/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/InstCombine/AArch64/tbl1.ll create mode 100644 llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-demanded-vector-elts.ll create mode 100644 llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll create mode 100644 llvm/test/Transforms/InstCombine/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/InstCombine/ARM/2012-04-23-Neon-Intrinsics.ll create mode 100644 llvm/test/Transforms/InstCombine/ARM/aes-intrinsics.ll create mode 100644 llvm/test/Transforms/InstCombine/ARM/constant-fold-hang.ll create mode 100644 llvm/test/Transforms/InstCombine/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/InstCombine/ARM/neon-intrinsics.ll create mode 100644 llvm/test/Transforms/InstCombine/ARM/strcmp.ll create mode 100644 llvm/test/Transforms/InstCombine/ARM/strcpy.ll create mode 100644 llvm/test/Transforms/InstCombine/ARM/tbl1.ll create mode 100644 llvm/test/Transforms/InstCombine/ARM/vld1.ll create mode 100644 llvm/test/Transforms/InstCombine/AddOverFlow.ll create mode 100644 llvm/test/Transforms/InstCombine/CPP_min_max.ll create mode 100644 llvm/test/Transforms/InstCombine/ExtractCast.ll create mode 100644 llvm/test/Transforms/InstCombine/IntPtrCast.ll create mode 100644 llvm/test/Transforms/InstCombine/JavaCompare.ll create mode 100644 llvm/test/Transforms/InstCombine/LandingPadClauses.ll create mode 100644 llvm/test/Transforms/InstCombine/NVPTX/lit.local.cfg create mode 100644 llvm/test/Transforms/InstCombine/NVPTX/nvvm-intrins.ll create mode 100644 llvm/test/Transforms/InstCombine/OverlappingInsertvalues.ll create mode 100644 llvm/test/Transforms/InstCombine/PR30597.ll create mode 100644 llvm/test/Transforms/InstCombine/PR37526.ll create mode 100644 llvm/test/Transforms/InstCombine/PowerPC/aligned-altivec.ll create mode 100644 llvm/test/Transforms/InstCombine/PowerPC/aligned-qpx.ll create mode 100644 llvm/test/Transforms/InstCombine/PowerPC/lit.local.cfg create mode 100644 llvm/test/Transforms/InstCombine/PowerPC/vsx-unaligned.ll create mode 100644 llvm/test/Transforms/InstCombine/README.txt create mode 100644 llvm/test/Transforms/InstCombine/X86/X86FsubCmpCombine.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/addcarry.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/blend_x86.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/clmulqdq.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/InstCombine/X86/pr2645-1.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/shufflemask-undef.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-avx.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-avx2.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-avx512.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-bmi-tbm.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-crc32-demanded.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-f16c.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-fma.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-insertps.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-masked-memops.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-movmsk.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-muldq.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-pack.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-pshufb.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-sse.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-sse2.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-sse41.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-sse4a.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-vec_demanded_elts.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-vector-shifts.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-vpermil.ll create mode 100644 llvm/test/Transforms/InstCombine/X86/x86-xop.ll create mode 100644 llvm/test/Transforms/InstCombine/abs-1.ll create mode 100644 llvm/test/Transforms/InstCombine/abs_abs.ll create mode 100644 llvm/test/Transforms/InstCombine/add-sitofp.ll create mode 100644 llvm/test/Transforms/InstCombine/add.ll create mode 100644 llvm/test/Transforms/InstCombine/add2.ll create mode 100644 llvm/test/Transforms/InstCombine/add3.ll create mode 100644 llvm/test/Transforms/InstCombine/add4.ll create mode 100644 llvm/test/Transforms/InstCombine/addnegneg.ll create mode 100644 llvm/test/Transforms/InstCombine/addrspacecast.ll create mode 100644 llvm/test/Transforms/InstCombine/adjust-for-minmax.ll create mode 100644 llvm/test/Transforms/InstCombine/alias-recursion.ll create mode 100644 llvm/test/Transforms/InstCombine/align-2d-gep.ll create mode 100644 llvm/test/Transforms/InstCombine/align-addr.ll create mode 100644 llvm/test/Transforms/InstCombine/align-attr.ll create mode 100644 llvm/test/Transforms/InstCombine/align-external.ll create mode 100644 llvm/test/Transforms/InstCombine/all-bits-shift.ll create mode 100644 llvm/test/Transforms/InstCombine/alloca-big.ll create mode 100644 llvm/test/Transforms/InstCombine/alloca-cast-debuginfo.ll create mode 100644 llvm/test/Transforms/InstCombine/alloca.ll create mode 100644 llvm/test/Transforms/InstCombine/allocsize-32.ll create mode 100644 llvm/test/Transforms/InstCombine/allocsize.ll create mode 100644 llvm/test/Transforms/InstCombine/and-compare.ll create mode 100644 llvm/test/Transforms/InstCombine/and-fcmp.ll create mode 100644 llvm/test/Transforms/InstCombine/and-narrow.ll create mode 100644 llvm/test/Transforms/InstCombine/and-or-and.ll create mode 100644 llvm/test/Transforms/InstCombine/and-or-icmps.ll create mode 100644 llvm/test/Transforms/InstCombine/and-or-not.ll create mode 100644 llvm/test/Transforms/InstCombine/and-or.ll create mode 100644 llvm/test/Transforms/InstCombine/and-xor-merge.ll create mode 100644 llvm/test/Transforms/InstCombine/and-xor-or.ll create mode 100644 llvm/test/Transforms/InstCombine/and.ll create mode 100644 llvm/test/Transforms/InstCombine/and2.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-add.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-and-compare.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-and-or-and.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-and-xor-merge.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-and.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-call-cast-target.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-cast-and-cast.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-cast-cast-to-and.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-cast.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-div1.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-div2.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-mul1.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-mul2.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-not.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-or.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-rem1.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-rem2.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-select.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-shift-simplify.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-shift.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-shl-trunc.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-sub.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-xor1.ll create mode 100644 llvm/test/Transforms/InstCombine/apint-xor2.ll create mode 100644 llvm/test/Transforms/InstCombine/assoc-cast-assoc.ll create mode 100644 llvm/test/Transforms/InstCombine/assume-loop-align.ll create mode 100644 llvm/test/Transforms/InstCombine/assume-redundant.ll create mode 100644 llvm/test/Transforms/InstCombine/assume.ll create mode 100644 llvm/test/Transforms/InstCombine/assume2.ll create mode 100644 llvm/test/Transforms/InstCombine/atomic.ll create mode 100644 llvm/test/Transforms/InstCombine/atomicrmw.ll create mode 100644 llvm/test/Transforms/InstCombine/badmalloc.ll create mode 100644 llvm/test/Transforms/InstCombine/binop-cast.ll create mode 100644 llvm/test/Transforms/InstCombine/bit-checks.ll create mode 100644 llvm/test/Transforms/InstCombine/bitcast-alias-function.ll create mode 100644 llvm/test/Transforms/InstCombine/bitcast-bigendian.ll create mode 100644 llvm/test/Transforms/InstCombine/bitcast-bitcast.ll create mode 100644 llvm/test/Transforms/InstCombine/bitcast-sext-vector.ll create mode 100644 llvm/test/Transforms/InstCombine/bitcast-store.ll create mode 100644 llvm/test/Transforms/InstCombine/bitcast-vec-canon.ll create mode 100644 llvm/test/Transforms/InstCombine/bitcast.ll create mode 100644 llvm/test/Transforms/InstCombine/bitreverse-hang.ll create mode 100644 llvm/test/Transforms/InstCombine/bitreverse-known-bits.ll create mode 100644 llvm/test/Transforms/InstCombine/bittest.ll create mode 100644 llvm/test/Transforms/InstCombine/branch.ll create mode 100644 llvm/test/Transforms/InstCombine/broadcast.ll create mode 100644 llvm/test/Transforms/InstCombine/bswap-fold.ll create mode 100644 llvm/test/Transforms/InstCombine/bswap-known-bits.ll create mode 100644 llvm/test/Transforms/InstCombine/bswap.ll create mode 100644 llvm/test/Transforms/InstCombine/builtin-dynamic-object-size.ll create mode 100644 llvm/test/Transforms/InstCombine/builtin-object-size-offset.ll create mode 100644 llvm/test/Transforms/InstCombine/builtin-object-size-ptr.ll create mode 100644 llvm/test/Transforms/InstCombine/cabs-array.ll create mode 100644 llvm/test/Transforms/InstCombine/cabs-discrete.ll create mode 100644 llvm/test/Transforms/InstCombine/call-callconv.ll create mode 100644 llvm/test/Transforms/InstCombine/call-cast-attrs.ll create mode 100644 llvm/test/Transforms/InstCombine/call-cast-target-inalloca.ll create mode 100644 llvm/test/Transforms/InstCombine/call-cast-target.ll create mode 100644 llvm/test/Transforms/InstCombine/call-guard.ll create mode 100644 llvm/test/Transforms/InstCombine/call-intrinsics.ll create mode 100644 llvm/test/Transforms/InstCombine/call.ll create mode 100644 llvm/test/Transforms/InstCombine/call2.ll create mode 100644 llvm/test/Transforms/InstCombine/call_nonnull_arg.ll create mode 100644 llvm/test/Transforms/InstCombine/callsite_nonnull_args_through_casts.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-ashr-shl-to-masking.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-eq-to-icmp-ule.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-sge-to-icmp-sle.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-sgt-to-icmp-sgt.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-sle-to-icmp-sle.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-slt-to-icmp-sgt.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-uge-to-icmp-ule.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ugt-to-icmp-ugt.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ule-to-icmp-ule.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ult-to-icmp-ugt.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-lack-of-signed-truncation-check.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-and-icmp-eq-to-icmp-ule.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v2-and-icmp-eq-to-icmp-ule.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v2-and-icmp-ne-to-icmp-ugt.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v3-and-icmp-eq-to-icmp-ule.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v3-and-icmp-ne-to-icmp-ugt.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v4-and-icmp-eq-to-icmp-ule.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v4-and-icmp-ne-to-icmp-ugt.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-lshr-shl-to-masking.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-shl-lshr-to-masking.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize-signed-truncation-check.ll create mode 100644 llvm/test/Transforms/InstCombine/canonicalize_branch.ll create mode 100644 llvm/test/Transforms/InstCombine/cast-call-combine-prof.ll create mode 100644 llvm/test/Transforms/InstCombine/cast-call-combine.ll create mode 100644 llvm/test/Transforms/InstCombine/cast-callee-deopt-bundles.ll create mode 100644 llvm/test/Transforms/InstCombine/cast-int-fcmp-eq-0.ll create mode 100644 llvm/test/Transforms/InstCombine/cast-int-icmp-eq-0.ll create mode 100644 llvm/test/Transforms/InstCombine/cast-mul-select.ll create mode 100644 llvm/test/Transforms/InstCombine/cast-select.ll create mode 100644 llvm/test/Transforms/InstCombine/cast-set-preserve-signed-dbg-val.ll create mode 100644 llvm/test/Transforms/InstCombine/cast-set.ll create mode 100644 llvm/test/Transforms/InstCombine/cast-unsigned-icmp-eqcmp-0.ll create mode 100644 llvm/test/Transforms/InstCombine/cast.ll create mode 100644 llvm/test/Transforms/InstCombine/cast_phi.ll create mode 100644 llvm/test/Transforms/InstCombine/cast_ptr.ll create mode 100644 llvm/test/Transforms/InstCombine/ceil.ll create mode 100644 llvm/test/Transforms/InstCombine/clamp-to-minmax.ll create mode 100644 llvm/test/Transforms/InstCombine/cmp-intrinsic.ll create mode 100644 llvm/test/Transforms/InstCombine/compare-3way.ll create mode 100644 llvm/test/Transforms/InstCombine/compare-alloca.ll create mode 100644 llvm/test/Transforms/InstCombine/compare-signs.ll create mode 100644 llvm/test/Transforms/InstCombine/compare-udiv.ll create mode 100644 llvm/test/Transforms/InstCombine/compare-unescaped.ll create mode 100644 llvm/test/Transforms/InstCombine/consecutive-fences.ll create mode 100644 llvm/test/Transforms/InstCombine/constant-expr-datalayout.ll create mode 100644 llvm/test/Transforms/InstCombine/constant-fold-address-space-pointer.ll create mode 100644 llvm/test/Transforms/InstCombine/constant-fold-alias.ll create mode 100644 llvm/test/Transforms/InstCombine/constant-fold-compare.ll create mode 100644 llvm/test/Transforms/InstCombine/constant-fold-gep.ll create mode 100644 llvm/test/Transforms/InstCombine/constant-fold-iteration.ll create mode 100644 llvm/test/Transforms/InstCombine/constant-fold-libfunc.ll create mode 100644 llvm/test/Transforms/InstCombine/constant-fold-math.ll create mode 100644 llvm/test/Transforms/InstCombine/constant-fold-shifts.ll create mode 100644 llvm/test/Transforms/InstCombine/convergent.ll create mode 100644 llvm/test/Transforms/InstCombine/copysign.ll create mode 100644 llvm/test/Transforms/InstCombine/cos-1.ll create mode 100644 llvm/test/Transforms/InstCombine/cos-2.ll create mode 100644 llvm/test/Transforms/InstCombine/cos-sin-intrinsic.ll create mode 100644 llvm/test/Transforms/InstCombine/crash.ll create mode 100644 llvm/test/Transforms/InstCombine/ctlz-cttz-bitreverse.ll create mode 100644 llvm/test/Transforms/InstCombine/ctpop-bswap-bitreverse.ll create mode 100644 llvm/test/Transforms/InstCombine/ctpop.ll create mode 100644 llvm/test/Transforms/InstCombine/dce-iterate.ll create mode 100644 llvm/test/Transforms/InstCombine/deadcode.ll create mode 100644 llvm/test/Transforms/InstCombine/debug-line.ll create mode 100644 llvm/test/Transforms/InstCombine/debuginfo-dce.ll create mode 100644 llvm/test/Transforms/InstCombine/debuginfo-dce2.ll create mode 100644 llvm/test/Transforms/InstCombine/debuginfo-sink.ll create mode 100644 llvm/test/Transforms/InstCombine/debuginfo-skip.ll create mode 100644 llvm/test/Transforms/InstCombine/debuginfo-variables.ll create mode 100644 llvm/test/Transforms/InstCombine/debuginfo.ll create mode 100644 llvm/test/Transforms/InstCombine/debuginfo_add.ll create mode 100644 llvm/test/Transforms/InstCombine/default-alignment.ll create mode 100644 llvm/test/Transforms/InstCombine/demand_shrink_nsw.ll create mode 100644 llvm/test/Transforms/InstCombine/demorgan-sink-not-into-xor.ll create mode 100644 llvm/test/Transforms/InstCombine/demorgan.ll create mode 100644 llvm/test/Transforms/InstCombine/disable-simplify-libcalls.ll create mode 100644 llvm/test/Transforms/InstCombine/distribute.ll create mode 100644 llvm/test/Transforms/InstCombine/div-shift-crash.ll create mode 100644 llvm/test/Transforms/InstCombine/div-shift.ll create mode 100644 llvm/test/Transforms/InstCombine/div.ll create mode 100644 llvm/test/Transforms/InstCombine/double-float-shrink-1.ll create mode 100644 llvm/test/Transforms/InstCombine/double-float-shrink-2.ll create mode 100644 llvm/test/Transforms/InstCombine/early_constfold_changes_IR.ll create mode 100644 llvm/test/Transforms/InstCombine/early_dce_clobbers_callgraph.ll create mode 100644 llvm/test/Transforms/InstCombine/element-atomic-memintrins.ll create mode 100644 llvm/test/Transforms/InstCombine/enforce-known-alignment.ll create mode 100644 llvm/test/Transforms/InstCombine/err-rep-cold.ll create mode 100644 llvm/test/Transforms/InstCombine/exact.ll create mode 100644 llvm/test/Transforms/InstCombine/exp2-1.ll create mode 100644 llvm/test/Transforms/InstCombine/exp2-2.ll create mode 100644 llvm/test/Transforms/InstCombine/extractelement.ll create mode 100644 llvm/test/Transforms/InstCombine/extractinsert-tbaa.ll create mode 100644 llvm/test/Transforms/InstCombine/extractvalue.ll create mode 100644 llvm/test/Transforms/InstCombine/fabs-libcall.ll create mode 100644 llvm/test/Transforms/InstCombine/fabs.ll create mode 100644 llvm/test/Transforms/InstCombine/fadd-fsub-factor.ll create mode 100644 llvm/test/Transforms/InstCombine/fadd.ll create mode 100644 llvm/test/Transforms/InstCombine/fast-math.ll create mode 100644 llvm/test/Transforms/InstCombine/fcmp-select.ll create mode 100644 llvm/test/Transforms/InstCombine/fcmp-special.ll create mode 100644 llvm/test/Transforms/InstCombine/fcmp.ll create mode 100644 llvm/test/Transforms/InstCombine/fdiv-cos-sin.ll create mode 100644 llvm/test/Transforms/InstCombine/fdiv-sin-cos.ll create mode 100644 llvm/test/Transforms/InstCombine/fdiv.ll create mode 100644 llvm/test/Transforms/InstCombine/ffs-1.ll create mode 100644 llvm/test/Transforms/InstCombine/float-shrink-compare.ll create mode 100644 llvm/test/Transforms/InstCombine/fls.ll create mode 100644 llvm/test/Transforms/InstCombine/fma.ll create mode 100644 llvm/test/Transforms/InstCombine/fmul-exp.ll create mode 100644 llvm/test/Transforms/InstCombine/fmul-exp2.ll create mode 100644 llvm/test/Transforms/InstCombine/fmul-pow.ll create mode 100644 llvm/test/Transforms/InstCombine/fmul-sqrt.ll create mode 100644 llvm/test/Transforms/InstCombine/fmul.ll create mode 100644 llvm/test/Transforms/InstCombine/fneg.ll create mode 100644 llvm/test/Transforms/InstCombine/fold-bin-operand.ll create mode 100644 llvm/test/Transforms/InstCombine/fold-calls.ll create mode 100644 llvm/test/Transforms/InstCombine/fold-fops-into-selects.ll create mode 100644 llvm/test/Transforms/InstCombine/fold-phi-load-metadata.ll create mode 100644 llvm/test/Transforms/InstCombine/fold-phi.ll create mode 100644 llvm/test/Transforms/InstCombine/fold-sqrt-sqrtf.ll create mode 100644 llvm/test/Transforms/InstCombine/fold-vector-select.ll create mode 100644 llvm/test/Transforms/InstCombine/fold-vector-zero.ll create mode 100644 llvm/test/Transforms/InstCombine/fp-ret-bitcast.ll create mode 100644 llvm/test/Transforms/InstCombine/fpcast.ll create mode 100644 llvm/test/Transforms/InstCombine/fpextend.ll create mode 100644 llvm/test/Transforms/InstCombine/fpextend_x86.ll create mode 100644 llvm/test/Transforms/InstCombine/fprintf-1.ll create mode 100644 llvm/test/Transforms/InstCombine/fputs-1.ll create mode 100644 llvm/test/Transforms/InstCombine/fputs-opt-size.ll create mode 100644 llvm/test/Transforms/InstCombine/fsh.ll create mode 100644 llvm/test/Transforms/InstCombine/fsub.ll create mode 100644 llvm/test/Transforms/InstCombine/fwrite-1.ll create mode 100644 llvm/test/Transforms/InstCombine/gc.relocate.ll create mode 100644 llvm/test/Transforms/InstCombine/gep-addrspace.ll create mode 100644 llvm/test/Transforms/InstCombine/gep-combine-loop-invariant.ll create mode 100644 llvm/test/Transforms/InstCombine/gep-custom-dl.ll create mode 100644 llvm/test/Transforms/InstCombine/gep-sext.ll create mode 100644 llvm/test/Transforms/InstCombine/gep-vector.ll create mode 100644 llvm/test/Transforms/InstCombine/gepgep.ll create mode 100644 llvm/test/Transforms/InstCombine/gepphigep.ll create mode 100644 llvm/test/Transforms/InstCombine/getelementptr-folding.ll create mode 100644 llvm/test/Transforms/InstCombine/getelementptr.ll create mode 100644 llvm/test/Transforms/InstCombine/hoist_instr.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-add.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-bc-vec.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-custom-dl.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-div-constant.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-dom.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-logical.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-mul-zext.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-mul.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-range.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-shl-nsw.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-shl-nuw.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-shr-lt-gt.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-shr.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-sub.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-uge-of-add-of-shl-one-by-bits-to-allones-and-val-to-icmp-eq-of-lshr-val-by-bits-and-0.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-uge-of-not-of-shl-allones-by-bits-and-val-to-icmp-eq-of-lshr-val-by-bits-and-0.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-ugt-of-shl-1-by-bits-and-val-to-icmp-eq-of-lshr-val-by-bits-and-0.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-ule-of-shl-1-by-bits-and-val-to-icmp-ne-of-lshr-val-by-bits-and-0.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-ult-of-add-of-shl-one-by-bits-to-allones-and-val-to-icmp-ne-of-lshr-val-by-bits-and-0.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-ult-of-not-of-shl-allones-by-bits-and-val-to-icmp-ne-of-lshr-val-by-bits-and-0.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-vec.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp-xor-signbit.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp.ll create mode 100644 llvm/test/Transforms/InstCombine/icmp_sdiv_with_and_without_range.ll create mode 100644 llvm/test/Transforms/InstCombine/idioms.ll create mode 100644 llvm/test/Transforms/InstCombine/indexed-gep-compares.ll create mode 100644 llvm/test/Transforms/InstCombine/inline-intrinsic-assert.ll create mode 100644 llvm/test/Transforms/InstCombine/inselt-binop.ll create mode 100644 llvm/test/Transforms/InstCombine/insert-const-shuf.ll create mode 100644 llvm/test/Transforms/InstCombine/insert-extract-shuffle.ll create mode 100644 llvm/test/Transforms/InstCombine/insert-val-extract-elem.ll create mode 100644 llvm/test/Transforms/InstCombine/int_sideeffect.ll create mode 100644 llvm/test/Transforms/InstCombine/intersect-accessgroup.ll create mode 100644 llvm/test/Transforms/InstCombine/intptr1.ll create mode 100644 llvm/test/Transforms/InstCombine/intptr2.ll create mode 100644 llvm/test/Transforms/InstCombine/intptr3.ll create mode 100644 llvm/test/Transforms/InstCombine/intptr4.ll create mode 100644 llvm/test/Transforms/InstCombine/intptr5.ll create mode 100644 llvm/test/Transforms/InstCombine/intptr6.ll create mode 100644 llvm/test/Transforms/InstCombine/intptr7.ll create mode 100644 llvm/test/Transforms/InstCombine/intrinsics.ll create mode 100644 llvm/test/Transforms/InstCombine/invariant.group.ll create mode 100644 llvm/test/Transforms/InstCombine/invariant.ll create mode 100644 llvm/test/Transforms/InstCombine/invert-variable-mask-in-masked-merge-scalar.ll create mode 100644 llvm/test/Transforms/InstCombine/invert-variable-mask-in-masked-merge-vector.ll create mode 100644 llvm/test/Transforms/InstCombine/invoke.ll create mode 100644 llvm/test/Transforms/InstCombine/isascii-1.ll create mode 100644 llvm/test/Transforms/InstCombine/isdigit-1.ll create mode 100644 llvm/test/Transforms/InstCombine/known-never-nan.ll create mode 100644 llvm/test/Transforms/InstCombine/known_align.ll create mode 100644 llvm/test/Transforms/InstCombine/lifetime-asan.ll create mode 100644 llvm/test/Transforms/InstCombine/lifetime-no-null-opt.ll create mode 100644 llvm/test/Transforms/InstCombine/lifetime.ll create mode 100644 llvm/test/Transforms/InstCombine/load-bitcast-select.ll create mode 100644 llvm/test/Transforms/InstCombine/load-bitcast32.ll create mode 100644 llvm/test/Transforms/InstCombine/load-bitcast64.ll create mode 100644 llvm/test/Transforms/InstCombine/load-cmp.ll create mode 100644 llvm/test/Transforms/InstCombine/load-combine-metadata-2.ll create mode 100644 llvm/test/Transforms/InstCombine/load-combine-metadata-3.ll create mode 100644 llvm/test/Transforms/InstCombine/load-combine-metadata-4.ll create mode 100644 llvm/test/Transforms/InstCombine/load-combine-metadata-dominance.ll create mode 100644 llvm/test/Transforms/InstCombine/load-combine-metadata.ll create mode 100644 llvm/test/Transforms/InstCombine/load-select.ll create mode 100644 llvm/test/Transforms/InstCombine/load.ll create mode 100644 llvm/test/Transforms/InstCombine/load3.ll create mode 100644 llvm/test/Transforms/InstCombine/load_combine_aa.ll create mode 100644 llvm/test/Transforms/InstCombine/loadstore-alignment.ll create mode 100644 llvm/test/Transforms/InstCombine/loadstore-metadata.ll create mode 100644 llvm/test/Transforms/InstCombine/log-pow-nofastmath.ll create mode 100644 llvm/test/Transforms/InstCombine/log-pow.ll create mode 100644 llvm/test/Transforms/InstCombine/logical-select.ll create mode 100644 llvm/test/Transforms/InstCombine/lower-dbg-declare.ll create mode 100644 llvm/test/Transforms/InstCombine/lshr-phi.ll create mode 100644 llvm/test/Transforms/InstCombine/lshr.ll create mode 100644 llvm/test/Transforms/InstCombine/malloc-free-delete.ll create mode 100644 llvm/test/Transforms/InstCombine/masked-merge-add.ll create mode 100644 llvm/test/Transforms/InstCombine/masked-merge-and-of-ors.ll create mode 100644 llvm/test/Transforms/InstCombine/masked-merge-or.ll create mode 100644 llvm/test/Transforms/InstCombine/masked-merge-xor.ll create mode 100644 llvm/test/Transforms/InstCombine/masked_intrinsics.ll create mode 100644 llvm/test/Transforms/InstCombine/max-of-nots.ll create mode 100644 llvm/test/Transforms/InstCombine/max_known_bits.ll create mode 100644 llvm/test/Transforms/InstCombine/maximum.ll create mode 100644 llvm/test/Transforms/InstCombine/maxnum.ll create mode 100644 llvm/test/Transforms/InstCombine/mem-gep-zidx.ll create mode 100644 llvm/test/Transforms/InstCombine/mem-par-metadata-memcpy.ll create mode 100644 llvm/test/Transforms/InstCombine/memchr.ll create mode 100644 llvm/test/Transforms/InstCombine/memcmp-1.ll create mode 100644 llvm/test/Transforms/InstCombine/memcmp-2.ll create mode 100644 llvm/test/Transforms/InstCombine/memcmp-constant-fold.ll create mode 100644 llvm/test/Transforms/InstCombine/memcpy-1.ll create mode 100644 llvm/test/Transforms/InstCombine/memcpy-2.ll create mode 100644 llvm/test/Transforms/InstCombine/memcpy-addrspace.ll create mode 100644 llvm/test/Transforms/InstCombine/memcpy-from-global.ll create mode 100644 llvm/test/Transforms/InstCombine/memcpy-to-load.ll create mode 100644 llvm/test/Transforms/InstCombine/memcpy.ll create mode 100644 llvm/test/Transforms/InstCombine/memcpy_chk-1.ll create mode 100644 llvm/test/Transforms/InstCombine/memcpy_chk-2.ll create mode 100644 llvm/test/Transforms/InstCombine/memmove-1.ll create mode 100644 llvm/test/Transforms/InstCombine/memmove-2.ll create mode 100644 llvm/test/Transforms/InstCombine/memmove.ll create mode 100644 llvm/test/Transforms/InstCombine/memmove_chk-1.ll create mode 100644 llvm/test/Transforms/InstCombine/memmove_chk-2.ll create mode 100644 llvm/test/Transforms/InstCombine/memset-1.ll create mode 100644 llvm/test/Transforms/InstCombine/memset-2.ll create mode 100644 llvm/test/Transforms/InstCombine/memset.ll create mode 100644 llvm/test/Transforms/InstCombine/memset2.ll create mode 100644 llvm/test/Transforms/InstCombine/memset_chk-1.ll create mode 100644 llvm/test/Transforms/InstCombine/memset_chk-2.ll create mode 100644 llvm/test/Transforms/InstCombine/merge-icmp.ll create mode 100644 llvm/test/Transforms/InstCombine/min-positive.ll create mode 100644 llvm/test/Transforms/InstCombine/minimum.ll create mode 100644 llvm/test/Transforms/InstCombine/minmax-demandbits.ll create mode 100644 llvm/test/Transforms/InstCombine/minmax-fold.ll create mode 100644 llvm/test/Transforms/InstCombine/minmax-fp.ll create mode 100644 llvm/test/Transforms/InstCombine/minnum.ll create mode 100644 llvm/test/Transforms/InstCombine/misc-2002.ll create mode 100644 llvm/test/Transforms/InstCombine/mul-masked-bits.ll create mode 100644 llvm/test/Transforms/InstCombine/mul.ll create mode 100644 llvm/test/Transforms/InstCombine/multi-size-address-space-pointer.ll create mode 100644 llvm/test/Transforms/InstCombine/multi-use-or.ll create mode 100644 llvm/test/Transforms/InstCombine/multiple-uses-load-bitcast-select.ll create mode 100644 llvm/test/Transforms/InstCombine/musttail-thunk.ll create mode 100644 llvm/test/Transforms/InstCombine/narrow-math.ll create mode 100644 llvm/test/Transforms/InstCombine/narrow-switch.ll create mode 100644 llvm/test/Transforms/InstCombine/narrow.ll create mode 100644 llvm/test/Transforms/InstCombine/no-negzero.ll create mode 100644 llvm/test/Transforms/InstCombine/no_cgscc_assert.ll create mode 100644 llvm/test/Transforms/InstCombine/no_sink_instruction.ll create mode 100644 llvm/test/Transforms/InstCombine/non-integral-pointers.ll create mode 100644 llvm/test/Transforms/InstCombine/nonnull-attribute.ll create mode 100644 llvm/test/Transforms/InstCombine/not.ll create mode 100644 llvm/test/Transforms/InstCombine/nothrow.ll create mode 100644 llvm/test/Transforms/InstCombine/nsw.ll create mode 100644 llvm/test/Transforms/InstCombine/obfuscated_splat.ll create mode 100644 llvm/test/Transforms/InstCombine/objsize-64.ll create mode 100644 llvm/test/Transforms/InstCombine/objsize-address-space.ll create mode 100644 llvm/test/Transforms/InstCombine/objsize-noverify.ll create mode 100644 llvm/test/Transforms/InstCombine/objsize.ll create mode 100644 llvm/test/Transforms/InstCombine/odr-linkage.ll create mode 100644 llvm/test/Transforms/InstCombine/onehot_merge.ll create mode 100644 llvm/test/Transforms/InstCombine/opaque.ll create mode 100644 llvm/test/Transforms/InstCombine/operand-complexity.ll create mode 100644 llvm/test/Transforms/InstCombine/or-fcmp.ll create mode 100644 llvm/test/Transforms/InstCombine/or-shifted-masks.ll create mode 100644 llvm/test/Transforms/InstCombine/or-xor.ll create mode 100644 llvm/test/Transforms/InstCombine/or.ll create mode 100644 llvm/test/Transforms/InstCombine/osx-names.ll create mode 100644 llvm/test/Transforms/InstCombine/out-of-bounds-indexes.ll create mode 100644 llvm/test/Transforms/InstCombine/overflow-mul.ll create mode 100644 llvm/test/Transforms/InstCombine/overflow.ll create mode 100644 llvm/test/Transforms/InstCombine/phi-load-metadata-2.ll create mode 100644 llvm/test/Transforms/InstCombine/phi-load-metadata-3.ll create mode 100644 llvm/test/Transforms/InstCombine/phi-load-metadata-dominance.ll create mode 100644 llvm/test/Transforms/InstCombine/phi-load-metadata.ll create mode 100644 llvm/test/Transforms/InstCombine/phi-merge-gep.ll create mode 100644 llvm/test/Transforms/InstCombine/phi-preserve-ir-flags.ll create mode 100644 llvm/test/Transforms/InstCombine/phi-select-constant.ll create mode 100644 llvm/test/Transforms/InstCombine/phi-timeout.ll create mode 100644 llvm/test/Transforms/InstCombine/phi.ll create mode 100644 llvm/test/Transforms/InstCombine/pow-1.ll create mode 100644 llvm/test/Transforms/InstCombine/pow-2.ll create mode 100644 llvm/test/Transforms/InstCombine/pow-3.ll create mode 100644 llvm/test/Transforms/InstCombine/pow-4.ll create mode 100644 llvm/test/Transforms/InstCombine/pow-cbrt.ll create mode 100644 llvm/test/Transforms/InstCombine/pow-exp-nofastmath.ll create mode 100644 llvm/test/Transforms/InstCombine/pow-exp.ll create mode 100644 llvm/test/Transforms/InstCombine/pow-sqrt.ll create mode 100644 llvm/test/Transforms/InstCombine/pr12251.ll create mode 100644 llvm/test/Transforms/InstCombine/pr12338.ll create mode 100644 llvm/test/Transforms/InstCombine/pr17827.ll create mode 100644 llvm/test/Transforms/InstCombine/pr19420.ll create mode 100644 llvm/test/Transforms/InstCombine/pr20079.ll create mode 100644 llvm/test/Transforms/InstCombine/pr20678.ll create mode 100644 llvm/test/Transforms/InstCombine/pr21199.ll create mode 100644 llvm/test/Transforms/InstCombine/pr21210.ll create mode 100644 llvm/test/Transforms/InstCombine/pr21651.ll create mode 100644 llvm/test/Transforms/InstCombine/pr21891.ll create mode 100644 llvm/test/Transforms/InstCombine/pr23751.ll create mode 100644 llvm/test/Transforms/InstCombine/pr23809.ll create mode 100644 llvm/test/Transforms/InstCombine/pr24354.ll create mode 100644 llvm/test/Transforms/InstCombine/pr24605.ll create mode 100644 llvm/test/Transforms/InstCombine/pr25342.ll create mode 100644 llvm/test/Transforms/InstCombine/pr25745.ll create mode 100644 llvm/test/Transforms/InstCombine/pr2645-0.ll create mode 100644 llvm/test/Transforms/InstCombine/pr26992.ll create mode 100644 llvm/test/Transforms/InstCombine/pr26993.ll create mode 100644 llvm/test/Transforms/InstCombine/pr27236.ll create mode 100644 llvm/test/Transforms/InstCombine/pr27332.ll create mode 100644 llvm/test/Transforms/InstCombine/pr27343.ll create mode 100644 llvm/test/Transforms/InstCombine/pr27703.ll create mode 100644 llvm/test/Transforms/InstCombine/pr27996.ll create mode 100644 llvm/test/Transforms/InstCombine/pr28143.ll create mode 100644 llvm/test/Transforms/InstCombine/pr28725.ll create mode 100644 llvm/test/Transforms/InstCombine/pr2996.ll create mode 100644 llvm/test/Transforms/InstCombine/pr30929.ll create mode 100644 llvm/test/Transforms/InstCombine/pr31990_wrong_memcpy.ll create mode 100644 llvm/test/Transforms/InstCombine/pr32686.ll create mode 100644 llvm/test/Transforms/InstCombine/pr33453.ll create mode 100644 llvm/test/Transforms/InstCombine/pr33689_same_bitwidth.ll create mode 100644 llvm/test/Transforms/InstCombine/pr34349.ll create mode 100644 llvm/test/Transforms/InstCombine/pr34627.ll create mode 100644 llvm/test/Transforms/InstCombine/pr35515.ll create mode 100644 llvm/test/Transforms/InstCombine/pr36362.ll create mode 100644 llvm/test/Transforms/InstCombine/pr38677.ll create mode 100644 llvm/test/Transforms/InstCombine/pr38897.ll create mode 100644 llvm/test/Transforms/InstCombine/pr38915.ll create mode 100644 llvm/test/Transforms/InstCombine/pr38984.ll create mode 100644 llvm/test/Transforms/InstCombine/pr39177.ll create mode 100644 llvm/test/Transforms/InstCombine/pr39908.ll create mode 100644 llvm/test/Transforms/InstCombine/pr41164.ll create mode 100644 llvm/test/Transforms/InstCombine/prefetch-load.ll create mode 100644 llvm/test/Transforms/InstCombine/preserve-sminmax.ll create mode 100644 llvm/test/Transforms/InstCombine/preserved-analyses.ll create mode 100644 llvm/test/Transforms/InstCombine/prevent-cmp-merge.ll create mode 100644 llvm/test/Transforms/InstCombine/printf-1.ll create mode 100644 llvm/test/Transforms/InstCombine/printf-2.ll create mode 100644 llvm/test/Transforms/InstCombine/printf-3.ll create mode 100644 llvm/test/Transforms/InstCombine/ptr-int-cast.ll create mode 100644 llvm/test/Transforms/InstCombine/puts-1.ll create mode 100644 llvm/test/Transforms/InstCombine/range-check.ll create mode 100644 llvm/test/Transforms/InstCombine/readnone-maythrow.ll create mode 100644 llvm/test/Transforms/InstCombine/realloc.ll create mode 100644 llvm/test/Transforms/InstCombine/rem.ll create mode 100644 llvm/test/Transforms/InstCombine/rotate.ll create mode 100644 llvm/test/Transforms/InstCombine/round.ll create mode 100644 llvm/test/Transforms/InstCombine/sadd-with-overflow.ll create mode 100644 llvm/test/Transforms/InstCombine/salvage-dbg-declare.ll create mode 100644 llvm/test/Transforms/InstCombine/saturating-add-sub.ll create mode 100644 llvm/test/Transforms/InstCombine/scalarization.ll create mode 100644 llvm/test/Transforms/InstCombine/sdiv-1.ll create mode 100644 llvm/test/Transforms/InstCombine/sdiv-2.ll create mode 100644 llvm/test/Transforms/InstCombine/sdiv-canonicalize.ll create mode 100644 llvm/test/Transforms/InstCombine/sdiv-guard.ll create mode 100644 llvm/test/Transforms/InstCombine/select-2.ll create mode 100644 llvm/test/Transforms/InstCombine/select-binop-cmp.ll create mode 100644 llvm/test/Transforms/InstCombine/select-bitext-bitwise-ops.ll create mode 100644 llvm/test/Transforms/InstCombine/select-bitext.ll create mode 100644 llvm/test/Transforms/InstCombine/select-cmp-br.ll create mode 100644 llvm/test/Transforms/InstCombine/select-cmp-cttz-ctlz.ll create mode 100644 llvm/test/Transforms/InstCombine/select-cmpxchg.ll create mode 100644 llvm/test/Transforms/InstCombine/select-crash-noverify.ll create mode 100644 llvm/test/Transforms/InstCombine/select-crash.ll create mode 100644 llvm/test/Transforms/InstCombine/select-extractelement.ll create mode 100644 llvm/test/Transforms/InstCombine/select-gep.ll create mode 100644 llvm/test/Transforms/InstCombine/select-icmp-and.ll create mode 100644 llvm/test/Transforms/InstCombine/select-load-call.ll create mode 100644 llvm/test/Transforms/InstCombine/select-obo-peo-ops.ll create mode 100644 llvm/test/Transforms/InstCombine/select-of-bittest.ll create mode 100644 llvm/test/Transforms/InstCombine/select-pr39595.ll create mode 100644 llvm/test/Transforms/InstCombine/select-select.ll create mode 100644 llvm/test/Transforms/InstCombine/select-with-bitwise-ops.ll create mode 100644 llvm/test/Transforms/InstCombine/select.ll create mode 100644 llvm/test/Transforms/InstCombine/select_arithmetic.ll create mode 100644 llvm/test/Transforms/InstCombine/select_meta.ll create mode 100644 llvm/test/Transforms/InstCombine/set-lowbits-mask-canonicalize.ll create mode 100644 llvm/test/Transforms/InstCombine/set.ll create mode 100644 llvm/test/Transforms/InstCombine/setcc-strength-reduce.ll create mode 100644 llvm/test/Transforms/InstCombine/sext.ll create mode 100644 llvm/test/Transforms/InstCombine/shift-add.ll create mode 100644 llvm/test/Transforms/InstCombine/shift-shift.ll create mode 100644 llvm/test/Transforms/InstCombine/shift-sra.ll create mode 100644 llvm/test/Transforms/InstCombine/shift.ll create mode 100644 llvm/test/Transforms/InstCombine/should-change-type.ll create mode 100644 llvm/test/Transforms/InstCombine/shuffle-select-narrow.ll create mode 100644 llvm/test/Transforms/InstCombine/shuffle_select.ll create mode 100644 llvm/test/Transforms/InstCombine/shufflevec-bitcast.ll create mode 100644 llvm/test/Transforms/InstCombine/shufflevec-constant.ll create mode 100644 llvm/test/Transforms/InstCombine/sign-test-and-or.ll create mode 100644 llvm/test/Transforms/InstCombine/signed-comparison.ll create mode 100644 llvm/test/Transforms/InstCombine/signed-truncation-check.ll create mode 100644 llvm/test/Transforms/InstCombine/signext.ll create mode 100644 llvm/test/Transforms/InstCombine/simplify-demanded-bits-pointer.ll create mode 100644 llvm/test/Transforms/InstCombine/simplify-libcalls-erased.ll create mode 100644 llvm/test/Transforms/InstCombine/simplify-libcalls.ll create mode 100644 llvm/test/Transforms/InstCombine/sincospi.ll create mode 100644 llvm/test/Transforms/InstCombine/sink-alloca.ll create mode 100644 llvm/test/Transforms/InstCombine/sink-into-catchswitch.ll create mode 100644 llvm/test/Transforms/InstCombine/sink_instruction.ll create mode 100644 llvm/test/Transforms/InstCombine/sitofp.ll create mode 100644 llvm/test/Transforms/InstCombine/smax-icmp.ll create mode 100644 llvm/test/Transforms/InstCombine/smin-icmp.ll create mode 100644 llvm/test/Transforms/InstCombine/snprintf.ll create mode 100644 llvm/test/Transforms/InstCombine/sprintf-1.ll create mode 100644 llvm/test/Transforms/InstCombine/sprintf-void.ll create mode 100644 llvm/test/Transforms/InstCombine/sqrt-nofast.ll create mode 100644 llvm/test/Transforms/InstCombine/sqrt.ll create mode 100644 llvm/test/Transforms/InstCombine/srem-canonicalize.ll create mode 100644 llvm/test/Transforms/InstCombine/srem-simplify-bug.ll create mode 100644 llvm/test/Transforms/InstCombine/srem1.ll create mode 100644 llvm/test/Transforms/InstCombine/ssub-with-overflow.ll create mode 100644 llvm/test/Transforms/InstCombine/stack-overalign.ll create mode 100644 llvm/test/Transforms/InstCombine/stacksave-debuginfo.ll create mode 100644 llvm/test/Transforms/InstCombine/stacksaverestore.ll create mode 100644 llvm/test/Transforms/InstCombine/statepoint.ll create mode 100644 llvm/test/Transforms/InstCombine/store-load-unaliased-gep.ll create mode 100644 llvm/test/Transforms/InstCombine/store.ll create mode 100644 llvm/test/Transforms/InstCombine/storemerge-dbg.ll create mode 100644 llvm/test/Transforms/InstCombine/stpcpy-1.ll create mode 100644 llvm/test/Transforms/InstCombine/stpcpy-2.ll create mode 100644 llvm/test/Transforms/InstCombine/stpcpy_chk-1.ll create mode 100644 llvm/test/Transforms/InstCombine/stpcpy_chk-2.ll create mode 100644 llvm/test/Transforms/InstCombine/str-int-2.ll create mode 100644 llvm/test/Transforms/InstCombine/str-int.ll create mode 100644 llvm/test/Transforms/InstCombine/strcat-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strcat-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strcat-3.ll create mode 100644 llvm/test/Transforms/InstCombine/strchr-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strchr-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strcmp-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strcmp-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strcmp-memcmp.ll create mode 100644 llvm/test/Transforms/InstCombine/strcpy-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strcpy-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strcpy_chk-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strcpy_chk-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strcpy_chk-64.ll create mode 100644 llvm/test/Transforms/InstCombine/strcspn-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strcspn-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strlen-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strlen-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strncat-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strncat-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strncat-3.ll create mode 100644 llvm/test/Transforms/InstCombine/strncmp-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strncmp-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strncmp-wrong-datalayout.ll create mode 100644 llvm/test/Transforms/InstCombine/strncpy-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strncpy-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strncpy_chk-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strncpy_chk-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strpbrk-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strpbrk-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strrchr-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strrchr-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strspn-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strstr-1.ll create mode 100644 llvm/test/Transforms/InstCombine/strstr-2.ll create mode 100644 llvm/test/Transforms/InstCombine/strto-1.ll create mode 100644 llvm/test/Transforms/InstCombine/struct-assign-tbaa-new.ll create mode 100644 llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll create mode 100644 llvm/test/Transforms/InstCombine/sub-minmax.ll create mode 100644 llvm/test/Transforms/InstCombine/sub-not.ll create mode 100644 llvm/test/Transforms/InstCombine/sub-xor.ll create mode 100644 llvm/test/Transforms/InstCombine/sub.ll create mode 100644 llvm/test/Transforms/InstCombine/switch-constant-expr.ll create mode 100644 llvm/test/Transforms/InstCombine/switch-truncate-crash.ll create mode 100644 llvm/test/Transforms/InstCombine/tan-nofastmath.ll create mode 100644 llvm/test/Transforms/InstCombine/tan.ll create mode 100644 llvm/test/Transforms/InstCombine/tbaa-store-to-load.ll create mode 100644 llvm/test/Transforms/InstCombine/toascii-1.ll create mode 100644 llvm/test/Transforms/InstCombine/token.ll create mode 100644 llvm/test/Transforms/InstCombine/trunc-binop-ext.ll create mode 100644 llvm/test/Transforms/InstCombine/trunc.ll create mode 100644 llvm/test/Transforms/InstCombine/type_pun.ll create mode 100644 llvm/test/Transforms/InstCombine/uadd-with-overflow.ll create mode 100644 llvm/test/Transforms/InstCombine/uaddo.ll create mode 100644 llvm/test/Transforms/InstCombine/udiv-simplify.ll create mode 100644 llvm/test/Transforms/InstCombine/udiv_select_to_select_shift.ll create mode 100644 llvm/test/Transforms/InstCombine/udivrem-change-width.ll create mode 100644 llvm/test/Transforms/InstCombine/umax-icmp.ll create mode 100644 llvm/test/Transforms/InstCombine/umin-icmp.ll create mode 100644 llvm/test/Transforms/InstCombine/unavailable-debug.ll create mode 100644 llvm/test/Transforms/InstCombine/unfold-masked-merge-with-const-mask-scalar.ll create mode 100644 llvm/test/Transforms/InstCombine/unfold-masked-merge-with-const-mask-vector.ll create mode 100644 llvm/test/Transforms/InstCombine/unlocked-stdio-mingw.ll create mode 100644 llvm/test/Transforms/InstCombine/unlocked-stdio.ll create mode 100644 llvm/test/Transforms/InstCombine/unordered-fcmp-select.ll create mode 100644 llvm/test/Transforms/InstCombine/unpack-fca.ll create mode 100644 llvm/test/Transforms/InstCombine/unrecognized_three-way-comparison.ll create mode 100644 llvm/test/Transforms/InstCombine/unsigned_saturated_sub.ll create mode 100644 llvm/test/Transforms/InstCombine/urem-simplify-bug.ll create mode 100644 llvm/test/Transforms/InstCombine/vararg.ll create mode 100644 llvm/test/Transforms/InstCombine/vec-binop-select.ll create mode 100644 llvm/test/Transforms/InstCombine/vec_demanded_elts.ll create mode 100644 llvm/test/Transforms/InstCombine/vec_extract_2elts.ll create mode 100644 llvm/test/Transforms/InstCombine/vec_extract_var_elt.ll create mode 100644 llvm/test/Transforms/InstCombine/vec_gep_scalar_arg.ll create mode 100644 llvm/test/Transforms/InstCombine/vec_insertelt.ll create mode 100644 llvm/test/Transforms/InstCombine/vec_phi_extract.ll create mode 100644 llvm/test/Transforms/InstCombine/vec_sext.ll create mode 100644 llvm/test/Transforms/InstCombine/vec_shuffle.ll create mode 100644 llvm/test/Transforms/InstCombine/vector-casts.ll create mode 100644 llvm/test/Transforms/InstCombine/vector-concat-binop.ll create mode 100644 llvm/test/Transforms/InstCombine/vector-mul.ll create mode 100644 llvm/test/Transforms/InstCombine/vector-type.ll create mode 100644 llvm/test/Transforms/InstCombine/vector-udiv.ll create mode 100644 llvm/test/Transforms/InstCombine/vector-urem.ll create mode 100644 llvm/test/Transforms/InstCombine/vector-xor.ll create mode 100644 llvm/test/Transforms/InstCombine/vector_gep1.ll create mode 100644 llvm/test/Transforms/InstCombine/vector_gep2.ll create mode 100644 llvm/test/Transforms/InstCombine/vector_insertelt_shuffle.ll create mode 100644 llvm/test/Transforms/InstCombine/volatile_store.ll create mode 100644 llvm/test/Transforms/InstCombine/wcslen-1.ll create mode 100644 llvm/test/Transforms/InstCombine/wcslen-2.ll create mode 100644 llvm/test/Transforms/InstCombine/wcslen-3.ll create mode 100644 llvm/test/Transforms/InstCombine/wcslen-4.ll create mode 100644 llvm/test/Transforms/InstCombine/weak-symbols.ll create mode 100644 llvm/test/Transforms/InstCombine/win-math.ll create mode 100644 llvm/test/Transforms/InstCombine/with_overflow.ll create mode 100644 llvm/test/Transforms/InstCombine/xor-icmps.ll create mode 100644 llvm/test/Transforms/InstCombine/xor-undef.ll create mode 100644 llvm/test/Transforms/InstCombine/xor.ll create mode 100644 llvm/test/Transforms/InstCombine/xor2.ll create mode 100644 llvm/test/Transforms/InstCombine/zero-point-zero-add.ll create mode 100644 llvm/test/Transforms/InstCombine/zeroext-and-reduce.ll create mode 100644 llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll create mode 100644 llvm/test/Transforms/InstCombine/zext-fold.ll create mode 100644 llvm/test/Transforms/InstCombine/zext-or-icmp.ll create mode 100644 llvm/test/Transforms/InstCombine/zext-phi.ll create mode 100644 llvm/test/Transforms/InstCombine/zext.ll create mode 100644 llvm/test/Transforms/InstMerge/exceptions.ll create mode 100644 llvm/test/Transforms/InstMerge/st_sink_barrier_call.ll create mode 100644 llvm/test/Transforms/InstMerge/st_sink_bugfix_22613.ll create mode 100644 llvm/test/Transforms/InstMerge/st_sink_check_debug.ll create mode 100644 llvm/test/Transforms/InstMerge/st_sink_debuginvariant.ll create mode 100644 llvm/test/Transforms/InstMerge/st_sink_no_barrier_call.ll create mode 100644 llvm/test/Transforms/InstMerge/st_sink_no_barrier_load.ll create mode 100644 llvm/test/Transforms/InstMerge/st_sink_no_barrier_store.ll create mode 100644 llvm/test/Transforms/InstMerge/st_sink_two_stores.ll create mode 100644 llvm/test/Transforms/InstMerge/st_sink_with_barrier.ll create mode 100644 llvm/test/Transforms/InstNamer/basic.ll create mode 100644 llvm/test/Transforms/InstSimplify/2010-12-20-Boolean.ll create mode 100644 llvm/test/Transforms/InstSimplify/2011-01-14-Thread.ll create mode 100644 llvm/test/Transforms/InstSimplify/2011-02-01-Vector.ll create mode 100644 llvm/test/Transforms/InstSimplify/2011-09-05-InsertExtractValue.ll create mode 100644 llvm/test/Transforms/InstSimplify/2011-10-27-BinOpCrash.ll create mode 100644 llvm/test/Transforms/InstSimplify/2011-11-23-MaskedBitsCrash.ll create mode 100644 llvm/test/Transforms/InstSimplify/2013-04-19-ConstantFoldingCrash.ll create mode 100644 llvm/test/Transforms/InstSimplify/AndOrXor.ll create mode 100644 llvm/test/Transforms/InstSimplify/add-mask.ll create mode 100644 llvm/test/Transforms/InstSimplify/add.ll create mode 100644 llvm/test/Transforms/InstSimplify/addsub.ll create mode 100644 llvm/test/Transforms/InstSimplify/and-icmps-same-ops.ll create mode 100644 llvm/test/Transforms/InstSimplify/and-or-icmp-zero.ll create mode 100644 llvm/test/Transforms/InstSimplify/assume.ll create mode 100644 llvm/test/Transforms/InstSimplify/bitcast-vector-fold.ll create mode 100644 llvm/test/Transforms/InstSimplify/bitreverse-fold.ll create mode 100644 llvm/test/Transforms/InstSimplify/bitreverse.ll create mode 100644 llvm/test/Transforms/InstSimplify/bswap.ll create mode 100644 llvm/test/Transforms/InstSimplify/call.ll create mode 100644 llvm/test/Transforms/InstSimplify/cast-unsigned-icmp-cmp-0.ll create mode 100644 llvm/test/Transforms/InstSimplify/cast.ll create mode 100644 llvm/test/Transforms/InstSimplify/cmp_of_min_max.ll create mode 100644 llvm/test/Transforms/InstSimplify/compare.ll create mode 100644 llvm/test/Transforms/InstSimplify/constantfold-add-nuw-allones-to-allones.ll create mode 100644 llvm/test/Transforms/InstSimplify/constantfold-shl-nuw-C-to-C.ll create mode 100644 llvm/test/Transforms/InstSimplify/dead-code-removal.ll create mode 100644 llvm/test/Transforms/InstSimplify/div.ll create mode 100644 llvm/test/Transforms/InstSimplify/exact-nsw-nuw.ll create mode 100644 llvm/test/Transforms/InstSimplify/extract-element.ll create mode 100644 llvm/test/Transforms/InstSimplify/fast-math.ll create mode 100644 llvm/test/Transforms/InstSimplify/fcmp-select.ll create mode 100644 llvm/test/Transforms/InstSimplify/fdiv.ll create mode 100644 llvm/test/Transforms/InstSimplify/floating-point-arithmetic.ll create mode 100644 llvm/test/Transforms/InstSimplify/floating-point-compare.ll create mode 100644 llvm/test/Transforms/InstSimplify/fold-builtin-fma.ll create mode 100644 llvm/test/Transforms/InstSimplify/fold-intrinsics.ll create mode 100644 llvm/test/Transforms/InstSimplify/fp-nan.ll create mode 100644 llvm/test/Transforms/InstSimplify/fp-undef.ll create mode 100644 llvm/test/Transforms/InstSimplify/gep.ll create mode 100644 llvm/test/Transforms/InstSimplify/icmp-abs-nabs.ll create mode 100644 llvm/test/Transforms/InstSimplify/icmp-bool-constant.ll create mode 100644 llvm/test/Transforms/InstSimplify/icmp-constant.ll create mode 100644 llvm/test/Transforms/InstSimplify/icmp-ranges.ll create mode 100644 llvm/test/Transforms/InstSimplify/implies.ll create mode 100644 llvm/test/Transforms/InstSimplify/insertelement.ll create mode 100644 llvm/test/Transforms/InstSimplify/known-never-nan.ll create mode 100644 llvm/test/Transforms/InstSimplify/load-relative-32.ll create mode 100644 llvm/test/Transforms/InstSimplify/load-relative.ll create mode 100644 llvm/test/Transforms/InstSimplify/load.ll create mode 100644 llvm/test/Transforms/InstSimplify/log-exp-intrinsic.ll create mode 100644 llvm/test/Transforms/InstSimplify/log10-pow10-intrinsic.ll create mode 100644 llvm/test/Transforms/InstSimplify/log2-pow2-intrinsic.ll create mode 100644 llvm/test/Transforms/InstSimplify/logic-of-fcmps.ll create mode 100644 llvm/test/Transforms/InstSimplify/maxmin.ll create mode 100644 llvm/test/Transforms/InstSimplify/mul.ll create mode 100644 llvm/test/Transforms/InstSimplify/negate.ll create mode 100644 llvm/test/Transforms/InstSimplify/noalias-ptr.ll create mode 100644 llvm/test/Transforms/InstSimplify/or-icmps-same-ops.ll create mode 100644 llvm/test/Transforms/InstSimplify/or.ll create mode 100644 llvm/test/Transforms/InstSimplify/past-the-end.ll create mode 100644 llvm/test/Transforms/InstSimplify/phi.ll create mode 100644 llvm/test/Transforms/InstSimplify/pr28725.ll create mode 100644 llvm/test/Transforms/InstSimplify/pr33957.ll create mode 100644 llvm/test/Transforms/InstSimplify/ptr_diff.ll create mode 100644 llvm/test/Transforms/InstSimplify/reassociate.ll create mode 100644 llvm/test/Transforms/InstSimplify/rem.ll create mode 100644 llvm/test/Transforms/InstSimplify/require-dominator.ll create mode 100644 llvm/test/Transforms/InstSimplify/returned.ll create mode 100644 llvm/test/Transforms/InstSimplify/round-intrinsics.ll create mode 100644 llvm/test/Transforms/InstSimplify/saturating-add-sub.ll create mode 100644 llvm/test/Transforms/InstSimplify/sdiv.ll create mode 100644 llvm/test/Transforms/InstSimplify/select-and-cmp.ll create mode 100644 llvm/test/Transforms/InstSimplify/select-implied.ll create mode 100644 llvm/test/Transforms/InstSimplify/select-or-cmp.ll create mode 100644 llvm/test/Transforms/InstSimplify/select.ll create mode 100644 llvm/test/Transforms/InstSimplify/shift-128-kb.ll create mode 100644 llvm/test/Transforms/InstSimplify/shift-knownbits.ll create mode 100644 llvm/test/Transforms/InstSimplify/shift.ll create mode 100644 llvm/test/Transforms/InstSimplify/shr-nop.ll create mode 100644 llvm/test/Transforms/InstSimplify/shr-scalar-vector-consistency.ll create mode 100644 llvm/test/Transforms/InstSimplify/shufflevector.ll create mode 100644 llvm/test/Transforms/InstSimplify/signed-div-rem.ll create mode 100644 llvm/test/Transforms/InstSimplify/simplify-nested-bitcast.ll create mode 100644 llvm/test/Transforms/InstSimplify/srem.ll create mode 100644 llvm/test/Transforms/InstSimplify/sub.ll create mode 100644 llvm/test/Transforms/InstSimplify/undef.ll create mode 100644 llvm/test/Transforms/InstSimplify/vec-cmp.ll create mode 100644 llvm/test/Transforms/InstSimplify/vector_gep.ll create mode 100644 llvm/test/Transforms/InstSimplify/vector_ptr_bitcast.ll create mode 100644 llvm/test/Transforms/InterleavedAccess/AArch64/interleaved-accesses-extract-user.ll create mode 100644 llvm/test/Transforms/InterleavedAccess/AArch64/interleaved-accesses.ll create mode 100644 llvm/test/Transforms/InterleavedAccess/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/InterleavedAccess/ARM/interleaved-accesses-extract-user.ll create mode 100644 llvm/test/Transforms/InterleavedAccess/ARM/interleaved-accesses.ll create mode 100644 llvm/test/Transforms/InterleavedAccess/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/InterleavedAccess/X86/interleaved-accesses-64bits-avx.ll create mode 100644 llvm/test/Transforms/InterleavedAccess/X86/interleavedLoad.ll create mode 100644 llvm/test/Transforms/InterleavedAccess/X86/interleavedStore.ll create mode 100644 llvm/test/Transforms/InterleavedAccess/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/Internalize/2009-01-05-InternalizeAliases.ll create mode 100644 llvm/test/Transforms/Internalize/apifile create mode 100644 llvm/test/Transforms/Internalize/comdat.ll create mode 100644 llvm/test/Transforms/Internalize/lists.ll create mode 100644 llvm/test/Transforms/Internalize/local-visibility.ll create mode 100644 llvm/test/Transforms/Internalize/stackguard.ll create mode 100644 llvm/test/Transforms/Internalize/used.ll create mode 100644 llvm/test/Transforms/JumpThreading/2008-11-27-EntryMunge.ll create mode 100644 llvm/test/Transforms/JumpThreading/2010-08-26-and.ll create mode 100644 llvm/test/Transforms/JumpThreading/2011-04-02-SimplifyDeadBlock.ll create mode 100644 llvm/test/Transforms/JumpThreading/2011-04-14-InfLoop.ll create mode 100644 llvm/test/Transforms/JumpThreading/2012-07-19-NoSuccessorIndirectBr.ll create mode 100644 llvm/test/Transforms/JumpThreading/PR33357-lvi-recursion.ll create mode 100644 llvm/test/Transforms/JumpThreading/PR37745.ll create mode 100644 llvm/test/Transforms/JumpThreading/and-and-cond.ll create mode 100644 llvm/test/Transforms/JumpThreading/and-cond.ll create mode 100644 llvm/test/Transforms/JumpThreading/assume-edge-dom.ll create mode 100644 llvm/test/Transforms/JumpThreading/assume.ll create mode 100644 llvm/test/Transforms/JumpThreading/basic.ll create mode 100644 llvm/test/Transforms/JumpThreading/bb-unreachable-from-entry.ll create mode 100644 llvm/test/Transforms/JumpThreading/branch-debug-info.ll create mode 100644 llvm/test/Transforms/JumpThreading/branch-no-const.ll create mode 100644 llvm/test/Transforms/JumpThreading/callbr-edge-split.ll create mode 100644 llvm/test/Transforms/JumpThreading/combine-metadata.ll create mode 100644 llvm/test/Transforms/JumpThreading/compare.ll create mode 100644 llvm/test/Transforms/JumpThreading/conservative-lvi.ll create mode 100644 llvm/test/Transforms/JumpThreading/crash.ll create mode 100644 llvm/test/Transforms/JumpThreading/ddt-crash.ll create mode 100644 llvm/test/Transforms/JumpThreading/ddt-crash2.ll create mode 100644 llvm/test/Transforms/JumpThreading/ddt-crash3.ll create mode 100644 llvm/test/Transforms/JumpThreading/ddt-crash4.ll create mode 100644 llvm/test/Transforms/JumpThreading/degenerate-phi.ll create mode 100644 llvm/test/Transforms/JumpThreading/fold-not-thread.ll create mode 100644 llvm/test/Transforms/JumpThreading/guards.ll create mode 100644 llvm/test/Transforms/JumpThreading/header-succ.ll create mode 100644 llvm/test/Transforms/JumpThreading/implied-cond.ll create mode 100644 llvm/test/Transforms/JumpThreading/indirectbr.ll create mode 100644 llvm/test/Transforms/JumpThreading/induction.ll create mode 100644 llvm/test/Transforms/JumpThreading/landing-pad.ll create mode 100644 llvm/test/Transforms/JumpThreading/lvi-load.ll create mode 100644 llvm/test/Transforms/JumpThreading/lvi-tristate.ll create mode 100644 llvm/test/Transforms/JumpThreading/no-irreducible-loops.ll create mode 100644 llvm/test/Transforms/JumpThreading/or-undef.ll create mode 100644 llvm/test/Transforms/JumpThreading/phi-eq.ll create mode 100644 llvm/test/Transforms/JumpThreading/phi-known.ll create mode 100644 llvm/test/Transforms/JumpThreading/pr15851_hang.ll create mode 100644 llvm/test/Transforms/JumpThreading/pr22086.ll create mode 100644 llvm/test/Transforms/JumpThreading/pr26096.ll create mode 100644 llvm/test/Transforms/JumpThreading/pr27840.ll create mode 100644 llvm/test/Transforms/JumpThreading/pr33605.ll create mode 100644 llvm/test/Transforms/JumpThreading/pr33917.ll create mode 100644 llvm/test/Transforms/JumpThreading/pr36133.ll create mode 100644 llvm/test/Transforms/JumpThreading/pr40992-indirectbr-folding.ll create mode 100644 llvm/test/Transforms/JumpThreading/pr9331.ll create mode 100644 llvm/test/Transforms/JumpThreading/range-compare.ll create mode 100644 llvm/test/Transforms/JumpThreading/removed-use.ll create mode 100644 llvm/test/Transforms/JumpThreading/select.ll create mode 100644 llvm/test/Transforms/JumpThreading/static-profile.ll create mode 100644 llvm/test/Transforms/JumpThreading/thread-cmp.ll create mode 100644 llvm/test/Transforms/JumpThreading/thread-loads.ll create mode 100644 llvm/test/Transforms/JumpThreading/threading_prof1.ll create mode 100644 llvm/test/Transforms/JumpThreading/threading_prof2.ll create mode 100644 llvm/test/Transforms/JumpThreading/update-edge-weight.ll create mode 100644 llvm/test/Transforms/LCSSA/2006-06-03-IncorrectIDFPhis.ll create mode 100644 llvm/test/Transforms/LCSSA/2006-06-12-MultipleExitsSameBlock.ll create mode 100644 llvm/test/Transforms/LCSSA/2006-07-09-NoDominator.ll create mode 100644 llvm/test/Transforms/LCSSA/2006-10-31-UnreachableBlock-2.ll create mode 100644 llvm/test/Transforms/LCSSA/2006-10-31-UnreachableBlock.ll create mode 100644 llvm/test/Transforms/LCSSA/2007-07-12-LICM-2.ll create mode 100644 llvm/test/Transforms/LCSSA/2007-07-12-LICM-3.ll create mode 100644 llvm/test/Transforms/LCSSA/2007-07-12-LICM.ll create mode 100644 llvm/test/Transforms/LCSSA/avoid-intrinsics-in-catchswitch.ll create mode 100644 llvm/test/Transforms/LCSSA/basictest.ll create mode 100644 llvm/test/Transforms/LCSSA/indirectbr.ll create mode 100644 llvm/test/Transforms/LCSSA/invoke-dest.ll create mode 100644 llvm/test/Transforms/LCSSA/mixed-catch.ll create mode 100644 llvm/test/Transforms/LCSSA/pr28424.ll create mode 100644 llvm/test/Transforms/LCSSA/pr28608.ll create mode 100644 llvm/test/Transforms/LCSSA/remove-phis.ll create mode 100644 llvm/test/Transforms/LCSSA/rewrite-existing-dbg-values.ll create mode 100644 llvm/test/Transforms/LCSSA/unreachable-use.ll create mode 100644 llvm/test/Transforms/LCSSA/unused-phis.ll create mode 100644 llvm/test/Transforms/LICM/2003-02-26-LoopExitNotDominated.ll create mode 100644 llvm/test/Transforms/LICM/2003-02-27-NestedLoopExitBlocks.ll create mode 100644 llvm/test/Transforms/LICM/2003-02-27-PreheaderExitNodeUpdate.ll create mode 100644 llvm/test/Transforms/LICM/2003-02-27-PreheaderProblem.ll create mode 100644 llvm/test/Transforms/LICM/2003-02-27-StoreSinkPHIs.ll create mode 100644 llvm/test/Transforms/LICM/2003-02-28-PromoteDifferentType.ll create mode 100644 llvm/test/Transforms/LICM/2003-05-02-LoadHoist.ll create mode 100644 llvm/test/Transforms/LICM/2003-12-11-SinkingToPHI.ll create mode 100644 llvm/test/Transforms/LICM/2004-09-14-AliasAnalysisInvalidate.ll create mode 100644 llvm/test/Transforms/LICM/2004-11-17-UndefIndexCrash.ll create mode 100644 llvm/test/Transforms/LICM/2006-09-12-DeadUserOfSunkInstr.ll create mode 100644 llvm/test/Transforms/LICM/2007-05-22-VolatileSink.ll create mode 100644 llvm/test/Transforms/LICM/2007-07-30-AliasSet.ll create mode 100644 llvm/test/Transforms/LICM/2007-09-17-PromoteValue.ll create mode 100644 llvm/test/Transforms/LICM/2007-09-24-PromoteNullValue.ll create mode 100644 llvm/test/Transforms/LICM/2007-10-01-PromoteSafeValue.ll create mode 100644 llvm/test/Transforms/LICM/2008-05-20-AliasSetVAArg.ll create mode 100644 llvm/test/Transforms/LICM/2008-07-22-LoadGlobalConstant.ll create mode 100644 llvm/test/Transforms/LICM/2009-12-10-LICM-Indbr-Crash.ll create mode 100644 llvm/test/Transforms/LICM/2011-04-06-HoistMissedASTUpdate.ll create mode 100644 llvm/test/Transforms/LICM/2011-04-06-PromoteResultOfPromotion.ll create mode 100644 llvm/test/Transforms/LICM/2011-04-09-RAUW-AST.ll create mode 100644 llvm/test/Transforms/LICM/2011-07-06-Alignment.ll create mode 100644 llvm/test/Transforms/LICM/2014-09-10-doFinalizationAssert.ll create mode 100644 llvm/test/Transforms/LICM/AliasSetMemSet.ll create mode 100644 llvm/test/Transforms/LICM/PR19798.ll create mode 100644 llvm/test/Transforms/LICM/PR21582.ll create mode 100644 llvm/test/Transforms/LICM/PR24013.ll create mode 100644 llvm/test/Transforms/LICM/Preserve-LCSSA.ll create mode 100644 llvm/test/Transforms/LICM/alias-set-tracker-loss.ll create mode 100644 llvm/test/Transforms/LICM/argmemonly-call.ll create mode 100644 llvm/test/Transforms/LICM/assume.ll create mode 100644 llvm/test/Transforms/LICM/atomics.ll create mode 100644 llvm/test/Transforms/LICM/basictest.ll create mode 100644 llvm/test/Transforms/LICM/bisect-state.ll create mode 100644 llvm/test/Transforms/LICM/call-hoisting.ll create mode 100644 llvm/test/Transforms/LICM/constexpr.ll create mode 100644 llvm/test/Transforms/LICM/crash.ll create mode 100644 llvm/test/Transforms/LICM/debug-value.ll create mode 100644 llvm/test/Transforms/LICM/dropped-tbaa.ll create mode 100644 llvm/test/Transforms/LICM/explicit_guards.ll create mode 100644 llvm/test/Transforms/LICM/extra-copies.ll create mode 100644 llvm/test/Transforms/LICM/fence.ll create mode 100644 llvm/test/Transforms/LICM/funclet.ll create mode 100644 llvm/test/Transforms/LICM/guards.ll create mode 100644 llvm/test/Transforms/LICM/hoist-bitcast-load.ll create mode 100644 llvm/test/Transforms/LICM/hoist-debuginvariant.ll create mode 100644 llvm/test/Transforms/LICM/hoist-deref-load.ll create mode 100644 llvm/test/Transforms/LICM/hoist-fast-fdiv.ll create mode 100644 llvm/test/Transforms/LICM/hoist-invariant-load.ll create mode 100644 llvm/test/Transforms/LICM/hoist-mustexec.ll create mode 100644 llvm/test/Transforms/LICM/hoist-nounwind.ll create mode 100644 llvm/test/Transforms/LICM/hoist-phi.ll create mode 100644 llvm/test/Transforms/LICM/hoist-round.ll create mode 100644 llvm/test/Transforms/LICM/hoisting.ll create mode 100644 llvm/test/Transforms/LICM/infinite_loops.ll create mode 100644 llvm/test/Transforms/LICM/int_sideeffect.ll create mode 100644 llvm/test/Transforms/LICM/invariant.start.ll create mode 100644 llvm/test/Transforms/LICM/lcssa-ssa-promoter.ll create mode 100644 llvm/test/Transforms/LICM/loopsink-pr38462.ll create mode 100644 llvm/test/Transforms/LICM/loopsink-pr39570.ll create mode 100644 llvm/test/Transforms/LICM/loopsink-pr39695.ll create mode 100644 llvm/test/Transforms/LICM/loopsink.ll create mode 100644 llvm/test/Transforms/LICM/no-preheader-test.ll create mode 100644 llvm/test/Transforms/LICM/opt-remarks-conditional-load.ll create mode 100644 llvm/test/Transforms/LICM/opt-remarks-intervening-store.ll create mode 100644 llvm/test/Transforms/LICM/opt-remarks.ll create mode 100644 llvm/test/Transforms/LICM/pr23608.ll create mode 100644 llvm/test/Transforms/LICM/pr26843.ll create mode 100644 llvm/test/Transforms/LICM/pr27262.ll create mode 100644 llvm/test/Transforms/LICM/pr32129.ll create mode 100644 llvm/test/Transforms/LICM/pr35342.ll create mode 100644 llvm/test/Transforms/LICM/pr36228.ll create mode 100644 llvm/test/Transforms/LICM/pr37323.ll create mode 100644 llvm/test/Transforms/LICM/pr40317.ll create mode 100644 llvm/test/Transforms/LICM/preheader-safe.ll create mode 100644 llvm/test/Transforms/LICM/promote-order.ll create mode 100644 llvm/test/Transforms/LICM/promote-tls.ll create mode 100644 llvm/test/Transforms/LICM/read-only-calls.ll create mode 100644 llvm/test/Transforms/LICM/scalar-promote-memmodel.ll create mode 100644 llvm/test/Transforms/LICM/scalar-promote-unwind.ll create mode 100644 llvm/test/Transforms/LICM/scalar-promote.ll create mode 100644 llvm/test/Transforms/LICM/sink-foldable.ll create mode 100644 llvm/test/Transforms/LICM/sink-promote.ll create mode 100644 llvm/test/Transforms/LICM/sink.ll create mode 100644 llvm/test/Transforms/LICM/sinking.ll create mode 100644 llvm/test/Transforms/LICM/speculate.ll create mode 100644 llvm/test/Transforms/LICM/store-hoisting.ll create mode 100644 llvm/test/Transforms/LICM/strlen.ll create mode 100644 llvm/test/Transforms/LICM/unrolled-deeply-nested.ll create mode 100644 llvm/test/Transforms/LICM/update-scev.ll create mode 100644 llvm/test/Transforms/LICM/volatile-alias.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/aa-metadata.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/adjust-alloca-alignment.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/complex-index.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/extended-index.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/gep-bitcast.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/insertion-point.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/interleaved-mayalias-store.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/invariant-load.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-stores-private.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-stores.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/missing-alignment.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/multiple_tails.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/no-implicit-float.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/optnone.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/pointer-elements.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/selects.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/store_with_aliasing_load.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/weird-type-accesses.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/NVPTX/lit.local.cfg create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/NVPTX/merge-across-side-effects.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/NVPTX/non-instr-bitcast.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/NVPTX/propagate-invariance-metadata.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/codegenprepare-produced-address-math.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/compare-scev-by-complexity.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/correct-order.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/load-width.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/merge-tbaa.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/non-byte-size.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/preserve-order32.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/preserve-order64.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/subchain-interleaved.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/X86/vector-scalar.ll create mode 100644 llvm/test/Transforms/LoadStoreVectorizer/int_sideeffect.ll create mode 100644 llvm/test/Transforms/LoopDataPrefetch/AArch64/kryo-large-stride.ll create mode 100644 llvm/test/Transforms/LoopDataPrefetch/AArch64/large-stride.ll create mode 100644 llvm/test/Transforms/LoopDataPrefetch/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopDataPrefetch/AArch64/opt-remark-with-hotness.ll create mode 100644 llvm/test/Transforms/LoopDataPrefetch/AArch64/opt-remark.ll create mode 100644 llvm/test/Transforms/LoopDataPrefetch/PowerPC/basic.ll create mode 100644 llvm/test/Transforms/LoopDataPrefetch/PowerPC/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopDeletion/2007-07-23-InfiniteLoop.ll create mode 100644 llvm/test/Transforms/LoopDeletion/2008-05-06-Phi.ll create mode 100644 llvm/test/Transforms/LoopDeletion/2011-06-21-phioperands.ll create mode 100644 llvm/test/Transforms/LoopDeletion/2017-07-11-incremental-dt.ll create mode 100644 llvm/test/Transforms/LoopDeletion/crashbc.ll create mode 100644 llvm/test/Transforms/LoopDeletion/dcetest.ll create mode 100644 llvm/test/Transforms/LoopDeletion/diundef.ll create mode 100644 llvm/test/Transforms/LoopDeletion/invalidation.ll create mode 100644 llvm/test/Transforms/LoopDeletion/multiple-exit-conditions.ll create mode 100644 llvm/test/Transforms/LoopDeletion/multiple-exits.ll create mode 100644 llvm/test/Transforms/LoopDeletion/simplify-then-delete.ll create mode 100644 llvm/test/Transforms/LoopDeletion/unreachable-loops.ll create mode 100644 llvm/test/Transforms/LoopDeletion/update-scev.ll create mode 100644 llvm/test/Transforms/LoopDeletion/use-in-unreachable.ll create mode 100644 llvm/test/Transforms/LoopDistribute/basic-with-memchecks.ll create mode 100644 llvm/test/Transforms/LoopDistribute/basic.ll create mode 100644 llvm/test/Transforms/LoopDistribute/bounds-expansion-bug.ll create mode 100644 llvm/test/Transforms/LoopDistribute/crash-in-memcheck-generation.ll create mode 100644 llvm/test/Transforms/LoopDistribute/diagnostics-with-hotness.ll create mode 100644 llvm/test/Transforms/LoopDistribute/diagnostics.ll create mode 100644 llvm/test/Transforms/LoopDistribute/disable_nonforced.ll create mode 100644 llvm/test/Transforms/LoopDistribute/disable_nonforced_enable.ll create mode 100644 llvm/test/Transforms/LoopDistribute/followup.ll create mode 100644 llvm/test/Transforms/LoopDistribute/metadata.ll create mode 100644 llvm/test/Transforms/LoopDistribute/no-if-convert.ll create mode 100644 llvm/test/Transforms/LoopDistribute/outside-use.ll create mode 100644 llvm/test/Transforms/LoopDistribute/pr28443.ll create mode 100644 llvm/test/Transforms/LoopDistribute/program-order.ll create mode 100644 llvm/test/Transforms/LoopDistribute/symbolic-stride.ll create mode 100644 llvm/test/Transforms/LoopDistribute/unknown-bounds-for-memchecks.ll create mode 100644 llvm/test/Transforms/LoopFusion/cannot_fuse.ll create mode 100644 llvm/test/Transforms/LoopFusion/four_loops.ll create mode 100644 llvm/test/Transforms/LoopFusion/inner_loops.ll create mode 100644 llvm/test/Transforms/LoopFusion/loop_nest.ll create mode 100644 llvm/test/Transforms/LoopFusion/simple.ll create mode 100644 llvm/test/Transforms/LoopIdiom/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopIdiom/AMDGPU/popcnt.ll create mode 100644 llvm/test/Transforms/LoopIdiom/ARM/ctlz.ll create mode 100644 llvm/test/Transforms/LoopIdiom/X86/ctlz.ll create mode 100644 llvm/test/Transforms/LoopIdiom/X86/cttz.ll create mode 100644 llvm/test/Transforms/LoopIdiom/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopIdiom/X86/popcnt.ll create mode 100644 llvm/test/Transforms/LoopIdiom/X86/unordered-atomic-memcpy.ll create mode 100644 llvm/test/Transforms/LoopIdiom/basic-address-space.ll create mode 100644 llvm/test/Transforms/LoopIdiom/basic.ll create mode 100644 llvm/test/Transforms/LoopIdiom/crash.ll create mode 100644 llvm/test/Transforms/LoopIdiom/ctpop-multiple-users-crash.ll create mode 100644 llvm/test/Transforms/LoopIdiom/dbginfo-cost.ll create mode 100644 llvm/test/Transforms/LoopIdiom/debug-line.ll create mode 100644 llvm/test/Transforms/LoopIdiom/int_sideeffect.ll create mode 100644 llvm/test/Transforms/LoopIdiom/lir-heurs-multi-block-loop.ll create mode 100644 llvm/test/Transforms/LoopIdiom/memset_noidiom.ll create mode 100644 llvm/test/Transforms/LoopIdiom/non-canonical-loop.ll create mode 100644 llvm/test/Transforms/LoopIdiom/non-integral-pointers.ll create mode 100644 llvm/test/Transforms/LoopIdiom/nontemporal_store.ll create mode 100644 llvm/test/Transforms/LoopIdiom/pr28196.ll create mode 100644 llvm/test/Transforms/LoopIdiom/pr33114.ll create mode 100644 llvm/test/Transforms/LoopIdiom/scev-invalidation.ll create mode 100644 llvm/test/Transforms/LoopIdiom/scev-invalidation_topmostloop.ll create mode 100644 llvm/test/Transforms/LoopIdiom/struct-custom-dl.ll create mode 100644 llvm/test/Transforms/LoopIdiom/struct.ll create mode 100644 llvm/test/Transforms/LoopIdiom/struct_pattern.ll create mode 100644 llvm/test/Transforms/LoopIdiom/unordered-atomic-memcpy-noarch.ll create mode 100644 llvm/test/Transforms/LoopIdiom/unroll-custom-dl.ll create mode 100644 llvm/test/Transforms/LoopIdiom/unroll.ll create mode 100644 llvm/test/Transforms/LoopIdiom/unsafe.ll create mode 100644 llvm/test/Transforms/LoopIdiom/unwind.ll create mode 100644 llvm/test/Transforms/LoopInstSimplify/basic.ll create mode 100644 llvm/test/Transforms/LoopInterchange/call-instructions.ll create mode 100644 llvm/test/Transforms/LoopInterchange/currentLimitation.ll create mode 100644 llvm/test/Transforms/LoopInterchange/debuginfo.ll create mode 100644 llvm/test/Transforms/LoopInterchange/inner-only-reductions.ll create mode 100644 llvm/test/Transforms/LoopInterchange/interchange-flow-dep-outer.ll create mode 100644 llvm/test/Transforms/LoopInterchange/interchange-insts-between-indvar.ll create mode 100644 llvm/test/Transforms/LoopInterchange/interchange-no-deps.ll create mode 100644 llvm/test/Transforms/LoopInterchange/interchangeable.ll create mode 100644 llvm/test/Transforms/LoopInterchange/lcssa.ll create mode 100644 llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll create mode 100644 llvm/test/Transforms/LoopInterchange/not-interchanged-dependencies-1.ll create mode 100644 llvm/test/Transforms/LoopInterchange/not-interchanged-loop-nest-3.ll create mode 100644 llvm/test/Transforms/LoopInterchange/not-interchanged-tightly-nested.ll create mode 100644 llvm/test/Transforms/LoopInterchange/outer-only-reductions.ll create mode 100644 llvm/test/Transforms/LoopInterchange/phi-ordering.ll create mode 100644 llvm/test/Transforms/LoopInterchange/profitability.ll create mode 100644 llvm/test/Transforms/LoopInterchange/reductions-across-inner-and-outer-loop.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/backward.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/cond-load.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/def-store-before-load.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/forward.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/loop-simplify-dep.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/memcheck.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/multiple-stores-same-block.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/non-consecutive.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/opt-size.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/symbolic-stride.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/type-mismatch.ll create mode 100644 llvm/test/Transforms/LoopLoadElim/unknown-dep.ll create mode 100644 llvm/test/Transforms/LoopPredication/basic.ll create mode 100644 llvm/test/Transforms/LoopPredication/basic_widenable_branch_guards.ll create mode 100644 llvm/test/Transforms/LoopPredication/invariant_load.ll create mode 100644 llvm/test/Transforms/LoopPredication/nested.ll create mode 100644 llvm/test/Transforms/LoopPredication/profitability.ll create mode 100644 llvm/test/Transforms/LoopPredication/reverse.ll create mode 100644 llvm/test/Transforms/LoopPredication/visited.ll create mode 100644 llvm/test/Transforms/LoopPredication/widened.ll create mode 100644 llvm/test/Transforms/LoopReroll/basic.ll create mode 100644 llvm/test/Transforms/LoopReroll/basic32iters.ll create mode 100644 llvm/test/Transforms/LoopReroll/complex_reroll.ll create mode 100644 llvm/test/Transforms/LoopReroll/indvar_with_ext.ll create mode 100644 llvm/test/Transforms/LoopReroll/negative.ll create mode 100644 llvm/test/Transforms/LoopReroll/nonconst_lb.ll create mode 100644 llvm/test/Transforms/LoopReroll/ptrindvar.ll create mode 100644 llvm/test/Transforms/LoopReroll/reduction.ll create mode 100644 llvm/test/Transforms/LoopReroll/reroll_with_dbg.ll create mode 100644 llvm/test/Transforms/LoopRotate/2009-01-25-SingleEntryPhi.ll create mode 100644 llvm/test/Transforms/LoopRotate/PhiRename-1.ll create mode 100644 llvm/test/Transforms/LoopRotate/PhiSelfReference-1.ll create mode 100644 llvm/test/Transforms/LoopRotate/alloca.ll create mode 100644 llvm/test/Transforms/LoopRotate/basic.ll create mode 100644 llvm/test/Transforms/LoopRotate/callbr.ll create mode 100755 llvm/test/Transforms/LoopRotate/catchret.ll create mode 100644 llvm/test/Transforms/LoopRotate/convergent.ll create mode 100644 llvm/test/Transforms/LoopRotate/crash.ll create mode 100644 llvm/test/Transforms/LoopRotate/dbg-value-duplicates.ll create mode 100644 llvm/test/Transforms/LoopRotate/dbgvalue.ll create mode 100644 llvm/test/Transforms/LoopRotate/indirectbr.ll create mode 100644 llvm/test/Transforms/LoopRotate/loopexitinglatch.ll create mode 100644 llvm/test/Transforms/LoopRotate/multiple-exits.ll create mode 100644 llvm/test/Transforms/LoopRotate/nosimplifylatch.ll create mode 100644 llvm/test/Transforms/LoopRotate/oz-disable.ll create mode 100644 llvm/test/Transforms/LoopRotate/phi-dbgvalue.ll create mode 100644 llvm/test/Transforms/LoopRotate/phi-duplicate.ll create mode 100644 llvm/test/Transforms/LoopRotate/pr22337.ll create mode 100644 llvm/test/Transforms/LoopRotate/pr2639.ll create mode 100644 llvm/test/Transforms/LoopRotate/pr33701.ll create mode 100644 llvm/test/Transforms/LoopRotate/pr35210.ll create mode 100644 llvm/test/Transforms/LoopRotate/pr37205.ll create mode 100644 llvm/test/Transforms/LoopRotate/preserve-loop-simplify.ll create mode 100644 llvm/test/Transforms/LoopRotate/preserve-mssa.ll create mode 100644 llvm/test/Transforms/LoopRotate/preserve-scev.ll create mode 100644 llvm/test/Transforms/LoopRotate/simplifylatch.ll create mode 100644 llvm/test/Transforms/LoopRotate/vect.omp.persistence.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2003-04-25-AssertFail.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2003-05-12-PreheaderExitOfChild.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2003-08-15-PreheadersFail.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2003-12-10-ExitBlocksProblem.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2004-02-05-DominatorInfoCorruption.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2004-03-15-IncorrectDomUpdate.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2004-04-01-IncorrectDomUpdate.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2004-04-12-LoopSimplify-SwitchBackedges.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2004-04-13-LoopSimplifyUpdateDomFrontier.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2007-10-28-InvokeCrash.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2010-07-15-IncorrectDomFrontierUpdate.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2010-12-26-PHIInfiniteLoop.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2011-12-14-LandingpadHeader.ll create mode 100644 llvm/test/Transforms/LoopSimplify/2012-03-20-indirectbr.ll create mode 100644 llvm/test/Transforms/LoopSimplify/ashr-crash.ll create mode 100644 llvm/test/Transforms/LoopSimplify/basictest.ll create mode 100644 llvm/test/Transforms/LoopSimplify/dbg-loc.ll create mode 100644 llvm/test/Transforms/LoopSimplify/dup-preds.ll create mode 100644 llvm/test/Transforms/LoopSimplify/hardertest.ll create mode 100644 llvm/test/Transforms/LoopSimplify/indirectbr-backedge.ll create mode 100644 llvm/test/Transforms/LoopSimplify/indirectbr.ll create mode 100644 llvm/test/Transforms/LoopSimplify/merge-exits.ll create mode 100644 llvm/test/Transforms/LoopSimplify/notify-scev.ll create mode 100644 llvm/test/Transforms/LoopSimplify/phi-node-simplify.ll create mode 100644 llvm/test/Transforms/LoopSimplify/pr26682.ll create mode 100644 llvm/test/Transforms/LoopSimplify/pr28272.ll create mode 100644 llvm/test/Transforms/LoopSimplify/pr30454.ll create mode 100644 llvm/test/Transforms/LoopSimplify/pr33494.ll create mode 100644 llvm/test/Transforms/LoopSimplify/preserve-llvm-loop-metadata.ll create mode 100644 llvm/test/Transforms/LoopSimplify/preserve-scev.ll create mode 100644 llvm/test/Transforms/LoopSimplify/single-backedge.ll create mode 100644 llvm/test/Transforms/LoopSimplify/unreachable-loop-pred.ll create mode 100644 llvm/test/Transforms/LoopSimplifyCFG/constant-fold-branch.ll create mode 100644 llvm/test/Transforms/LoopSimplifyCFG/irreducible_cfg.ll create mode 100644 llvm/test/Transforms/LoopSimplifyCFG/lcssa.ll create mode 100644 llvm/test/Transforms/LoopSimplifyCFG/live_block_marking.ll create mode 100644 llvm/test/Transforms/LoopSimplifyCFG/merge-header.ll create mode 100644 llvm/test/Transforms/LoopSimplifyCFG/mssa_update.ll create mode 100644 llvm/test/Transforms/LoopSimplifyCFG/phi_with_duplicating_inputs.ll create mode 100644 llvm/test/Transforms/LoopSimplifyCFG/pr39783.ll create mode 100644 llvm/test/Transforms/LoopSimplifyCFG/scev.ll create mode 100644 llvm/test/Transforms/LoopSimplifyCFG/update_parents.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2005-08-15-AddRecIV.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2005-08-17-OutOfLoopVariant.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2005-09-12-UsesOutOutsideOfLoop.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2007-04-23-UseIterator.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2008-08-13-CmpStride.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2008-09-09-Overflow.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2009-01-13-nonconstant-stride-outside-loop.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2009-04-28-no-reduce-mul.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2011-07-19-CritEdgeBreakCrash.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2011-10-03-CritEdgeMerge.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2011-10-06-ReusePhi.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2011-10-13-SCEVChain.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2011-10-14-IntPtr.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2011-12-19-PostincQuadratic.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2012-01-02-nopreheader.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2012-01-16-nopreheader.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2012-03-15-nopreheader.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2012-03-26-constexpr.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2012-07-13-ExpandUDiv.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2012-07-18-LimitReassociate.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2013-01-05-IndBr.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/2013-01-14-ReuseCast.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AArch64/lsr-memcpy.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AArch64/lsr-memset.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AArch64/lsr-reuse.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AArch64/req-regs.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AArch64/small-constant.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AMDGPU/atomics.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AMDGPU/different-addrspace-addressing-mode-loops.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AMDGPU/different-addrspace-crash.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lsr-postinc-pos-addrspace.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lsr-void.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/AMDGPU/preserve-addrspace-assert.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/ARM/2012-06-15-lsr-noaddrmode.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/ARM/addrec-is-loop-invariant.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/ARM/complexity.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/ARM/ivchain-ARM.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopStrengthReduce/NVPTX/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopStrengthReduce/NVPTX/trunc.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/2008-08-14-ShadowIV.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/2009-11-10-LSRCrash.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/2011-07-20-DoubleIV.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/2011-11-29-postincphi.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/2011-12-04-loserreg.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/2012-01-13-phielim.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/bin_power.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/canonical-2.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/canonical.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/incorrect-offset-scaling.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/ivchain-X86.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/ivchain-stress-X86.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/lsr-expand-quadratic.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/lsr-filtering-scaledreg.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/lsr-insns-1.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/lsr-insns-2.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/lsr-overflow.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/macro-fuse-cmp.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/nested-loop.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/no_superflous_induction_vars.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/pr17473.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/pr28719.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/pr40514.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/sibling-loops.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/addrec-gep-address-space.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/addrec-gep.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/address-space-loop.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/count-to-zero.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/dead-phi.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/different-type-ivs.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/dominate-assert.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/dont-hoist-simple-loop-constants.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/dont_insert_redundant_ops.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/dont_reduce_bytes.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/dont_reverse.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/ephemeral.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/exit_compare_live_range.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/funclet.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/hoist-parent-preheader.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/illegal-addr-modes.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/invariant_value_first.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/invariant_value_first_arg.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/ivchain.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/lsr-comp-time.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/lsr-overflow.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/missing-phi-operand-update.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/negative-scale.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/nested-reduce.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/nonintegral.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/nonlinear-postinc.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/ops_after_indvar.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/phi_node_update_multiple_preds.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/post-inc-icmpzero.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/post-inc-optsize.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr12018.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr12048.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr12691.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr18165.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr2537.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr25541.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr2570.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr27056.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr3086.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr31627.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr3399.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/pr3571.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/preserve-gep-loop-variant.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/related_indvars.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/remove_indvar.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/scaling_factor_cost_crash.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/scev-after-loopinstsimplify.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/scev-insertpt-bug.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/sext-ind-var.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/share_code_in_preheader.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/share_ivs.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/shl.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/two-combinations-bug.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/uglygep-address-space.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/uglygep.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/use_postinc_value_outside_loop.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/var_stride_used_by_compare.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/variable_stride.ll create mode 100644 llvm/test/Transforms/LoopTransformWarning/distribution-remarks-missed.ll create mode 100644 llvm/test/Transforms/LoopTransformWarning/enable_and_isvectorized.ll create mode 100644 llvm/test/Transforms/LoopTransformWarning/optnone.ll create mode 100644 llvm/test/Transforms/LoopTransformWarning/unrollandjam-remarks-missed.ll create mode 100644 llvm/test/Transforms/LoopTransformWarning/unrolling-remarks-missed.ll create mode 100644 llvm/test/Transforms/LoopTransformWarning/vectorization-remarks-missed.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2004-05-13-DontUnrollTooMuch.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2005-03-06-BadLoopInfoUpdate.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2006-08-24-MultiBlockLoop.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2007-04-16-PhiUpdate.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2007-05-05-UnrollMiscomp.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2007-05-09-UnknownTripCount.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2007-11-05-Crash.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2011-08-08-PhiUpdate.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2011-08-09-IVSimplify.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2011-08-09-PhiUpdate.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2011-10-01-NoopTrunc.ll create mode 100644 llvm/test/Transforms/LoopUnroll/2012-04-09-unroll-indirectbr.ll create mode 100644 llvm/test/Transforms/LoopUnroll/AArch64/falkor-prefetch.ll create mode 100644 llvm/test/Transforms/LoopUnroll/AArch64/full-unroll-trip-count-upper-bound.ll create mode 100644 llvm/test/Transforms/LoopUnroll/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopUnroll/AArch64/partial.ll create mode 100644 llvm/test/Transforms/LoopUnroll/AArch64/runtime-loop.ll create mode 100644 llvm/test/Transforms/LoopUnroll/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopUnroll/AMDGPU/unroll-barrier.ll create mode 100644 llvm/test/Transforms/LoopUnroll/AMDGPU/unroll-cost-call.ll create mode 100644 llvm/test/Transforms/LoopUnroll/AMDGPU/unroll-for-private.ll create mode 100644 llvm/test/Transforms/LoopUnroll/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopUnroll/ARM/loop-unrolling.ll create mode 100644 llvm/test/Transforms/LoopUnroll/ARM/multi-blocks.ll create mode 100644 llvm/test/Transforms/LoopUnroll/Hexagon/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopUnroll/Hexagon/peel-small-loop.ll create mode 100644 llvm/test/Transforms/LoopUnroll/PowerPC/a2-high-cost-trip-count-computation.ll create mode 100644 llvm/test/Transforms/LoopUnroll/PowerPC/a2-unrolling.ll create mode 100644 llvm/test/Transforms/LoopUnroll/PowerPC/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopUnroll/PowerPC/p7-unrolling.ll create mode 100644 llvm/test/Transforms/LoopUnroll/PowerPC/p8-unrolling-legalize-vectors.ll create mode 100644 llvm/test/Transforms/LoopUnroll/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopUnroll/X86/mmx.ll create mode 100644 llvm/test/Transforms/LoopUnroll/X86/partial.ll create mode 100644 llvm/test/Transforms/LoopUnroll/X86/store_cost.ll create mode 100644 llvm/test/Transforms/LoopUnroll/basic.ll create mode 100644 llvm/test/Transforms/LoopUnroll/complete_unroll_profitability_with_assume.ll create mode 100644 llvm/test/Transforms/LoopUnroll/convergent.ll create mode 100644 llvm/test/Transforms/LoopUnroll/debug-info.ll create mode 100644 llvm/test/Transforms/LoopUnroll/disable-loop-unrolling_forced.ll create mode 100644 llvm/test/Transforms/LoopUnroll/disable_nonforced.ll create mode 100644 llvm/test/Transforms/LoopUnroll/disable_nonforced_count.ll create mode 100644 llvm/test/Transforms/LoopUnroll/disable_nonforced_enable.ll create mode 100644 llvm/test/Transforms/LoopUnroll/disable_nonforced_full.ll create mode 100644 llvm/test/Transforms/LoopUnroll/ephemeral.ll create mode 100644 llvm/test/Transforms/LoopUnroll/epilog_const_phi.ll create mode 100644 llvm/test/Transforms/LoopUnroll/followup.ll create mode 100644 llvm/test/Transforms/LoopUnroll/full-unroll-bad-cost.ll create mode 100644 llvm/test/Transforms/LoopUnroll/full-unroll-crashers.ll create mode 100644 llvm/test/Transforms/LoopUnroll/full-unroll-heuristics-2.ll create mode 100644 llvm/test/Transforms/LoopUnroll/full-unroll-heuristics-cmp.ll create mode 100644 llvm/test/Transforms/LoopUnroll/full-unroll-heuristics-dce.ll create mode 100644 llvm/test/Transforms/LoopUnroll/full-unroll-heuristics-geps.ll create mode 100644 llvm/test/Transforms/LoopUnroll/full-unroll-heuristics-phi-prop.ll create mode 100644 llvm/test/Transforms/LoopUnroll/full-unroll-heuristics.ll create mode 100644 llvm/test/Transforms/LoopUnroll/full-unroll-keep-first-exit.ll create mode 100644 llvm/test/Transforms/LoopUnroll/high-cost-trip-count-computation.ll create mode 100644 llvm/test/Transforms/LoopUnroll/ignore-annotation-intrinsic-cost.ll create mode 100644 llvm/test/Transforms/LoopUnroll/invalidate_right_loop.ll create mode 100644 llvm/test/Transforms/LoopUnroll/loop-remarks-with-hotness.ll create mode 100644 llvm/test/Transforms/LoopUnroll/loop-remarks.ll create mode 100644 llvm/test/Transforms/LoopUnroll/not-rotated.ll create mode 100644 llvm/test/Transforms/LoopUnroll/partial-unroll-const-bounds.ll create mode 100644 llvm/test/Transforms/LoopUnroll/peel-loop-conditions.ll create mode 100644 llvm/test/Transforms/LoopUnroll/peel-loop-irreducible.ll create mode 100644 llvm/test/Transforms/LoopUnroll/peel-loop-negative.ll create mode 100644 llvm/test/Transforms/LoopUnroll/peel-loop-not-forced.ll create mode 100644 llvm/test/Transforms/LoopUnroll/peel-loop-pgo.ll create mode 100644 llvm/test/Transforms/LoopUnroll/peel-loop-scev-invalidate.ll create mode 100644 llvm/test/Transforms/LoopUnroll/peel-loop.ll create mode 100644 llvm/test/Transforms/LoopUnroll/peel-loop2.ll create mode 100644 llvm/test/Transforms/LoopUnroll/pr10813.ll create mode 100644 llvm/test/Transforms/LoopUnroll/pr11361.ll create mode 100644 llvm/test/Transforms/LoopUnroll/pr14167.ll create mode 100644 llvm/test/Transforms/LoopUnroll/pr18861.ll create mode 100644 llvm/test/Transforms/LoopUnroll/pr27157.ll create mode 100644 llvm/test/Transforms/LoopUnroll/pr28132.ll create mode 100644 llvm/test/Transforms/LoopUnroll/pr31718.ll create mode 100644 llvm/test/Transforms/LoopUnroll/pr33437.ll create mode 100644 llvm/test/Transforms/LoopUnroll/rebuild_lcssa.ll create mode 100644 llvm/test/Transforms/LoopUnroll/revisit.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-epilog-debuginfo.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-li.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-loop-multiexit-dom-verify.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-loop-multiple-exits.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-loop-non-exiting-latch.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-loop.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-loop1.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-loop2.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-loop3.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-loop4.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-loop5.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-multiexit-heuristic.ll create mode 100644 llvm/test/Transforms/LoopUnroll/runtime-unroll-remainder.ll create mode 100644 llvm/test/Transforms/LoopUnroll/scevunroll.ll create mode 100644 llvm/test/Transforms/LoopUnroll/shifted-tripcount.ll create mode 100644 llvm/test/Transforms/LoopUnroll/tripcount-overflow.ll create mode 100644 llvm/test/Transforms/LoopUnroll/unloop.ll create mode 100644 llvm/test/Transforms/LoopUnroll/unroll-cleanup.ll create mode 100644 llvm/test/Transforms/LoopUnroll/unroll-cleanuppad.ll create mode 100644 llvm/test/Transforms/LoopUnroll/unroll-count.ll create mode 100644 llvm/test/Transforms/LoopUnroll/unroll-heuristics-pgo.ll create mode 100644 llvm/test/Transforms/LoopUnroll/unroll-loop-invalidation.ll create mode 100644 llvm/test/Transforms/LoopUnroll/unroll-maxcount.ll create mode 100644 llvm/test/Transforms/LoopUnroll/unroll-opt-attribute.ll create mode 100644 llvm/test/Transforms/LoopUnroll/unroll-pragmas-disabled.ll create mode 100644 llvm/test/Transforms/LoopUnroll/unroll-pragmas.ll create mode 100644 llvm/test/Transforms/LoopUnroll/update-loop-info-in-subloops.ll create mode 100644 llvm/test/Transforms/LoopUnrollAndJam/dependencies.ll create mode 100644 llvm/test/Transforms/LoopUnrollAndJam/disable.ll create mode 100644 llvm/test/Transforms/LoopUnrollAndJam/disable_nonforced.ll create mode 100644 llvm/test/Transforms/LoopUnrollAndJam/disable_nonforced_count.ll create mode 100644 llvm/test/Transforms/LoopUnrollAndJam/disable_nonforced_enable.ll create mode 100644 llvm/test/Transforms/LoopUnrollAndJam/followup.ll create mode 100644 llvm/test/Transforms/LoopUnrollAndJam/pragma-explicit.ll create mode 100644 llvm/test/Transforms/LoopUnrollAndJam/pragma.ll create mode 100644 llvm/test/Transforms/LoopUnrollAndJam/unprofitable.ll create mode 100644 llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2006-06-13-SingleEntryPHI.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2006-06-27-DeadSwitchCase.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2007-05-09-Unreachable.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2007-05-09-tl.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2007-07-12-ExitDomInfo.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2007-07-13-DomInfo.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2007-07-18-DomInfo.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2007-08-01-Dom.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2007-08-01-LCSSA.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2007-10-04-DomFrontier.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2008-06-02-DomInfo.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2008-06-17-DomFrontier.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2008-11-03-Invariant.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2010-11-18-LCSSA.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2011-06-02-CritSwitch.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2011-09-26-EHCrash.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2011-11-18-SimpleSwitch.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2011-11-18-TwoSwitches-Threshold.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2011-11-18-TwoSwitches.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2012-04-02-IndirectBr.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2012-04-30-LoopUnswitch-LPad-Crash.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2012-05-20-Phi.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2015-06-17-Metadata.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/2015-09-18-Addrspace.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/AMDGPU/divergent-unswitch.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopUnswitch/LIV-loop-condtion.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/basictest.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/cleanuppad.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/copy-metadata.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/crash.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/elseif-non-exponential-behavior.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/exponential-behavior.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/guards.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/infinite-loop.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/invalidate-scev.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/msan.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/pr32818.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/preserve-analyses.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/simplify-with-nonvalness.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/trivial-unswitch.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/unswitch-equality-undef.ll create mode 100644 llvm/test/Transforms/LoopUnswitch/unswitch-select.ll create mode 100644 llvm/test/Transforms/LoopVectorize/12-12-11-if-conv.ll create mode 100644 llvm/test/Transforms/LoopVectorize/2012-10-20-infloop.ll create mode 100644 llvm/test/Transforms/LoopVectorize/2012-10-22-isconsec.ll create mode 100644 llvm/test/Transforms/LoopVectorize/2016-07-27-loop-vec.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/aarch64-predication.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/aarch64-unroll.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/arbitrary-induction-step.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/arm64-unroll.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/backedge-overflow.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/gather-cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/induction-trunc.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/interleaved-vs-scalar.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/interleaved_cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/max-vf-for-interleaved.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/no_vector_instructions.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_test1_no_explicit_vect_width.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/pr31900.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/pr33053.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/pr36032.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/predication_costs.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/reduction-small-size.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/sdiv-pow2.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/smallest-and-widest-types.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AArch64/type-shrinkage-insertelt.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AMDGPU/divergent-runtime-check.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopVectorize/AMDGPU/packed-math.ll create mode 100644 llvm/test/Transforms/LoopVectorize/AMDGPU/unroll-in-loop-vectorizer.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ARM/arm-ieee-vectorize.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ARM/arm-unroll.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ARM/gather-cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ARM/gcc-examples.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ARM/interleaved_cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopVectorize/ARM/mul-cast-vect.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ARM/sphinx.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ARM/vector_cast.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ARM/width-detect.ll create mode 100644 llvm/test/Transforms/LoopVectorize/Hexagon/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopVectorize/Hexagon/minimum-vf.ll create mode 100644 llvm/test/Transforms/LoopVectorize/PowerPC/agg-interleave-a2.ll create mode 100644 llvm/test/Transforms/LoopVectorize/PowerPC/large-loop-rdx.ll create mode 100644 llvm/test/Transforms/LoopVectorize/PowerPC/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopVectorize/PowerPC/pr30990.ll create mode 100644 llvm/test/Transforms/LoopVectorize/PowerPC/small-loop-rdx.ll create mode 100644 llvm/test/Transforms/LoopVectorize/PowerPC/stride-vectorization.ll create mode 100644 llvm/test/Transforms/LoopVectorize/PowerPC/vectorize-only-for-real.ll create mode 100644 llvm/test/Transforms/LoopVectorize/PowerPC/vsx-tsvc-s173.ll create mode 100644 llvm/test/Transforms/LoopVectorize/SystemZ/addressing.ll create mode 100644 llvm/test/Transforms/LoopVectorize/SystemZ/branch-for-predicated-block.ll create mode 100644 llvm/test/Transforms/LoopVectorize/SystemZ/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopVectorize/SystemZ/load-scalarization-cost-0.ll create mode 100644 llvm/test/Transforms/LoopVectorize/SystemZ/load-scalarization-cost-1.ll create mode 100644 llvm/test/Transforms/LoopVectorize/SystemZ/load-store-scalarization-cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/SystemZ/mem-interleaving-costs-02.ll create mode 100644 llvm/test/Transforms/LoopVectorize/SystemZ/mem-interleaving-costs.ll create mode 100644 llvm/test/Transforms/LoopVectorize/SystemZ/pr38110.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/already-vectorized.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/assume.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/avx1.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/avx512.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-cg-bug.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/constant-fold.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/constant-vector-operand.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/cost-model.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/force-ifcvt.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/fp32_to_uint32-cost-model.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/fp64_to_uint32-cost-model.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/fp_to_sint8-cost-model.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/funclet.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/gather-cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/gather-vs-interleave.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/gcc-examples.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/imprecise-through-phis.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/int128_no_gather.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-large-gap.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/interleaving.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/max-mstore.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/min-trip-count-switch.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/mul_slm_16bit.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/no-vector.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/no_fpmath.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/no_fpmath_with_hotness.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/optsize.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/outer_loop_test1_no_explicit_vect_width.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/parallel-loops-after-reg2mem.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/parallel-loops.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/powof2div.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/pr23997.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/pr34438.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/pr35432.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/pr36524.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/pr39160.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/propagate-metadata.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/ptr-indvar-crash.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/rauw-bug.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/reduction-crash.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/reduction-small-size.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/redundant-vf2-cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/reg-usage-debug.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/reg-usage.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/register-assumption.ll create mode 100755 llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/slm-no-vectorize.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/small-size.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/struct-store.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/svml-calls-finite.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/svml-calls.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/tripcount.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/uint64_to_fp64-cost-model.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/uniform-phi.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/uniform_load.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/uniformshift.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/unroll-pm.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/unroll-small-loops.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/unroll_selection.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/veclib-calls.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/vector-scalar-select-cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/vector_max_bandwidth.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/vector_ptr_load_store.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-loopid-dbg.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-profitable.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/vectorize-only-for-real.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/x86-pr39099.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/x86-predication.ll create mode 100644 llvm/test/Transforms/LoopVectorize/X86/x86_fp80-vector-store.ll create mode 100644 llvm/test/Transforms/LoopVectorize/XCore/lit.local.cfg create mode 100644 llvm/test/Transforms/LoopVectorize/XCore/no-vector-registers.ll create mode 100644 llvm/test/Transforms/LoopVectorize/align.ll create mode 100644 llvm/test/Transforms/LoopVectorize/bsd_regex.ll create mode 100644 llvm/test/Transforms/LoopVectorize/bzip_reverse_loops.ll create mode 100644 llvm/test/Transforms/LoopVectorize/calloc.ll create mode 100644 llvm/test/Transforms/LoopVectorize/cast-induction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/conditional-assignment.ll create mode 100644 llvm/test/Transforms/LoopVectorize/consec_no_gep.ll create mode 100644 llvm/test/Transforms/LoopVectorize/consecutive-ptr-uniforms.ll create mode 100644 llvm/test/Transforms/LoopVectorize/control-flow.ll create mode 100644 llvm/test/Transforms/LoopVectorize/cpp-new-array.ll create mode 100644 llvm/test/Transforms/LoopVectorize/dbg.value.ll create mode 100644 llvm/test/Transforms/LoopVectorize/dead_instructions.ll create mode 100644 llvm/test/Transforms/LoopVectorize/debugloc.ll create mode 100644 llvm/test/Transforms/LoopVectorize/demanded-bits-of-pointer-instruction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/diag-missing-instr-debug-loc.ll create mode 100644 llvm/test/Transforms/LoopVectorize/diag-with-hotness-info-2.ll create mode 100644 llvm/test/Transforms/LoopVectorize/diag-with-hotness-info.ll create mode 100644 llvm/test/Transforms/LoopVectorize/disable_nonforced.ll create mode 100644 llvm/test/Transforms/LoopVectorize/disable_nonforced_enable.ll create mode 100644 llvm/test/Transforms/LoopVectorize/discriminator.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ee-crash.ll create mode 100644 llvm/test/Transforms/LoopVectorize/exact.ll create mode 100644 llvm/test/Transforms/LoopVectorize/explicit_outer_detection.ll create mode 100644 llvm/test/Transforms/LoopVectorize/explicit_outer_nonuniform_inner.ll create mode 100644 llvm/test/Transforms/LoopVectorize/explicit_outer_uniform_diverg_branch.ll create mode 100644 llvm/test/Transforms/LoopVectorize/fcmp-vectorize.ll create mode 100644 llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll create mode 100644 llvm/test/Transforms/LoopVectorize/flags.ll create mode 100644 llvm/test/Transforms/LoopVectorize/float-induction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/float-reduction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/followup.ll create mode 100644 llvm/test/Transforms/LoopVectorize/funcall.ll create mode 100644 llvm/test/Transforms/LoopVectorize/gcc-examples.ll create mode 100644 llvm/test/Transforms/LoopVectorize/gep_with_bitcast.ll create mode 100644 llvm/test/Transforms/LoopVectorize/global_alias.ll create mode 100644 llvm/test/Transforms/LoopVectorize/hints-trans.ll create mode 100644 llvm/test/Transforms/LoopVectorize/hoist-loads.ll create mode 100644 llvm/test/Transforms/LoopVectorize/i8-induction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/icmp-uniforms.ll create mode 100644 llvm/test/Transforms/LoopVectorize/if-conv-crash.ll create mode 100644 llvm/test/Transforms/LoopVectorize/if-conversion-edgemasks.ll create mode 100644 llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll create mode 100644 llvm/test/Transforms/LoopVectorize/if-conversion-reduction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/if-conversion.ll create mode 100644 llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll create mode 100644 llvm/test/Transforms/LoopVectorize/if-pred-not-when-safe.ll create mode 100644 llvm/test/Transforms/LoopVectorize/if-pred-stores.ll create mode 100644 llvm/test/Transforms/LoopVectorize/if-reduction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/incorrect-dom-info.ll create mode 100644 llvm/test/Transforms/LoopVectorize/increment.ll create mode 100644 llvm/test/Transforms/LoopVectorize/induction-step.ll create mode 100644 llvm/test/Transforms/LoopVectorize/induction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/induction_plus.ll create mode 100644 llvm/test/Transforms/LoopVectorize/infiniteloop.ll create mode 100644 llvm/test/Transforms/LoopVectorize/int_sideeffect.ll create mode 100644 llvm/test/Transforms/LoopVectorize/interleaved-accesses-1.ll create mode 100644 llvm/test/Transforms/LoopVectorize/interleaved-accesses-2.ll create mode 100644 llvm/test/Transforms/LoopVectorize/interleaved-accesses-3.ll create mode 100644 llvm/test/Transforms/LoopVectorize/interleaved-accesses-alias.ll create mode 100644 llvm/test/Transforms/LoopVectorize/interleaved-accesses-masked-group.ll create mode 100644 llvm/test/Transforms/LoopVectorize/interleaved-accesses-pred-stores.ll create mode 100644 llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll create mode 100644 llvm/test/Transforms/LoopVectorize/interleaved-acess-with-remarks.ll create mode 100644 llvm/test/Transforms/LoopVectorize/intrinsic.ll create mode 100644 llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll create mode 100644 llvm/test/Transforms/LoopVectorize/iv_outside_user.ll create mode 100644 llvm/test/Transforms/LoopVectorize/lcssa-crash.ll create mode 100644 llvm/test/Transforms/LoopVectorize/legal_preheader_check.ll create mode 100644 llvm/test/Transforms/LoopVectorize/libcall-remark.ll create mode 100644 llvm/test/Transforms/LoopVectorize/lifetime.ll create mode 100644 llvm/test/Transforms/LoopVectorize/loop-form.ll create mode 100644 llvm/test/Transforms/LoopVectorize/loop-scalars.ll create mode 100644 llvm/test/Transforms/LoopVectorize/loop-vect-memdep.ll create mode 100644 llvm/test/Transforms/LoopVectorize/memdep.ll create mode 100644 llvm/test/Transforms/LoopVectorize/metadata-unroll.ll create mode 100644 llvm/test/Transforms/LoopVectorize/metadata-width.ll create mode 100644 llvm/test/Transforms/LoopVectorize/metadata.ll create mode 100644 llvm/test/Transforms/LoopVectorize/middle-block-dbg.ll create mode 100644 llvm/test/Transforms/LoopVectorize/miniters.ll create mode 100644 llvm/test/Transforms/LoopVectorize/minmax_reduction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/multi-use-reduction-bug.ll create mode 100644 llvm/test/Transforms/LoopVectorize/multiple-address-spaces.ll create mode 100644 llvm/test/Transforms/LoopVectorize/multiple-strides-vectorization.ll create mode 100644 llvm/test/Transforms/LoopVectorize/no-interleave-up-front.ll create mode 100644 llvm/test/Transforms/LoopVectorize/no_array_bounds.ll create mode 100644 llvm/test/Transforms/LoopVectorize/no_idiv_reduction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/no_int_induction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/no_outside_user.ll create mode 100644 llvm/test/Transforms/LoopVectorize/no_switch.ll create mode 100644 llvm/test/Transforms/LoopVectorize/no_switch_disable_vectorization.ll create mode 100644 llvm/test/Transforms/LoopVectorize/noalias-md-licm.ll create mode 100644 llvm/test/Transforms/LoopVectorize/noalias-md.ll create mode 100644 llvm/test/Transforms/LoopVectorize/nofloat.ll create mode 100644 llvm/test/Transforms/LoopVectorize/non-const-n.ll create mode 100644 llvm/test/Transforms/LoopVectorize/nontemporal.ll create mode 100644 llvm/test/Transforms/LoopVectorize/nsw-crash.ll create mode 100644 llvm/test/Transforms/LoopVectorize/opt.ll create mode 100644 llvm/test/Transforms/LoopVectorize/optsize.ll create mode 100644 llvm/test/Transforms/LoopVectorize/outer_loop_test1.ll create mode 100644 llvm/test/Transforms/LoopVectorize/outer_loop_test2.ll create mode 100644 llvm/test/Transforms/LoopVectorize/partial-lcssa.ll create mode 100644 llvm/test/Transforms/LoopVectorize/phi-cost.ll create mode 100644 llvm/test/Transforms/LoopVectorize/phi-hang.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr25281.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr28541.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr30654-phiscev-sext-trunc.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr30806-phi-scev.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr30806.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr31098.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr31190.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr32859.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr33706.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr34681.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr35743.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr35773.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr36311.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr36983.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr37248.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr37515.ll create mode 100755 llvm/test/Transforms/LoopVectorize/pr38800.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr39099.ll create mode 100644 llvm/test/Transforms/LoopVectorize/pr39417-optsize-scevchecks.ll create mode 100644 llvm/test/Transforms/LoopVectorize/preserve-dbg-loc-and-loop-metadata.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ptr-induction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/ptr_loops.ll create mode 100644 llvm/test/Transforms/LoopVectorize/read-only.ll create mode 100644 llvm/test/Transforms/LoopVectorize/reduction-small-size.ll create mode 100644 llvm/test/Transforms/LoopVectorize/reduction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/remove_metadata.ll create mode 100644 llvm/test/Transforms/LoopVectorize/reverse_induction.ll create mode 100644 llvm/test/Transforms/LoopVectorize/reverse_iter.ll create mode 100644 llvm/test/Transforms/LoopVectorize/runtime-check-address-space.ll create mode 100644 llvm/test/Transforms/LoopVectorize/runtime-check-readonly-address-space.ll create mode 100644 llvm/test/Transforms/LoopVectorize/runtime-check-readonly.ll create mode 100644 llvm/test/Transforms/LoopVectorize/runtime-check.ll create mode 100644 llvm/test/Transforms/LoopVectorize/runtime-limit.ll create mode 100644 llvm/test/Transforms/LoopVectorize/safegep.ll create mode 100644 llvm/test/Transforms/LoopVectorize/same-base-access.ll create mode 100644 llvm/test/Transforms/LoopVectorize/scalar-select.ll create mode 100644 llvm/test/Transforms/LoopVectorize/scalar_after_vectorization.ll create mode 100644 llvm/test/Transforms/LoopVectorize/scev-exitlim-crash.ll create mode 100644 llvm/test/Transforms/LoopVectorize/simple-unroll.ll create mode 100644 llvm/test/Transforms/LoopVectorize/skip-iterations.ll create mode 100644 llvm/test/Transforms/LoopVectorize/small-loop.ll create mode 100644 llvm/test/Transforms/LoopVectorize/start-non-zero.ll create mode 100644 llvm/test/Transforms/LoopVectorize/store-shuffle-bug.ll create mode 100644 llvm/test/Transforms/LoopVectorize/struct_access.ll create mode 100644 llvm/test/Transforms/LoopVectorize/tbaa-nodep.ll create mode 100644 llvm/test/Transforms/LoopVectorize/tripcount.ll create mode 100644 llvm/test/Transforms/LoopVectorize/undef-inst-bug.ll create mode 100644 llvm/test/Transforms/LoopVectorize/unroll-novec-memcheck-metadata.ll create mode 100644 llvm/test/Transforms/LoopVectorize/unroll.ll create mode 100644 llvm/test/Transforms/LoopVectorize/unroll_novec.ll create mode 100644 llvm/test/Transforms/LoopVectorize/unsafe-dep-remark.ll create mode 100644 llvm/test/Transforms/LoopVectorize/unsized-pointee-crash.ll create mode 100644 llvm/test/Transforms/LoopVectorize/value-ptr-bug.ll create mode 100644 llvm/test/Transforms/LoopVectorize/vect-phiscev-sext-trunc.ll create mode 100644 llvm/test/Transforms/LoopVectorize/vect.omp.persistence.ll create mode 100644 llvm/test/Transforms/LoopVectorize/vect.stats.ll create mode 100644 llvm/test/Transforms/LoopVectorize/vector-geps.ll create mode 100644 llvm/test/Transforms/LoopVectorize/vectorize-once.ll create mode 100644 llvm/test/Transforms/LoopVectorize/version-mem-access.ll create mode 100644 llvm/test/Transforms/LoopVectorize/vplan-stress-test-no-explict-vf.ll create mode 100644 llvm/test/Transforms/LoopVectorize/vplan_hcfg_stress_test.ll create mode 100644 llvm/test/Transforms/LoopVectorize/write-only.ll create mode 100644 llvm/test/Transforms/LoopVectorize/zero-sized-pointee-crash.ll create mode 100644 llvm/test/Transforms/LoopVersioning/add-phi-update-users.ll create mode 100644 llvm/test/Transforms/LoopVersioning/basic.ll create mode 100644 llvm/test/Transforms/LoopVersioning/exit-block-dominates-rt-check-block.ll create mode 100644 llvm/test/Transforms/LoopVersioning/incorrect-phi.ll create mode 100644 llvm/test/Transforms/LoopVersioning/lcssa.ll create mode 100644 llvm/test/Transforms/LoopVersioning/loop-invariant-bound.ll create mode 100644 llvm/test/Transforms/LoopVersioning/noalias-version-twice.ll create mode 100644 llvm/test/Transforms/LoopVersioning/noalias.ll create mode 100644 llvm/test/Transforms/LoopVersioningLICM/loopversioningLICM1.ll create mode 100644 llvm/test/Transforms/LoopVersioningLICM/loopversioningLICM2.ll create mode 100644 llvm/test/Transforms/LoopVersioningLICM/loopversioningLICM3.ll create mode 100644 llvm/test/Transforms/LoopVersioningLICM/metadata.ll create mode 100644 llvm/test/Transforms/LowerAtomic/atomic-load.ll create mode 100644 llvm/test/Transforms/LowerAtomic/atomic-swap.ll create mode 100644 llvm/test/Transforms/LowerAtomic/barrier.ll create mode 100644 llvm/test/Transforms/LowerExpectIntrinsic/PR33346.ll create mode 100644 llvm/test/Transforms/LowerExpectIntrinsic/basic.ll create mode 100644 llvm/test/Transforms/LowerExpectIntrinsic/expect_nonboolean.ll create mode 100644 llvm/test/Transforms/LowerExpectIntrinsic/phi_merge.ll create mode 100644 llvm/test/Transforms/LowerExpectIntrinsic/phi_or.ll create mode 100644 llvm/test/Transforms/LowerExpectIntrinsic/phi_tern.ll create mode 100644 llvm/test/Transforms/LowerGuardIntrinsic/basic.ll create mode 100644 llvm/test/Transforms/LowerGuardIntrinsic/with-calling-conv.ll create mode 100644 llvm/test/Transforms/LowerInvoke/2003-12-10-Crash.ll create mode 100644 llvm/test/Transforms/LowerInvoke/lowerinvoke.ll create mode 100644 llvm/test/Transforms/LowerSwitch/2003-05-01-PHIProblem.ll create mode 100644 llvm/test/Transforms/LowerSwitch/2003-08-23-EmptySwitch.ll create mode 100644 llvm/test/Transforms/LowerSwitch/2004-03-13-SwitchIsDefaultCrash.ll create mode 100644 llvm/test/Transforms/LowerSwitch/2014-06-10-SwitchContiguousOpt.ll create mode 100644 llvm/test/Transforms/LowerSwitch/2014-06-11-SwitchDefaultUnreachableOpt.ll create mode 100644 llvm/test/Transforms/LowerSwitch/2014-06-23-PHIlowering.ll create mode 100644 llvm/test/Transforms/LowerSwitch/delete-default-block-crash.ll create mode 100644 llvm/test/Transforms/LowerSwitch/do-not-handle-impossible-values.ll create mode 100644 llvm/test/Transforms/LowerSwitch/feature.ll create mode 100644 llvm/test/Transforms/LowerSwitch/fold-popular-case-to-unreachable-default.ll create mode 100644 llvm/test/Transforms/LowerSwitch/phi-in-dead-block.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/blockaddr-import.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/cfi-direct-call.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/cfi-direct-call1.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/export-icall.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/exported-funcs.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/import-alias.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/import-icall.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/import-unsat.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/import.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/use-typeid1-dead.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/Inputs/use-typeid1-typeid2.yaml create mode 100644 llvm/test/Transforms/LowerTypeTests/blockaddr-import.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/blockaddress-2.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/blockaddress.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/cfi-direct-call.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/cfi-direct-call1.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/constant.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/export-alias.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/export-allones.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/export-bytearray.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/export-cross-dso-cfi.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/export-dead.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/export-icall.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/export-inline.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/export-nothing.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/export-single.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/export-symver.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/external-global.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/function-arm-thumb.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/function-disjoint.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/function-ext.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/function-weak.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/function.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/icall-branch-funnel.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/import-alias.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/import-icall.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/import-unsat.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/import.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/layout.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/nonstring.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/pr25902.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/pr37625.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/section.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/simple.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/simplify.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/simplify_phi.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/single-offset.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/unnamed.ll create mode 100644 llvm/test/Transforms/LowerTypeTests/unsat.ll create mode 100644 llvm/test/Transforms/LowerWidenableCondition/basic.ll create mode 100644 llvm/test/Transforms/MakeGuardsExplicit/basic.ll create mode 100644 llvm/test/Transforms/Mem2Reg/2002-03-28-UninitializedVal.ll create mode 100644 llvm/test/Transforms/Mem2Reg/2002-05-01-ShouldNotPromoteThisAlloca.ll create mode 100644 llvm/test/Transforms/Mem2Reg/2003-04-10-DFNotFound.ll create mode 100644 llvm/test/Transforms/Mem2Reg/2003-04-18-DeadBlockProblem.ll create mode 100644 llvm/test/Transforms/Mem2Reg/2003-04-24-MultipleIdenticalSuccessors.ll create mode 100644 llvm/test/Transforms/Mem2Reg/2003-06-26-IterativePromote.ll create mode 100644 llvm/test/Transforms/Mem2Reg/2003-10-05-DeadPHIInsertion.ll create mode 100644 llvm/test/Transforms/Mem2Reg/2005-06-30-ReadBeforeWrite.ll create mode 100644 llvm/test/Transforms/Mem2Reg/2005-11-28-Crash.ll create mode 100644 llvm/test/Transforms/Mem2Reg/2007-08-27-VolatileLoadsStores.ll create mode 100644 llvm/test/Transforms/Mem2Reg/ConvertDebugInfo.ll create mode 100644 llvm/test/Transforms/Mem2Reg/ConvertDebugInfo2.ll create mode 100644 llvm/test/Transforms/Mem2Reg/PromoteMemToRegister.ll create mode 100644 llvm/test/Transforms/Mem2Reg/UndefValuesMerge.ll create mode 100644 llvm/test/Transforms/Mem2Reg/atomic.ll create mode 100644 llvm/test/Transforms/Mem2Reg/crash.ll create mode 100644 llvm/test/Transforms/Mem2Reg/dbg-addr-inline-dse.ll create mode 100644 llvm/test/Transforms/Mem2Reg/dbg-addr.ll create mode 100644 llvm/test/Transforms/Mem2Reg/dbg-inline-scope-for-phi.ll create mode 100644 llvm/test/Transforms/Mem2Reg/debug-alloca-phi-2.ll create mode 100644 llvm/test/Transforms/Mem2Reg/debug-alloca-phi.ll create mode 100644 llvm/test/Transforms/Mem2Reg/debug-alloca-vla-1.ll create mode 100644 llvm/test/Transforms/Mem2Reg/debug-alloca-vla-2.ll create mode 100644 llvm/test/Transforms/Mem2Reg/ignore-lifetime.ll create mode 100644 llvm/test/Transforms/Mem2Reg/optnone.ll create mode 100644 llvm/test/Transforms/Mem2Reg/pr24179.ll create mode 100644 llvm/test/Transforms/Mem2Reg/pr37632-unreachable-list-of-stores.ll create mode 100644 llvm/test/Transforms/Mem2Reg/preserve-nonnull-load-metadata.ll create mode 100644 llvm/test/Transforms/Mem2Reg/undef-order.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/2008-02-24-MultipleUseofSRet.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/2008-03-13-ReturnSlotBitcast.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/2011-06-02-CallSlotOverwritten.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/align.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/atomic.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/callslot_aa.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/callslot_deref.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/callslot_throw.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/capturing-func.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/crash.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/fca2memcpy.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/form-memset.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/invariant.start.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/lifetime.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/load-store-to-memcpy.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/loadstore-sret.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/memcpy-to-memset.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/memcpy-undef.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/memcpy.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/memmove.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/memset-memcpy-oversized.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/memset-memcpy-redundant-memset.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/memset-memcpy-to-2x-memset.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/nontemporal.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/pr29105.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/process_store.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/profitable-memset.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/smaller.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/sret.ll create mode 100644 llvm/test/Transforms/MemCpyOpt/stackrestore.ll create mode 100644 llvm/test/Transforms/MergeFunc/2011-02-08-RemoveEqual.ll create mode 100644 llvm/test/Transforms/MergeFunc/2013-01-10-MergeFuncAssert.ll create mode 100644 llvm/test/Transforms/MergeFunc/address-spaces.ll create mode 100644 llvm/test/Transforms/MergeFunc/alias.ll create mode 100644 llvm/test/Transforms/MergeFunc/alloca.ll create mode 100644 llvm/test/Transforms/MergeFunc/apply_function_attributes.ll create mode 100644 llvm/test/Transforms/MergeFunc/call-and-invoke-with-ranges.ll create mode 100644 llvm/test/Transforms/MergeFunc/constant-entire-value.ll create mode 100644 llvm/test/Transforms/MergeFunc/crash.ll create mode 100644 llvm/test/Transforms/MergeFunc/crash2.ll create mode 100644 llvm/test/Transforms/MergeFunc/external-before-local.ll create mode 100644 llvm/test/Transforms/MergeFunc/fold-weak.ll create mode 100644 llvm/test/Transforms/MergeFunc/functions.ll create mode 100644 llvm/test/Transforms/MergeFunc/gep-base-type.ll create mode 100644 llvm/test/Transforms/MergeFunc/inline-asm.ll create mode 100644 llvm/test/Transforms/MergeFunc/inttoptr-address-space.ll create mode 100644 llvm/test/Transforms/MergeFunc/inttoptr.ll create mode 100644 llvm/test/Transforms/MergeFunc/linkonce_odr.ll create mode 100644 llvm/test/Transforms/MergeFunc/merge-block-address-other-function.ll create mode 100644 llvm/test/Transforms/MergeFunc/merge-block-address.ll create mode 100644 llvm/test/Transforms/MergeFunc/merge-const-ptr-and-int.ll create mode 100644 llvm/test/Transforms/MergeFunc/merge-different-vector-types.ll create mode 100644 llvm/test/Transforms/MergeFunc/merge-ptr-and-int.ll create mode 100644 llvm/test/Transforms/MergeFunc/merge-small-unnamed-addr.ll create mode 100644 llvm/test/Transforms/MergeFunc/merge-unnamed-addr-bitcast.ll create mode 100644 llvm/test/Transforms/MergeFunc/merge-unnamed-addr.ll create mode 100644 llvm/test/Transforms/MergeFunc/merge-weak-crash.ll create mode 100644 llvm/test/Transforms/MergeFunc/mergefunc-preserve-debug-info.ll create mode 100644 llvm/test/Transforms/MergeFunc/mergefunc-struct-return.ll create mode 100644 llvm/test/Transforms/MergeFunc/no-merge-block-address-different-labels.ll create mode 100644 llvm/test/Transforms/MergeFunc/no-merge-block-address-other-function.ll create mode 100644 llvm/test/Transforms/MergeFunc/no-merge-ptr-different-sizes.ll create mode 100644 llvm/test/Transforms/MergeFunc/no-merge-ptr-int-different-values.ll create mode 100644 llvm/test/Transforms/MergeFunc/nonzero-address-spaces.ll create mode 100644 llvm/test/Transforms/MergeFunc/phi-check-blocks.ll create mode 100644 llvm/test/Transforms/MergeFunc/phi-speculation1.ll create mode 100644 llvm/test/Transforms/MergeFunc/phi-speculation2.ll create mode 100644 llvm/test/Transforms/MergeFunc/ptr-int-transitivity-1.ll create mode 100644 llvm/test/Transforms/MergeFunc/ptr-int-transitivity-2.ll create mode 100644 llvm/test/Transforms/MergeFunc/ptr-int-transitivity-3.ll create mode 100644 llvm/test/Transforms/MergeFunc/ranges-multiple.ll create mode 100644 llvm/test/Transforms/MergeFunc/ranges.ll create mode 100644 llvm/test/Transforms/MergeFunc/self-referential-global.ll create mode 100644 llvm/test/Transforms/MergeFunc/tailcall.ll create mode 100644 llvm/test/Transforms/MergeFunc/too-small.ll create mode 100644 llvm/test/Transforms/MergeFunc/undef-different-types.ll create mode 100644 llvm/test/Transforms/MergeFunc/unnamed-addr-reprocessing.ll create mode 100644 llvm/test/Transforms/MergeFunc/va_arg.ll create mode 100644 llvm/test/Transforms/MergeFunc/vector-GEP-crash.ll create mode 100644 llvm/test/Transforms/MergeFunc/vector.ll create mode 100644 llvm/test/Transforms/MergeFunc/vectors-and-arrays.ll create mode 100644 llvm/test/Transforms/MergeFunc/weak-small.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/alias-merge-blocks.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/atomic.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/entry-block-shuffled.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/gep-used-outside.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/int64-and-ptr.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/last-block-produce-no-value.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/MergeICmps/X86/multiple-blocks-does-work.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/pair-int32-int32.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/pr36557.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/split-block-does-work.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/tuple-four-int8.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/two-complex-bb.ll create mode 100644 llvm/test/Transforms/MergeICmps/X86/volatile.ll create mode 100644 llvm/test/Transforms/MergeICmps/pair-int32-int32.ll create mode 100644 llvm/test/Transforms/MetaRenamer/main.ll create mode 100644 llvm/test/Transforms/MetaRenamer/metarenamer.ll create mode 100644 llvm/test/Transforms/NameAnonGlobals/rename.ll create mode 100644 llvm/test/Transforms/NaryReassociate/NVPTX/lit.local.cfg create mode 100644 llvm/test/Transforms/NaryReassociate/NVPTX/nary-gep.ll create mode 100644 llvm/test/Transforms/NaryReassociate/NVPTX/nary-slsr.ll create mode 100644 llvm/test/Transforms/NaryReassociate/nary-add.ll create mode 100644 llvm/test/Transforms/NaryReassociate/nary-mul.ll create mode 100644 llvm/test/Transforms/NaryReassociate/pr24301.ll create mode 100644 llvm/test/Transforms/NaryReassociate/pr35710.ll create mode 100644 llvm/test/Transforms/NaryReassociate/pr37539.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-25-DominatedLoop.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-25-InfiniteLoop.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-25-Loop.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-25-NestedLoop.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-25-SinglePredecessor.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-26-InterlockingLoops.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-26-NonRedundant.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-26-PhiErasure.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-30-PredIDom.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-31-NoDomInherit.ll create mode 100644 llvm/test/Transforms/NewGVN/2007-07-31-RedundantPhi.ll create mode 100644 llvm/test/Transforms/NewGVN/2008-02-12-UndefLoad.ll create mode 100644 llvm/test/Transforms/NewGVN/2008-02-13-NewPHI.ll create mode 100644 llvm/test/Transforms/NewGVN/2008-07-02-Unreachable.ll create mode 100644 llvm/test/Transforms/NewGVN/2008-12-09-SelfRemove.ll create mode 100644 llvm/test/Transforms/NewGVN/2008-12-12-RLE-Crash.ll create mode 100644 llvm/test/Transforms/NewGVN/2008-12-14-rle-reanalyze.ll create mode 100644 llvm/test/Transforms/NewGVN/2008-12-15-CacheVisited.ll create mode 100644 llvm/test/Transforms/NewGVN/2009-01-21-SortInvalidation.ll create mode 100644 llvm/test/Transforms/NewGVN/2009-01-22-SortInvalidation.ll create mode 100644 llvm/test/Transforms/NewGVN/2009-03-10-PREOnVoid.ll create mode 100644 llvm/test/Transforms/NewGVN/2009-07-13-MemDepSortFail.ll create mode 100644 llvm/test/Transforms/NewGVN/2009-11-12-MemDepMallocBitCast.ll create mode 100644 llvm/test/Transforms/NewGVN/2010-03-31-RedundantPHIs.ll create mode 100644 llvm/test/Transforms/NewGVN/2010-05-08-OneBit.ll create mode 100644 llvm/test/Transforms/NewGVN/2010-11-13-Simplify.ll create mode 100644 llvm/test/Transforms/NewGVN/2011-04-27-phioperands.ll create mode 100644 llvm/test/Transforms/NewGVN/2011-07-07-MatchIntrinsicExtract.ll create mode 100644 llvm/test/Transforms/NewGVN/2011-09-07-TypeIdFor.ll create mode 100644 llvm/test/Transforms/NewGVN/2012-05-22-PreCrash.ll create mode 100644 llvm/test/Transforms/NewGVN/2016-08-30-MaskedScatterGather.ll create mode 100644 llvm/test/Transforms/NewGVN/MemdepMiscompile.ll create mode 100644 llvm/test/Transforms/NewGVN/assume-equal.ll create mode 100644 llvm/test/Transforms/NewGVN/assumes.ll create mode 100644 llvm/test/Transforms/NewGVN/basic-cyclic-opt.ll create mode 100644 llvm/test/Transforms/NewGVN/basic-undef-test.ll create mode 100644 llvm/test/Transforms/NewGVN/basic.ll create mode 100644 llvm/test/Transforms/NewGVN/big-endian.ll create mode 100644 llvm/test/Transforms/NewGVN/bitcast-of-call.ll create mode 100644 llvm/test/Transforms/NewGVN/br-identical.ll create mode 100644 llvm/test/Transforms/NewGVN/calloc-load-removal.ll create mode 100644 llvm/test/Transforms/NewGVN/calls-nonlocal.ll create mode 100644 llvm/test/Transforms/NewGVN/calls-readonly.ll create mode 100644 llvm/test/Transforms/NewGVN/commute.ll create mode 100644 llvm/test/Transforms/NewGVN/completeness.ll create mode 100644 llvm/test/Transforms/NewGVN/cond_br.ll create mode 100644 llvm/test/Transforms/NewGVN/cond_br2.ll create mode 100644 llvm/test/Transforms/NewGVN/condprop-xfail.ll create mode 100644 llvm/test/Transforms/NewGVN/condprop.ll create mode 100644 llvm/test/Transforms/NewGVN/crash-no-aa.ll create mode 100644 llvm/test/Transforms/NewGVN/crash.ll create mode 100644 llvm/test/Transforms/NewGVN/cyclic-phi-handling.ll create mode 100644 llvm/test/Transforms/NewGVN/dbg-redundant-load.ll create mode 100644 llvm/test/Transforms/NewGVN/deadstore.ll create mode 100644 llvm/test/Transforms/NewGVN/debugloc.ll create mode 100644 llvm/test/Transforms/NewGVN/edge.ll create mode 100644 llvm/test/Transforms/NewGVN/eliminate-callsite-inline.ll create mode 100644 llvm/test/Transforms/NewGVN/eliminate-ssacopy.ll create mode 100644 llvm/test/Transforms/NewGVN/equivalent-phi.ll create mode 100644 llvm/test/Transforms/NewGVN/fence.ll create mode 100644 llvm/test/Transforms/NewGVN/flags-simplify.ll create mode 100644 llvm/test/Transforms/NewGVN/flags.ll create mode 100644 llvm/test/Transforms/NewGVN/fold-const-expr.ll create mode 100644 llvm/test/Transforms/NewGVN/fpmath.ll create mode 100644 llvm/test/Transforms/NewGVN/funclet.ll create mode 100644 llvm/test/Transforms/NewGVN/int_sideeffect.ll create mode 100644 llvm/test/Transforms/NewGVN/invariant.group.ll create mode 100644 llvm/test/Transforms/NewGVN/invariant.start.ll create mode 100644 llvm/test/Transforms/NewGVN/lifetime-simple.ll create mode 100644 llvm/test/Transforms/NewGVN/load-constant-mem.ll create mode 100644 llvm/test/Transforms/NewGVN/load-from-unreachable-predecessor.ll create mode 100644 llvm/test/Transforms/NewGVN/loadforward.ll create mode 100644 llvm/test/Transforms/NewGVN/malloc-load-removal.ll create mode 100644 llvm/test/Transforms/NewGVN/memory-handling.ll create mode 100644 llvm/test/Transforms/NewGVN/metadata-nonnull.ll create mode 100644 llvm/test/Transforms/NewGVN/metadata-simplify.ll create mode 100644 llvm/test/Transforms/NewGVN/no_speculative_loads_with_asan.ll create mode 100644 llvm/test/Transforms/NewGVN/noalias.ll create mode 100644 llvm/test/Transforms/NewGVN/non-integral-pointers.ll create mode 100644 llvm/test/Transforms/NewGVN/non-local-offset.ll create mode 100644 llvm/test/Transforms/NewGVN/nonescaping-malloc.ll create mode 100644 llvm/test/Transforms/NewGVN/null-aliases-nothing.ll create mode 100644 llvm/test/Transforms/NewGVN/opt-remarks.ll create mode 100644 llvm/test/Transforms/NewGVN/pair_jumpthread.ll create mode 100644 llvm/test/Transforms/NewGVN/phi-edge-handling.ll create mode 100644 llvm/test/Transforms/NewGVN/phi-of-ops-move-block.ll create mode 100644 llvm/test/Transforms/NewGVN/phi-translate-partial-alias.ll create mode 100644 llvm/test/Transforms/NewGVN/pr10820.ll create mode 100644 llvm/test/Transforms/NewGVN/pr12979.ll create mode 100644 llvm/test/Transforms/NewGVN/pr14166.ll create mode 100644 llvm/test/Transforms/NewGVN/pr17732.ll create mode 100644 llvm/test/Transforms/NewGVN/pr17852.ll create mode 100644 llvm/test/Transforms/NewGVN/pr24397.ll create mode 100644 llvm/test/Transforms/NewGVN/pr24426.ll create mode 100644 llvm/test/Transforms/NewGVN/pr25440.ll create mode 100644 llvm/test/Transforms/NewGVN/pr28562.ll create mode 100644 llvm/test/Transforms/NewGVN/pr31472.ll create mode 100644 llvm/test/Transforms/NewGVN/pr31483.ll create mode 100644 llvm/test/Transforms/NewGVN/pr31491.ll create mode 100644 llvm/test/Transforms/NewGVN/pr31501.ll create mode 100644 llvm/test/Transforms/NewGVN/pr31573.ll create mode 100644 llvm/test/Transforms/NewGVN/pr31594.ll create mode 100644 llvm/test/Transforms/NewGVN/pr31613.ll create mode 100644 llvm/test/Transforms/NewGVN/pr31682.ll create mode 100644 llvm/test/Transforms/NewGVN/pr31758.ll create mode 100644 llvm/test/Transforms/NewGVN/pr32403.ll create mode 100644 llvm/test/Transforms/NewGVN/pr32607.ll create mode 100644 llvm/test/Transforms/NewGVN/pr32836.ll create mode 100644 llvm/test/Transforms/NewGVN/pr32838.ll create mode 100644 llvm/test/Transforms/NewGVN/pr32845.ll create mode 100644 llvm/test/Transforms/NewGVN/pr32852.ll create mode 100644 llvm/test/Transforms/NewGVN/pr32897.ll create mode 100644 llvm/test/Transforms/NewGVN/pr32934.ll create mode 100644 llvm/test/Transforms/NewGVN/pr32945.ll create mode 100644 llvm/test/Transforms/NewGVN/pr32952.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33014.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33086.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33116.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33185.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33187.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33196.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33204.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33305.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33367.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33432.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33461.ll create mode 100644 llvm/test/Transforms/NewGVN/pr33720.ll create mode 100644 llvm/test/Transforms/NewGVN/pr34135.ll create mode 100644 llvm/test/Transforms/NewGVN/pr34430.ll create mode 100644 llvm/test/Transforms/NewGVN/pr34452.ll create mode 100644 llvm/test/Transforms/NewGVN/pr35074.ll create mode 100644 llvm/test/Transforms/NewGVN/pr35125.ll create mode 100644 llvm/test/Transforms/NewGVN/pre-compare.ll create mode 100644 llvm/test/Transforms/NewGVN/pre-new-inst.ll create mode 100644 llvm/test/Transforms/NewGVN/predicates.ll create mode 100644 llvm/test/Transforms/NewGVN/propagate-ir-flags.ll create mode 100644 llvm/test/Transforms/NewGVN/range.ll create mode 100644 llvm/test/Transforms/NewGVN/readattrs.ll create mode 100644 llvm/test/Transforms/NewGVN/refine-stores.ll create mode 100644 llvm/test/Transforms/NewGVN/rle-must-alias.ll create mode 100644 llvm/test/Transforms/NewGVN/rle-no-phi-translate.ll create mode 100644 llvm/test/Transforms/NewGVN/rle-nonlocal.ll create mode 100644 llvm/test/Transforms/NewGVN/rle.ll create mode 100644 llvm/test/Transforms/NewGVN/simp-to-self.ll create mode 100644 llvm/test/Transforms/NewGVN/stale-loop-info.ll create mode 100644 llvm/test/Transforms/NewGVN/storeoverstore.ll create mode 100644 llvm/test/Transforms/NewGVN/tbaa.ll create mode 100644 llvm/test/Transforms/NewGVN/unreachable_block_infinite_loop.ll create mode 100644 llvm/test/Transforms/NewGVN/verify-memoryphi.ll create mode 100644 llvm/test/Transforms/NewGVN/volatile-nonvolatile.ll create mode 100644 llvm/test/Transforms/ObjCARC/allocas.ll create mode 100644 llvm/test/Transforms/ObjCARC/apelim.ll create mode 100644 llvm/test/Transforms/ObjCARC/basic.ll create mode 100644 llvm/test/Transforms/ObjCARC/cfg-hazards.ll create mode 100644 llvm/test/Transforms/ObjCARC/clang-arc-use-barrier.ll create mode 100644 llvm/test/Transforms/ObjCARC/comdat-ipo.ll create mode 100644 llvm/test/Transforms/ObjCARC/contract-catchswitch.ll create mode 100644 llvm/test/Transforms/ObjCARC/contract-end-of-use-list.ll create mode 100644 llvm/test/Transforms/ObjCARC/contract-marker-funclet.ll create mode 100644 llvm/test/Transforms/ObjCARC/contract-marker.ll create mode 100644 llvm/test/Transforms/ObjCARC/contract-replace-arg-use.ll create mode 100644 llvm/test/Transforms/ObjCARC/contract-storestrong-funclet.ll create mode 100644 llvm/test/Transforms/ObjCARC/contract-storestrong-ivar.ll create mode 100644 llvm/test/Transforms/ObjCARC/contract-storestrong.ll create mode 100644 llvm/test/Transforms/ObjCARC/contract-testcases.ll create mode 100644 llvm/test/Transforms/ObjCARC/contract.ll create mode 100644 llvm/test/Transforms/ObjCARC/empty-block.ll create mode 100644 llvm/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll create mode 100644 llvm/test/Transforms/ObjCARC/escape.ll create mode 100644 llvm/test/Transforms/ObjCARC/expand.ll create mode 100644 llvm/test/Transforms/ObjCARC/funclet.ll create mode 100644 llvm/test/Transforms/ObjCARC/gvn.ll create mode 100644 llvm/test/Transforms/ObjCARC/intrinsic-use-isolated.ll create mode 100644 llvm/test/Transforms/ObjCARC/intrinsic-use.ll create mode 100644 llvm/test/Transforms/ObjCARC/invoke-2.ll create mode 100644 llvm/test/Transforms/ObjCARC/invoke.ll create mode 100644 llvm/test/Transforms/ObjCARC/move-and-form-retain-autorelease.ll create mode 100644 llvm/test/Transforms/ObjCARC/move-and-merge-autorelease.ll create mode 100644 llvm/test/Transforms/ObjCARC/nested.ll create mode 100644 llvm/test/Transforms/ObjCARC/opt-catchswitch.ll create mode 100644 llvm/test/Transforms/ObjCARC/path-overflow.ll create mode 100644 llvm/test/Transforms/ObjCARC/pointer-types.ll create mode 100644 llvm/test/Transforms/ObjCARC/post-inlining.ll create mode 100644 llvm/test/Transforms/ObjCARC/pr12270.ll create mode 100644 llvm/test/Transforms/ObjCARC/provenance.ll create mode 100644 llvm/test/Transforms/ObjCARC/retain-block-side-effects.ll create mode 100644 llvm/test/Transforms/ObjCARC/retain-not-declared.ll create mode 100644 llvm/test/Transforms/ObjCARC/rle-s2l.ll create mode 100644 llvm/test/Transforms/ObjCARC/rv.ll create mode 100644 llvm/test/Transforms/ObjCARC/split-backedge.ll create mode 100644 llvm/test/Transforms/ObjCARC/tail-call-invariant-enforcement.ll create mode 100644 llvm/test/Transforms/ObjCARC/unsafe-claim-rv.ll create mode 100644 llvm/test/Transforms/ObjCARC/weak-contract.ll create mode 100644 llvm/test/Transforms/ObjCARC/weak-copies.ll create mode 100644 llvm/test/Transforms/ObjCARC/weak-dce.ll create mode 100644 llvm/test/Transforms/ObjCARC/weak.ll create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/PR28219.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/branch1.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/branch1_large_count.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/branch2.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/criticaledge.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/cspgo.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/diag.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/diag_FE.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/func_entry.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/indirect_call.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/indirectbr.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/irreducible.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/landingpad.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/large_count_remarks.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/loop1.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/loop2.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/memop_size_annotation.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/multiple_hash_profile.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/noreturncall.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/remap.map create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/remap.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/select1.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/select2.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/select_hash_conflict.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/switch.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/thinlto_cs.proftext create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/thinlto_cspgo_bar_gen.ll create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/thinlto_cspgo_bar_use.ll create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/thinlto_indirect_call_promotion.ll create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/thinlto_samplepgo_icp.ll create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/thinlto_samplepgo_icp2a.ll create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/thinlto_samplepgo_icp2b.ll create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/thinlto_samplepgo_icp3.ll create mode 100644 llvm/test/Transforms/PGOProfile/Inputs/unreachable_bb.proftext create mode 100644 llvm/test/Transforms/PGOProfile/PR28219.ll create mode 100644 llvm/test/Transforms/PGOProfile/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/PGOProfile/X86/macho.ll create mode 100644 llvm/test/Transforms/PGOProfile/branch1.ll create mode 100644 llvm/test/Transforms/PGOProfile/branch2.ll create mode 100644 llvm/test/Transforms/PGOProfile/chr.ll create mode 100644 llvm/test/Transforms/PGOProfile/comdat_internal.ll create mode 100644 llvm/test/Transforms/PGOProfile/comdat_rename.ll create mode 100644 llvm/test/Transforms/PGOProfile/counter_promo.ll create mode 100644 llvm/test/Transforms/PGOProfile/counter_promo_exit_merge.ll create mode 100644 llvm/test/Transforms/PGOProfile/counter_promo_mexits.ll create mode 100644 llvm/test/Transforms/PGOProfile/counter_promo_nest.ll create mode 100644 llvm/test/Transforms/PGOProfile/criticaledge.ll create mode 100644 llvm/test/Transforms/PGOProfile/cspgo_profile_summary.ll create mode 100644 llvm/test/Transforms/PGOProfile/diag_FE_profile.ll create mode 100644 llvm/test/Transforms/PGOProfile/diag_mismatch.ll create mode 100644 llvm/test/Transforms/PGOProfile/diag_no_funcprofdata.ll create mode 100644 llvm/test/Transforms/PGOProfile/diag_no_profile.ll create mode 100644 llvm/test/Transforms/PGOProfile/do-not-instrument.ll create mode 100644 llvm/test/Transforms/PGOProfile/func_entry.ll create mode 100644 llvm/test/Transforms/PGOProfile/icp_covariant_call_return.ll create mode 100644 llvm/test/Transforms/PGOProfile/icp_covariant_invoke_return.ll create mode 100644 llvm/test/Transforms/PGOProfile/icp_invoke.ll create mode 100644 llvm/test/Transforms/PGOProfile/icp_invoke_nouse.ll create mode 100644 llvm/test/Transforms/PGOProfile/icp_mismatch_msg.ll create mode 100644 llvm/test/Transforms/PGOProfile/icp_sample.ll create mode 100644 llvm/test/Transforms/PGOProfile/icp_vararg.ll create mode 100644 llvm/test/Transforms/PGOProfile/indirect_call_annotation.ll create mode 100644 llvm/test/Transforms/PGOProfile/indirect_call_profile.ll create mode 100644 llvm/test/Transforms/PGOProfile/indirect_call_promotion.ll create mode 100644 llvm/test/Transforms/PGOProfile/indirect_call_promotion_vla.ll create mode 100644 llvm/test/Transforms/PGOProfile/indirectbr.ll create mode 100644 llvm/test/Transforms/PGOProfile/infinite_loop.ll create mode 100644 llvm/test/Transforms/PGOProfile/infinite_loop_gen.ll create mode 100644 llvm/test/Transforms/PGOProfile/irreducible.ll create mode 100644 llvm/test/Transforms/PGOProfile/landingpad.ll create mode 100644 llvm/test/Transforms/PGOProfile/large_count_remarks.ll create mode 100644 llvm/test/Transforms/PGOProfile/loop1.ll create mode 100644 llvm/test/Transforms/PGOProfile/loop2.ll create mode 100644 llvm/test/Transforms/PGOProfile/memcpy.ll create mode 100644 llvm/test/Transforms/PGOProfile/memop_clone.ll create mode 100644 llvm/test/Transforms/PGOProfile/memop_size_annotation.ll create mode 100644 llvm/test/Transforms/PGOProfile/memop_size_from_strlen.ll create mode 100644 llvm/test/Transforms/PGOProfile/memop_size_opt.ll create mode 100644 llvm/test/Transforms/PGOProfile/memop_size_opt_zero.ll create mode 100644 llvm/test/Transforms/PGOProfile/multiple_hash_profile.ll create mode 100644 llvm/test/Transforms/PGOProfile/noreturncall.ll create mode 100644 llvm/test/Transforms/PGOProfile/preinline.ll create mode 100644 llvm/test/Transforms/PGOProfile/remap.ll create mode 100644 llvm/test/Transforms/PGOProfile/select1.ll create mode 100644 llvm/test/Transforms/PGOProfile/select2.ll create mode 100644 llvm/test/Transforms/PGOProfile/select_hash_conflict.ll create mode 100644 llvm/test/Transforms/PGOProfile/single_bb.ll create mode 100644 llvm/test/Transforms/PGOProfile/split-indirectbr-critical-edges.ll create mode 100644 llvm/test/Transforms/PGOProfile/statics_counter_naming.ll create mode 100644 llvm/test/Transforms/PGOProfile/switch.ll create mode 100644 llvm/test/Transforms/PGOProfile/thinlto_cspgo_gen.ll create mode 100644 llvm/test/Transforms/PGOProfile/thinlto_cspgo_use.ll create mode 100644 llvm/test/Transforms/PGOProfile/thinlto_indirect_call_promotion.ll create mode 100644 llvm/test/Transforms/PGOProfile/thinlto_samplepgo_icp.ll create mode 100644 llvm/test/Transforms/PGOProfile/thinlto_samplepgo_icp2.ll create mode 100644 llvm/test/Transforms/PGOProfile/thinlto_samplepgo_icp3.ll create mode 100644 llvm/test/Transforms/PGOProfile/thinlto_samplepgo_icp_droppeddead.ll create mode 100644 llvm/test/Transforms/PGOProfile/unreachable_bb.ll create mode 100644 llvm/test/Transforms/PartiallyInlineLibCalls/X86/good-prototype.ll create mode 100644 llvm/test/Transforms/PartiallyInlineLibCalls/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/PartiallyInlineLibCalls/bad-prototype.ll create mode 100644 llvm/test/Transforms/PartiallyInlineLibCalls/nobuiltin.ll create mode 100644 llvm/test/Transforms/PhaseOrdering/2010-03-22-empty-baseclass.ll create mode 100644 llvm/test/Transforms/PhaseOrdering/PR6627.ll create mode 100644 llvm/test/Transforms/PhaseOrdering/basic.ll create mode 100644 llvm/test/Transforms/PhaseOrdering/bitfield-bittests.ll create mode 100644 llvm/test/Transforms/PhaseOrdering/gdce.ll create mode 100644 llvm/test/Transforms/PhaseOrdering/globalaa-retained.ll create mode 100644 llvm/test/Transforms/PhaseOrdering/rotate.ll create mode 100644 llvm/test/Transforms/PhaseOrdering/scev-custom-dl.ll create mode 100644 llvm/test/Transforms/PhaseOrdering/scev.ll create mode 100644 llvm/test/Transforms/PhaseOrdering/simplifycfg-options.ll create mode 100644 llvm/test/Transforms/PlaceSafepoints/basic.ll create mode 100644 llvm/test/Transforms/PlaceSafepoints/call-in-loop.ll create mode 100644 llvm/test/Transforms/PlaceSafepoints/finite-loops.ll create mode 100644 llvm/test/Transforms/PlaceSafepoints/libcall.ll create mode 100644 llvm/test/Transforms/PlaceSafepoints/memset.ll create mode 100644 llvm/test/Transforms/PlaceSafepoints/no-statepoints.ll create mode 100644 llvm/test/Transforms/PlaceSafepoints/split-backedge.ll create mode 100644 llvm/test/Transforms/PlaceSafepoints/statepoint-coreclr.ll create mode 100644 llvm/test/Transforms/PlaceSafepoints/statepoint-frameescape.ll create mode 100644 llvm/test/Transforms/PreISelIntrinsicLowering/load-relative.ll create mode 100644 llvm/test/Transforms/PreISelIntrinsicLowering/objc-arc.ll create mode 100644 llvm/test/Transforms/PruneEH/2008-06-02-Weak.ll create mode 100644 llvm/test/Transforms/PruneEH/ipo-nounwind.ll create mode 100644 llvm/test/Transforms/PruneEH/looptest.ll create mode 100644 llvm/test/Transforms/PruneEH/musttail.ll create mode 100644 llvm/test/Transforms/PruneEH/operand-bundles.ll create mode 100644 llvm/test/Transforms/PruneEH/pr23971.ll create mode 100644 llvm/test/Transforms/PruneEH/pr26263.ll create mode 100644 llvm/test/Transforms/PruneEH/recursivetest.ll create mode 100644 llvm/test/Transforms/PruneEH/seh-nounwind.ll create mode 100644 llvm/test/Transforms/PruneEH/simplenoreturntest.ll create mode 100644 llvm/test/Transforms/PruneEH/simpletest.ll create mode 100644 llvm/test/Transforms/Reassociate/2002-05-15-AgressiveSubMove.ll create mode 100644 llvm/test/Transforms/Reassociate/2002-05-15-MissedTree.ll create mode 100644 llvm/test/Transforms/Reassociate/2002-05-15-SubReassociate.ll create mode 100644 llvm/test/Transforms/Reassociate/2002-07-09-DominanceProblem.ll create mode 100644 llvm/test/Transforms/Reassociate/2003-08-12-InfiniteLoop.ll create mode 100644 llvm/test/Transforms/Reassociate/2005-09-01-ArrayOutOfBounds.ll create mode 100644 llvm/test/Transforms/Reassociate/2006-04-27-ReassociateVector.ll create mode 100644 llvm/test/Transforms/Reassociate/2011-01-26-UseAfterFree.ll create mode 100644 llvm/test/Transforms/Reassociate/2012-05-08-UndefLeak.ll create mode 100644 llvm/test/Transforms/Reassociate/2012-06-08-InfiniteLoop.ll create mode 100644 llvm/test/Transforms/Reassociate/absorption.ll create mode 100644 llvm/test/Transforms/Reassociate/add_across_block_crash.ll create mode 100644 llvm/test/Transforms/Reassociate/basictest.ll create mode 100644 llvm/test/Transforms/Reassociate/binop-identity.ll create mode 100644 llvm/test/Transforms/Reassociate/canonicalize-neg-const.ll create mode 100644 llvm/test/Transforms/Reassociate/commute.ll create mode 100644 llvm/test/Transforms/Reassociate/crash.ll create mode 100644 llvm/test/Transforms/Reassociate/crash2.ll create mode 100644 llvm/test/Transforms/Reassociate/deadcode.ll create mode 100644 llvm/test/Transforms/Reassociate/erase_inst_made_change.ll create mode 100644 llvm/test/Transforms/Reassociate/factorize-again.ll create mode 100644 llvm/test/Transforms/Reassociate/fast-AgressiveSubMove.ll create mode 100644 llvm/test/Transforms/Reassociate/fast-ArrayOutOfBounds.ll create mode 100644 llvm/test/Transforms/Reassociate/fast-MissedTree.ll create mode 100644 llvm/test/Transforms/Reassociate/fast-ReassociateVector.ll create mode 100644 llvm/test/Transforms/Reassociate/fast-SubReassociate.ll create mode 100644 llvm/test/Transforms/Reassociate/fast-basictest.ll create mode 100644 llvm/test/Transforms/Reassociate/fast-fp-commute.ll create mode 100644 llvm/test/Transforms/Reassociate/fast-mightymul.ll create mode 100644 llvm/test/Transforms/Reassociate/fast-multistep.ll create mode 100644 llvm/test/Transforms/Reassociate/fp-commute.ll create mode 100644 llvm/test/Transforms/Reassociate/fp-expr.ll create mode 100644 llvm/test/Transforms/Reassociate/infloop-deadphi.ll create mode 100644 llvm/test/Transforms/Reassociate/inverses.ll create mode 100644 llvm/test/Transforms/Reassociate/keep-debug-loc.ll create mode 100644 llvm/test/Transforms/Reassociate/long-chains.ll create mode 100644 llvm/test/Transforms/Reassociate/looptest.ll create mode 100644 llvm/test/Transforms/Reassociate/matching-binops.ll create mode 100644 llvm/test/Transforms/Reassociate/mightymul.ll create mode 100644 llvm/test/Transforms/Reassociate/min_int.ll create mode 100644 llvm/test/Transforms/Reassociate/mixed-fast-nonfast-fp.ll create mode 100644 llvm/test/Transforms/Reassociate/mulfactor.ll create mode 100644 llvm/test/Transforms/Reassociate/multistep.ll create mode 100644 llvm/test/Transforms/Reassociate/negation.ll create mode 100644 llvm/test/Transforms/Reassociate/negation1.ll create mode 100644 llvm/test/Transforms/Reassociate/no-op.ll create mode 100644 llvm/test/Transforms/Reassociate/optional-flags.ll create mode 100644 llvm/test/Transforms/Reassociate/otherops.ll create mode 100644 llvm/test/Transforms/Reassociate/pointer-collision-non-determinism.ll create mode 100644 llvm/test/Transforms/Reassociate/pr12245.ll create mode 100644 llvm/test/Transforms/Reassociate/pr21205.ll create mode 100644 llvm/test/Transforms/Reassociate/pr28367.ll create mode 100644 llvm/test/Transforms/Reassociate/propagate-flags.ll create mode 100644 llvm/test/Transforms/Reassociate/reassoc-intermediate-fnegs.ll create mode 100644 llvm/test/Transforms/Reassociate/reassociate-deadinst.ll create mode 100644 llvm/test/Transforms/Reassociate/reassociate_dbgvalue_discard.ll create mode 100644 llvm/test/Transforms/Reassociate/repeats.ll create mode 100644 llvm/test/Transforms/Reassociate/secondary.ll create mode 100644 llvm/test/Transforms/Reassociate/shift-factor.ll create mode 100644 llvm/test/Transforms/Reassociate/shifttest.ll create mode 100644 llvm/test/Transforms/Reassociate/subtest.ll create mode 100644 llvm/test/Transforms/Reassociate/vaarg_movable.ll create mode 100644 llvm/test/Transforms/Reassociate/wrap-flags.ll create mode 100644 llvm/test/Transforms/Reassociate/xor_reassoc.ll create mode 100644 llvm/test/Transforms/Reg2Mem/crash.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-1.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-10.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-11.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-12.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-13.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-2.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-3.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-4.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-5.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-6.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-7.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-8.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers-9.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-pointers.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/base-vector.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/basic.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/basics.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/call-gc-result.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/check_traversal_order.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/codegen-cond.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/constants.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic-cconv.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/deopt-lowering-attrs.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/deref-pointers.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/drop-invalid-metadata.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/gc-relocate-creation.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/invokes.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/leaf-function.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/libcall.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/live-vector-nosplit.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/liveness-basics.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/patchable-statepoints.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/preprocess.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/relocate-invoke-result.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/relocation.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/rematerialize-derived-pointers.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/rewrite-invoke.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/scalar-base-vector.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/statepoint-attrs.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/statepoint-calling-conventions.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/statepoint-coreclr.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/statepoint-format.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/two-invokes-one-landingpad.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/unreachable-regression.ll create mode 100644 llvm/test/Transforms/RewriteStatepointsForGC/vector-bitcast.ll create mode 100644 llvm/test/Transforms/SCCP/2002-05-02-MissSecondInst.ll create mode 100644 llvm/test/Transforms/SCCP/2002-05-20-MissedIncomingValue.ll create mode 100644 llvm/test/Transforms/SCCP/2002-05-21-InvalidSimplify.ll create mode 100644 llvm/test/Transforms/SCCP/2002-08-30-GetElementPtrTest.ll create mode 100644 llvm/test/Transforms/SCCP/2003-06-24-OverdefinedPHIValue.ll create mode 100644 llvm/test/Transforms/SCCP/2003-08-26-InvokeHandling.ll create mode 100644 llvm/test/Transforms/SCCP/2004-11-16-DeadInvoke.ll create mode 100644 llvm/test/Transforms/SCCP/2004-12-10-UndefBranchBug.ll create mode 100644 llvm/test/Transforms/SCCP/2006-10-23-IPSCCP-Crash.ll create mode 100644 llvm/test/Transforms/SCCP/2006-12-04-PackedType.ll create mode 100644 llvm/test/Transforms/SCCP/2006-12-19-UndefBug.ll create mode 100644 llvm/test/Transforms/SCCP/2007-05-16-InvokeCrash.ll create mode 100644 llvm/test/Transforms/SCCP/2008-01-27-UndefCorrelate.ll create mode 100644 llvm/test/Transforms/SCCP/2008-04-22-multiple-ret-sccp.ll create mode 100644 llvm/test/Transforms/SCCP/2008-05-23-UndefCallFold.ll create mode 100644 llvm/test/Transforms/SCCP/2009-01-14-IPSCCP-Invoke.ll create mode 100644 llvm/test/Transforms/SCCP/2009-05-27-VectorOperandZero.ll create mode 100644 llvm/test/Transforms/SCCP/apint-array.ll create mode 100644 llvm/test/Transforms/SCCP/apint-basictest.ll create mode 100644 llvm/test/Transforms/SCCP/apint-basictest2.ll create mode 100644 llvm/test/Transforms/SCCP/apint-basictest3.ll create mode 100644 llvm/test/Transforms/SCCP/apint-basictest4.ll create mode 100644 llvm/test/Transforms/SCCP/apint-bigarray.ll create mode 100644 llvm/test/Transforms/SCCP/apint-bigint.ll create mode 100644 llvm/test/Transforms/SCCP/apint-bigint2.ll create mode 100644 llvm/test/Transforms/SCCP/apint-ipsccp1.ll create mode 100644 llvm/test/Transforms/SCCP/apint-ipsccp2.ll create mode 100644 llvm/test/Transforms/SCCP/apint-ipsccp3.ll create mode 100644 llvm/test/Transforms/SCCP/apint-ipsccp4.ll create mode 100644 llvm/test/Transforms/SCCP/apint-load.ll create mode 100644 llvm/test/Transforms/SCCP/apint-phi.ll create mode 100644 llvm/test/Transforms/SCCP/apint-select.ll create mode 100644 llvm/test/Transforms/SCCP/atomic-load-store.ll create mode 100644 llvm/test/Transforms/SCCP/atomic.ll create mode 100644 llvm/test/Transforms/SCCP/bitcast.ll create mode 100644 llvm/test/Transforms/SCCP/calltest.ll create mode 100644 llvm/test/Transforms/SCCP/comdat-ipo.ll create mode 100644 llvm/test/Transforms/SCCP/constant-struct.ll create mode 100644 llvm/test/Transforms/SCCP/crash.ll create mode 100644 llvm/test/Transforms/SCCP/definite-initializer.ll create mode 100644 llvm/test/Transforms/SCCP/dont-zap-return.ll create mode 100644 llvm/test/Transforms/SCCP/global-alias-constprop.ll create mode 100644 llvm/test/Transforms/SCCP/indirectbr.ll create mode 100644 llvm/test/Transforms/SCCP/ip-constant-ranges.ll create mode 100644 llvm/test/Transforms/SCCP/ipsccp-addr-taken.ll create mode 100644 llvm/test/Transforms/SCCP/ipsccp-basic.ll create mode 100644 llvm/test/Transforms/SCCP/ipsccp-branch-unresolved-undef.ll create mode 100644 llvm/test/Transforms/SCCP/ipsccp-phi-one-pred-dead.ll create mode 100644 llvm/test/Transforms/SCCP/ipsccp-preserve-analysis.ll create mode 100644 llvm/test/Transforms/SCCP/ipsccp-ssa-copy-nested-conds.ll create mode 100644 llvm/test/Transforms/SCCP/latticeval-invalidate.ll create mode 100644 llvm/test/Transforms/SCCP/loadtest.ll create mode 100644 llvm/test/Transforms/SCCP/logical-nuke.ll create mode 100644 llvm/test/Transforms/SCCP/overdefined-div.ll create mode 100644 llvm/test/Transforms/SCCP/pr27712.ll create mode 100644 llvm/test/Transforms/SCCP/pr35357.ll create mode 100644 llvm/test/Transforms/SCCP/preserve-analysis.ll create mode 100644 llvm/test/Transforms/SCCP/return-zapped.ll create mode 100644 llvm/test/Transforms/SCCP/retvalue-undef.ll create mode 100644 llvm/test/Transforms/SCCP/sccptest.ll create mode 100644 llvm/test/Transforms/SCCP/select.ll create mode 100644 llvm/test/Transforms/SCCP/switch-multiple-undef.ll create mode 100644 llvm/test/Transforms/SCCP/switch-undef-constantfoldterminator.ll create mode 100644 llvm/test/Transforms/SCCP/switch.ll create mode 100644 llvm/test/Transforms/SCCP/ub-shift.ll create mode 100644 llvm/test/Transforms/SCCP/undef-resolve.ll create mode 100644 llvm/test/Transforms/SCCP/vector-bitcast.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/64-bit-vector.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/PR38339.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/commute.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/gather-cost.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/gather-reduce.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/gather-root.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/load-store-q.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/matmul.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/minimum-sizes.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/mismatched-intrinsics.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/nontemporal.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/remarks.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/sdiv-pow2.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/spillcost-di.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/transpose.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AArch64/tsc-s352.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AMDGPU/address-space-ptr-sze-gep-index-assert.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AMDGPU/horizontal-store.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/SLPVectorizer/AMDGPU/packed-math.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/ARM/extract-insert.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/SLPVectorizer/ARM/memory.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/ARM/sroa.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/NVPTX/lit.local.cfg create mode 100644 llvm/test/Transforms/SLPVectorizer/NVPTX/non-vectorizable-intrinsic.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/NVPTX/v2f16.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/PowerPC/aggregate.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/PowerPC/lit.local.cfg create mode 100644 llvm/test/Transforms/SLPVectorizer/PowerPC/pr27897.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/PowerPC/short-to-double.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/SystemZ/SLP-cmp-cost-query.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/SystemZ/lit.local.cfg create mode 100644 llvm/test/Transforms/SLPVectorizer/SystemZ/pr34619.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/PR32086.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/PR34635.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/PR35628_1.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/PR35628_2.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/PR35865.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/PR36280.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/PR39774.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/PR40310.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/addsub.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/aggregate.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/align.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/alternate-calls.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/alternate-cast.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/alternate-fp.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/alternate-int.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-add-saddo.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-add-ssat.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-add-uaddo.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-add-usat.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-add.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-fix.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-fp.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-mul-smulo.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-mul-umulo.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-mul.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-sub-ssat.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-sub-ssubo.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-sub-usat.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-sub-usubo.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/arith-sub.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/atomics.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/bad_types.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/barriercall.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/bitreverse.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/blending-shuffle.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/bswap.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/call.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/cast.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/cmp_commute.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/cmp_sel.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/commutativity.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/compare-reduce.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/consecutive-access.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/continue_vectorizing.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_7zip.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_binaryop.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_bullet.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_bullet3.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_cmpop.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_dequeue.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_flop7.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_gep.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_lencod.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_mandeltext.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_netbsd_decompress.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_scheduling.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_sim4b1.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_smallpt.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/crash_vectorizeTree.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/cross_block_slp.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/cse.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/ctlz.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/ctpop.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/cttz.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/cycle_dup.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/debug_info.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/diamond.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/external_user.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/external_user_jumbled_load.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/extract-shuffle.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/extract.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/extract_in_tree_user.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/extractcost.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/extractelement.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/fabs-cost-softfp.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/fabs.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/fcopysign.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/flag.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/fma.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/fptosi.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/fptoui.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/fround.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/funclet.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/gep.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/gep_mismatch.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/hadd.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/hoist.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/horizontal.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/hsub.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/implicitfloat.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/in-tree-user.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/insert-after-bundle.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/insertvalue.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/intrinsic.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/jumbled-load-multiuse.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/jumbled-load-shuffle-placement.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/jumbled-load-used-in-phi.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/jumbled-load.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/limit.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/load-merge.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/long_chains.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/loopinvariant.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/metadata.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/multi_block.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/multi_user.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/odd_store.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/operandorder.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/opt.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/ordering.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/partail.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/phi.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/phi3.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/phi_landingpad.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/phi_overalignedtype.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/powof2div.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/pr16571.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/pr16628.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/pr16899.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/pr18060.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/pr19657.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/pr23510.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/pr27163.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/pr31599.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/pr35497.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/propagate_ir_flags.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/reassociated-loads.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/reduction.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/reduction2.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/reduction_loads.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/reduction_unrolled.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/remark_horcost.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/remark_listcost.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/remark_not_all_parts.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/remark_unsupported.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/reorder_phi.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/reorder_repeated_ops.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/resched.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/return.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/reverse_extract_elements.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/rgb_phi.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/saxpy.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/schedule-bundle.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/schedule_budget.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/scheduling.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/sext.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/shift-ashr.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/shift-lshr.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/shift-shl.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/sign-extend.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/simple-loop.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/simplebb.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/sitofp.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/slp-throttle.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/sqrt.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/store-jumbled.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/stores_vectorize.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/uitofp.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/undef_vect.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/unreachable.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/value-bug.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/vect_copyable_in_binops.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/vector.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/vector_gep.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/vectorize-reorder-reuse.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/X86/zext.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/XCore/lit.local.cfg create mode 100644 llvm/test/Transforms/SLPVectorizer/XCore/no-vector-registers.ll create mode 100644 llvm/test/Transforms/SLPVectorizer/int_sideeffect.ll create mode 100644 llvm/test/Transforms/SROA/address-spaces.ll create mode 100644 llvm/test/Transforms/SROA/alignment.ll create mode 100644 llvm/test/Transforms/SROA/alloca-address-space.ll create mode 100644 llvm/test/Transforms/SROA/basictest.ll create mode 100644 llvm/test/Transforms/SROA/big-endian.ll create mode 100644 llvm/test/Transforms/SROA/dbg-addr-diamond.ll create mode 100644 llvm/test/Transforms/SROA/dbg-single-piece.ll create mode 100644 llvm/test/Transforms/SROA/dead-inst.ll create mode 100644 llvm/test/Transforms/SROA/fca.ll create mode 100644 llvm/test/Transforms/SROA/mem-par-metadata-sroa.ll create mode 100644 llvm/test/Transforms/SROA/non-integral-pointers.ll create mode 100644 llvm/test/Transforms/SROA/phi-and-select.ll create mode 100644 llvm/test/Transforms/SROA/phi-with-duplicate-pred.ll create mode 100644 llvm/test/Transforms/SROA/pointer-offset-size.ll create mode 100644 llvm/test/Transforms/SROA/ppcf128-no-fold.ll create mode 100644 llvm/test/Transforms/SROA/pr26972.ll create mode 100644 llvm/test/Transforms/SROA/pr37267.ll create mode 100644 llvm/test/Transforms/SROA/preserve-nonnull.ll create mode 100644 llvm/test/Transforms/SROA/slice-order-independence.ll create mode 100644 llvm/test/Transforms/SROA/slice-width.ll create mode 100644 llvm/test/Transforms/SROA/vector-conversion.ll create mode 100644 llvm/test/Transforms/SROA/vector-lifetime-intrinsic.ll create mode 100644 llvm/test/Transforms/SROA/vector-promotion.ll create mode 100644 llvm/test/Transforms/SROA/vectors-of-pointers.ll create mode 100644 llvm/test/Transforms/SafeStack/AArch64/abi.ll create mode 100644 llvm/test/Transforms/SafeStack/AArch64/abi_ssp.ll create mode 100644 llvm/test/Transforms/SafeStack/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/SafeStack/AArch64/unreachable.ll create mode 100644 llvm/test/Transforms/SafeStack/ARM/abi.ll create mode 100644 llvm/test/Transforms/SafeStack/ARM/debug.ll create mode 100644 llvm/test/Transforms/SafeStack/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/SafeStack/ARM/setjmp.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/abi.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/abi_ssp.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/addr-taken.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/array-aligned.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/array.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/byval.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/call.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/cast.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/coloring-ssp.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/coloring.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/coloring2.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/constant-gep-call.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/constant-gep.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/constant-geps.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/debug-loc-dynamic.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/debug-loc.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/debug-loc2.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/dynamic-alloca.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-addr-pointer.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-bitcast-store.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-bitcast-store2.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-call.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-casted-pointer.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-gep-call.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-gep-invoke.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-gep-negative.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-gep-ptrtoint.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-gep-store.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-phi-call.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-select-call.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/escape-vector.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/invoke.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/layout-frag.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/layout-region-split.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/SafeStack/X86/memintrinsic-oob-read.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/no-attr.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/phi-cycle.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/phi.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/ret.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/setjmp.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/setjmp2.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/sink-to-use.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/ssp.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/store.ll create mode 100644 llvm/test/Transforms/SafeStack/X86/struct.ll create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/bad_discriminator_value.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/bad_fn_header.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/bad_line_values.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/bad_mangle.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/bad_sample_line.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/bad_samples.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/branch.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/calls.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/cold-indirect-call.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/cov-zero-samples.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/coverage-warning.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/discriminator.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/einline.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/entry_counts.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/entry_counts_cold.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/flattened.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/fnptr.binprof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/fnptr.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/function_metadata.compact.afdo create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/function_metadata.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/gcc-simple.afdo create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/indirect-call.afdo create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/indirect-call.compact.afdo create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/indirect-call.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/inline-act.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/inline-combine.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/inline-coverage.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/inline-hint.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/inline.compactbinary.afdo create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/inline.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/nodebug.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/nolocinfo.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/offset.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/propagate.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/remap.map create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/remap.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/remarks.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/summary.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/syntax.prof create mode 100644 llvm/test/Transforms/SampleProfile/Inputs/warm-inline-instance.prof create mode 100644 llvm/test/Transforms/SampleProfile/branch.ll create mode 100644 llvm/test/Transforms/SampleProfile/calls.ll create mode 100644 llvm/test/Transforms/SampleProfile/cold-indirect-call.ll create mode 100644 llvm/test/Transforms/SampleProfile/compact-binary-profile.ll create mode 100644 llvm/test/Transforms/SampleProfile/cov-zero-samples.ll create mode 100644 llvm/test/Transforms/SampleProfile/coverage-warning.ll create mode 100644 llvm/test/Transforms/SampleProfile/discriminator.ll create mode 100644 llvm/test/Transforms/SampleProfile/early-inline.ll create mode 100644 llvm/test/Transforms/SampleProfile/entry_counts.ll create mode 100644 llvm/test/Transforms/SampleProfile/entry_counts_cold.ll create mode 100644 llvm/test/Transforms/SampleProfile/flattened.ll create mode 100644 llvm/test/Transforms/SampleProfile/fnptr.ll create mode 100644 llvm/test/Transforms/SampleProfile/function_metadata.ll create mode 100644 llvm/test/Transforms/SampleProfile/gcc-simple.ll create mode 100644 llvm/test/Transforms/SampleProfile/indirect-call-gcc.ll create mode 100644 llvm/test/Transforms/SampleProfile/indirect-call.ll create mode 100644 llvm/test/Transforms/SampleProfile/inline-act.ll create mode 100644 llvm/test/Transforms/SampleProfile/inline-cold-callsite-samplepgo.ll create mode 100644 llvm/test/Transforms/SampleProfile/inline-combine.ll create mode 100644 llvm/test/Transforms/SampleProfile/inline-coverage.ll create mode 100644 llvm/test/Transforms/SampleProfile/inline.ll create mode 100644 llvm/test/Transforms/SampleProfile/nodebug.ll create mode 100644 llvm/test/Transforms/SampleProfile/nolocinfo.ll create mode 100644 llvm/test/Transforms/SampleProfile/offset.ll create mode 100644 llvm/test/Transforms/SampleProfile/propagate.ll create mode 100644 llvm/test/Transforms/SampleProfile/remap.ll create mode 100644 llvm/test/Transforms/SampleProfile/remarks.ll create mode 100644 llvm/test/Transforms/SampleProfile/section-accurate-samplepgo.ll create mode 100644 llvm/test/Transforms/SampleProfile/summary.ll create mode 100644 llvm/test/Transforms/SampleProfile/syntax.ll create mode 100644 llvm/test/Transforms/SampleProfile/warm-inline-instance.ll create mode 100644 llvm/test/Transforms/ScalarizeMaskedMemIntrin/X86/expand-masked-compressstore.ll create mode 100644 llvm/test/Transforms/ScalarizeMaskedMemIntrin/X86/expand-masked-expandload.ll create mode 100644 llvm/test/Transforms/ScalarizeMaskedMemIntrin/X86/expand-masked-gather.ll create mode 100644 llvm/test/Transforms/ScalarizeMaskedMemIntrin/X86/expand-masked-load.ll create mode 100644 llvm/test/Transforms/ScalarizeMaskedMemIntrin/X86/expand-masked-store.ll create mode 100644 llvm/test/Transforms/Scalarizer/basic.ll create mode 100644 llvm/test/Transforms/Scalarizer/cache-bug.ll create mode 100644 llvm/test/Transforms/Scalarizer/crash-bug.ll create mode 100644 llvm/test/Transforms/Scalarizer/dbginfo.ll create mode 100644 llvm/test/Transforms/Scalarizer/dbgloc-bug.ll create mode 100644 llvm/test/Transforms/Scalarizer/intrinsics.ll create mode 100644 llvm/test/Transforms/Scalarizer/order-bug.ll create mode 100644 llvm/test/Transforms/Scalarizer/phi-bug.ll create mode 100644 llvm/test/Transforms/Scalarizer/store-bug.ll create mode 100644 llvm/test/Transforms/Scalarizer/vector-gep.ll create mode 100644 llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/split-gep-and-gvn-addrspace-addressing-modes.ll create mode 100644 llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/lit.local.cfg create mode 100644 llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/split-gep-and-gvn.ll create mode 100644 llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/split-gep.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2006-06-13-SingleEntryPHI.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2006-06-27-DeadSwitchCase.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2007-05-09-Unreachable.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2007-05-09-tl.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2007-07-12-ExitDomInfo.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2007-07-13-DomInfo.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2007-07-18-DomInfo.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2007-08-01-Dom.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2007-08-01-LCSSA.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2007-10-04-DomFrontier.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2008-06-02-DomInfo.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2008-06-17-DomFrontier.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2010-11-18-LCSSA.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2011-06-02-CritSwitch.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2011-09-26-EHCrash.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2012-04-02-IndirectBr.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2012-04-30-LoopUnswitch-LPad-Crash.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2012-05-20-Phi.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/2015-09-18-Addrspace.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/LIV-loop-condtion.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/basictest.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/cleanuppad.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/copy-metadata.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/crash.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/delete-dead-blocks.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/exponential-behavior.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/exponential-nontrivial-unswitch-nested.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/exponential-nontrivial-unswitch-nested2.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/exponential-nontrivial-unswitch.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/exponential-nontrivial-unswitch2.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/exponential-switch-unswitch.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/formDedicatedAfterTrivial1.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/formDedicatedAfterTrivial2.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/formDedicatedAfterTrivial3.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/guards.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/infinite-loop.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/msan.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/nontrivial-unswitch-cost.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/nontrivial-unswitch.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/pr37888.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/preserve-analyses.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch-iteration.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch.ll create mode 100644 llvm/test/Transforms/SimpleLoopUnswitch/update-scev.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2002-05-21-PHIElimination.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2002-09-24-PHIAssertion.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2003-03-07-DominateProblem.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2003-08-05-InvokeCrash.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2003-08-17-BranchFold.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2003-08-17-BranchFoldOrdering.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2003-08-17-FoldSwitch-dbg.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2003-08-17-FoldSwitch.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2004-12-10-SimplifyCFGCrash.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2005-06-16-PHICrash.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2005-08-01-PHIUpdateFail.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2005-10-02-InvokeSimplify.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2005-12-03-IncorrectPHIFold.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2006-02-17-InfiniteUnroll.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2006-06-12-InfLoop.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2006-08-03-Crash.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2006-10-19-UncondDiv.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2006-12-08-Ptr-ICmp-Branch.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2007-11-22-InvokeNoUnwind.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2007-12-21-Crash.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2008-01-02-hoist-fp-add.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2008-05-16-PHIBlockMerge.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2008-07-13-InfLoopMiscompile.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2008-09-08-MultiplePred.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2008-09-17-SpeculativeHoist.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2008-10-03-SpeculativelyExecuteBeforePHI.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2008-12-06-SingleEntryPhi.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2008-12-16-DCECond.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2009-01-18-PHIPropCrash.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2009-05-12-externweak.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2010-03-30-InvokeCrash.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2011-03-08-UnreachableUse.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/2011-09-05-TrivialLPad.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/AArch64/cttz-ctlz.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/AArch64/lit.local.cfg create mode 100644 llvm/test/Transforms/SimplifyCFG/AArch64/prefer-fma.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/AMDGPU/cttz-ctlz.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/SimplifyCFG/ARM/cttz-ctlz.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/ARM/lit.local.cfg create mode 100644 llvm/test/Transforms/SimplifyCFG/ARM/select-trunc-i64.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/ARM/switch-to-lookup-table-constant-expr.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/ARM/switch-to-lookup-table.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/BrUnwind.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/ConditionalTrappingConstantExpr.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/CoveredLookupTable.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/DeadSetCC.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/EmptyBlockMerge.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/EqualPHIEdgeBlockMerge.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/ForwardSwitchConditionToPHI.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/Hexagon/disable-lookup-table.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/Hexagon/lit.local.cfg create mode 100644 llvm/test/Transforms/SimplifyCFG/Hexagon/switch-to-lookup-table.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/HoistCode.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/InfLoop.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/MagicPointer.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/Mips/cttz-ctlz.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/Mips/lit.local.cfg create mode 100644 llvm/test/Transforms/SimplifyCFG/PHINode.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PR16069.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PR17073.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PR25267.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PR27615-simplify-cond-br.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PR29163.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PR30210.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PR9946.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PhiBlockMerge.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PhiBlockMerge2.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PhiEliminate.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PhiEliminate2.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PhiEliminate3.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PhiNoEliminate.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PowerPC/cttz-ctlz-spec.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/PowerPC/lit.local.cfg create mode 100644 llvm/test/Transforms/SimplifyCFG/RISCV/lit.local.cfg create mode 100644 llvm/test/Transforms/SimplifyCFG/RISCV/select-trunc-i64.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/SPARC/lit.local.cfg create mode 100644 llvm/test/Transforms/SimplifyCFG/SPARC/switch_to_lookup_table.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/SpeculativeExec.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/UncondBranchToHeader.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/UncondBranchToReturn.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/UnreachableEliminate.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/X86/disable-lookup-table.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/SimplifyCFG/X86/speculate-cttz-ctlz.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/X86/switch-covered-bug.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/X86/switch-table-bug.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/X86/switch_to_lookup_table.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/assume.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/attr-convergent.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/attr-noduplicate.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/basictest.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/bbi-23595.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/branch-cond-merge.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/branch-cond-prop.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/branch-fold-dbg.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/branch-fold-test.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/branch-fold-three.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/branch-fold-threshold.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/branch-fold.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/branch-phi-thread.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/bug-25299.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/clamp.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/combine-parallel-mem-md.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/common-dest-folding.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/critedge-assume.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/dbginfo.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/dce-cond-after-folding-terminator.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/debug-info-thread-phi.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/div-rem-pairs.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/duplicate-landingpad.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/duplicate-phis.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/empty-catchpad.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/empty-cleanuppad.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/extract-cost.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/fold-branch-debuginvariant.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/fold-debug-info.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/gepcost.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/guards.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/hoist-common-code.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/hoist-dbgvalue-inlined.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/hoist-dbgvalue.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/hoist-with-range.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/implied-and-or.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/implied-cond-matching-false-dest.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/implied-cond-matching-imm.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/implied-cond-matching.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/implied-cond.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/indirectbr.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/inline-asm-sink.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/invoke.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/invoke_unwind.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/iterative-simplify.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/lifetime.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/merge-cleanuppads.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/merge-cond-stores-2.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/merge-cond-stores.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/multiple-phis.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/no-md-sink.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/no_speculative_loads_with_asan.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/no_speculative_loads_with_tsan.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/noreturn-call.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/opt-for-fuzzing.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/phi-undef-loadstore.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/pr33605.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/pr34131.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/pr35774.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/pr39807.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/preserve-branchweights-partial.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/preserve-branchweights-switch-create.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/preserve-branchweights.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/preserve-llvm-loop-metadata.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/preserve-load-metadata-2.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/preserve-load-metadata-3.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/preserve-load-metadata.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/preserve-make-implicit-on-switch-to-br.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/preserve-store-alignment.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/rangereduce.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/remove-debug-2.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/remove-debug.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/return-merge.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/seh-nounwind.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/select-gep.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/sink-common-code.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/speculate-call.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/speculate-dbgvalue.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/speculate-math.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/speculate-store.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/speculate-vector-ops.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/speculate-with-offset.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/statepoint-invoke-unwind.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/suppress-zero-branch-weights.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch-dead-default.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch-masked-bits.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch-on-const-select.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch-range-to-icmp.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch-simplify-crash.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch-to-br.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch-to-icmp.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch-to-select-multiple-edge-per-block-phi.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch-to-select-two-case.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch_create-custom-dl.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch_create.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch_switch_fold.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch_thread.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/switch_undef.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/trap-debugloc.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/trap-no-null-opt-debugloc.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/trapping-load-unreachable.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/two-entry-phi-return.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/unreachable-blocks.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/unreachable-cleanuppad.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/volatile-phioper.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/wineh-unreachable.ll create mode 100644 llvm/test/Transforms/Sink/badloadsink.ll create mode 100644 llvm/test/Transforms/Sink/basic.ll create mode 100644 llvm/test/Transforms/Sink/call.ll create mode 100644 llvm/test/Transforms/Sink/catchswitch.ll create mode 100644 llvm/test/Transforms/Sink/convergent.ll create mode 100644 llvm/test/Transforms/Sink/fence.ll create mode 100644 llvm/test/Transforms/Sink/landingpad.ll create mode 100644 llvm/test/Transforms/SpeculateAroundPHIs/basic-x86.ll create mode 100644 llvm/test/Transforms/SpeculativeExecution/spec-calls.ll create mode 100644 llvm/test/Transforms/SpeculativeExecution/spec-casts.ll create mode 100644 llvm/test/Transforms/SpeculativeExecution/spec-compares.ll create mode 100644 llvm/test/Transforms/SpeculativeExecution/spec-fp.ll create mode 100644 llvm/test/Transforms/SpeculativeExecution/spec.ll create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/AMDGPU/pr23975.ll create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/AMDGPU/reassociate-geps-and-slsr-addrspace.ll create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/NVPTX/lit.local.cfg create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/NVPTX/reassociate-geps-and-slsr.ll create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/NVPTX/speculative-slsr.ll create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/X86/lit.local.cfg create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/X86/no-slsr.ll create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/slsr-add.ll create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/slsr-gep.ll create mode 100644 llvm/test/Transforms/StraightLineStrengthReduce/slsr-mul.ll create mode 100644 llvm/test/Transforms/StripDeadPrototypes/basic.ll create mode 100644 llvm/test/Transforms/StripSymbols/2007-01-15-llvm.used.ll create mode 100644 llvm/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll create mode 100644 llvm/test/Transforms/StripSymbols/2010-08-25-crash.ll create mode 100644 llvm/test/Transforms/StripSymbols/block-address.ll create mode 100644 llvm/test/Transforms/StripSymbols/strip-cov.ll create mode 100644 llvm/test/Transforms/StripSymbols/strip-dead-debug-info.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/AMDGPU/backedge-id-bug-xfail.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/AMDGPU/backedge-id-bug.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/AMDGPU/lit.local.cfg create mode 100644 llvm/test/Transforms/StructurizeCFG/AMDGPU/loop-subregion-misordered.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/AMDGPU/uniform-regions.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/branch-on-argument.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/bug36015.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/invert-condition.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/invert-constantexpr.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/loop-continue-phi.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/loop-multiple-exits.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/nested-loop-order.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/no-branch-to-entry.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/one-loop-multiple-backedges.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/post-order-traversal-bug.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/rebuild-ssa-infinite-loop.ll create mode 100644 llvm/test/Transforms/StructurizeCFG/switch.ll create mode 100644 llvm/test/Transforms/SyntheticCountsPropagation/initial.ll create mode 100644 llvm/test/Transforms/SyntheticCountsPropagation/prop.ll create mode 100644 llvm/test/Transforms/SyntheticCountsPropagation/scc.ll create mode 100644 llvm/test/Transforms/TailCallElim/2010-06-26-MultipleReturnValues.ll create mode 100644 llvm/test/Transforms/TailCallElim/EraseBB.ll create mode 100644 llvm/test/Transforms/TailCallElim/accum_recursion.ll create mode 100644 llvm/test/Transforms/TailCallElim/ackermann.ll create mode 100644 llvm/test/Transforms/TailCallElim/basic.ll create mode 100644 llvm/test/Transforms/TailCallElim/debugloc.ll create mode 100644 llvm/test/Transforms/TailCallElim/deopt-bundle.ll create mode 100644 llvm/test/Transforms/TailCallElim/dont_reorder_load.ll create mode 100644 llvm/test/Transforms/TailCallElim/dup_tail.ll create mode 100644 llvm/test/Transforms/TailCallElim/inf-recursion.ll create mode 100644 llvm/test/Transforms/TailCallElim/notail.ll create mode 100644 llvm/test/Transforms/TailCallElim/opt-remarks-recursion.ll create mode 100644 llvm/test/Transforms/TailCallElim/reorder_load.ll create mode 100644 llvm/test/Transforms/TailCallElim/setjmp.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/circular-reference.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/comdat.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/filter-alias.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/function-alias.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/new-pm.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/no-type-md.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/pr33536.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal-typeid.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal1.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal2.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc-internal.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/split.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/symver.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/unsplittable.ll create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/x86/lit.local.cfg create mode 100644 llvm/test/Transforms/ThinLTOBitcodeWriter/x86/module-asm.ll create mode 100644 llvm/test/Transforms/Util/PR37334-break-crit-edges-require-dt.ll create mode 100644 llvm/test/Transforms/Util/PredicateInfo/condprop.ll create mode 100644 llvm/test/Transforms/Util/PredicateInfo/diamond.ll create mode 100644 llvm/test/Transforms/Util/PredicateInfo/edge.ll create mode 100644 llvm/test/Transforms/Util/PredicateInfo/ordering.ll create mode 100644 llvm/test/Transforms/Util/PredicateInfo/pr33456.ll create mode 100644 llvm/test/Transforms/Util/PredicateInfo/pr33457.ll create mode 100644 llvm/test/Transforms/Util/PredicateInfo/testandor.ll create mode 100644 llvm/test/Transforms/Util/PredicateInfo/unnamed-types.ll create mode 100644 llvm/test/Transforms/Util/call-promotion-utils-ptrcast-attribute.ll create mode 100644 llvm/test/Transforms/Util/call-promotion-utils-ptrcast.ll create mode 100644 llvm/test/Transforms/Util/clone-dicompileunit.ll create mode 100644 llvm/test/Transforms/Util/combine-alias-scope-metadata.ll create mode 100644 llvm/test/Transforms/Util/dbg-user-of-aext.ll create mode 100644 llvm/test/Transforms/Util/flattencfg.ll create mode 100644 llvm/test/Transforms/Util/libcalls-fast-math-inf-loop.ll create mode 100644 llvm/test/Transforms/Util/libcalls-opt-remarks.ll create mode 100644 llvm/test/Transforms/Util/libcalls-shrinkwrap-double.ll create mode 100644 llvm/test/Transforms/Util/libcalls-shrinkwrap-float.ll create mode 100644 llvm/test/Transforms/Util/libcalls-shrinkwrap-long-double.ll create mode 100644 llvm/test/Transforms/Util/lowerinvoke-funclet.ll create mode 100644 llvm/test/Transforms/Util/lowerswitch.ll create mode 100644 llvm/test/Transforms/Util/simplify-dbg-declare-load.ll create mode 100644 llvm/test/Transforms/Util/store-first-op.ll create mode 100644 llvm/test/Transforms/Util/strip-gc-relocates.ll create mode 100644 llvm/test/Transforms/Util/strip-nonlinetable-debuginfo-containingtypes.ll create mode 100644 llvm/test/Transforms/Util/strip-nonlinetable-debuginfo-cus.ll create mode 100644 llvm/test/Transforms/Util/strip-nonlinetable-debuginfo-localvars.ll create mode 100644 llvm/test/Transforms/Util/strip-nonlinetable-debuginfo-loops.ll create mode 100644 llvm/test/Transforms/Util/strip-nonlinetable-debuginfo-subroutinetypes.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/Inputs/export.yaml create mode 100644 llvm/test/Transforms/WholeProgramDevirt/Inputs/import-branch-funnel.yaml create mode 100644 llvm/test/Transforms/WholeProgramDevirt/Inputs/import-indir.yaml create mode 100644 llvm/test/Transforms/WholeProgramDevirt/Inputs/import-single-impl.yaml create mode 100644 llvm/test/Transforms/WholeProgramDevirt/Inputs/import-uniform-ret-val.yaml create mode 100644 llvm/test/Transforms/WholeProgramDevirt/Inputs/import-unique-ret-val0.yaml create mode 100644 llvm/test/Transforms/WholeProgramDevirt/Inputs/import-unique-ret-val1.yaml create mode 100644 llvm/test/Transforms/WholeProgramDevirt/Inputs/import-vcp-branch-funnel.yaml create mode 100644 llvm/test/Transforms/WholeProgramDevirt/Inputs/import-vcp.yaml create mode 100644 llvm/test/Transforms/WholeProgramDevirt/bad-read-from-vtable.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/branch-funnel-threshold.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/branch-funnel.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/constant-arg.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/devirt-single-impl-check.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/devirt-single-impl.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/expand-check.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/export-nothing.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/export-single-impl.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/export-uniform-ret-val.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/export-unique-ret-val.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/export-unsuccessful-checked.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/export-vcp.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/import-indir.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/import-no-dominating-assume.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/import.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/non-constant-vtable.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/pointer-vtable.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/soa-vtable.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/struct-vtable.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/uniform-retval-invoke.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/uniform-retval.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/unique-retval.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/vcp-accesses-memory.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/vcp-decl.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/vcp-no-this.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/vcp-non-constant-arg.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/vcp-too-wide-ints.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/vcp-type-mismatch.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/vcp-uses-this.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/virtual-const-prop-begin.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/virtual-const-prop-check.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/virtual-const-prop-end.ll create mode 100644 llvm/test/Transforms/WholeProgramDevirt/vtable-decl.ll diff --git a/llvm/include/llvm/InitializePasses.h b/llvm/include/llvm/InitializePasses.h index c1ed43562ba4..e0ea2082de5a 100644 --- a/llvm/include/llvm/InitializePasses.h +++ b/llvm/include/llvm/InitializePasses.h @@ -219,6 +219,7 @@ void initializeLoopDeletionLegacyPassPass(PassRegistry&); void initializeLoopDistributeLegacyPass(PassRegistry&); void initializeLoopExtractorPass(PassRegistry&); void initializeLoopGuardWideningLegacyPassPass(PassRegistry&); +void initializeLoopFuseLegacyPass(PassRegistry&); void initializeLoopIdiomRecognizeLegacyPassPass(PassRegistry&); void initializeLoopInfoWrapperPassPass(PassRegistry&); void initializeLoopInstSimplifyLegacyPassPass(PassRegistry&); diff --git a/llvm/include/llvm/Transforms/Scalar.h b/llvm/include/llvm/Transforms/Scalar.h index 402ee6f951b6..8e868277b41d 100644 --- a/llvm/include/llvm/Transforms/Scalar.h +++ b/llvm/include/llvm/Transforms/Scalar.h @@ -458,6 +458,12 @@ FunctionPass *createNaryReassociatePass(); // FunctionPass *createLoopDistributePass(); +//===----------------------------------------------------------------------===// +// +// LoopFuse - Fuse loops. +// +FunctionPass *createLoopFusePass(); + //===----------------------------------------------------------------------===// // // LoopLoadElimination - Perform loop-aware load elimination. diff --git a/llvm/include/llvm/Transforms/Scalar/LoopFuse.h b/llvm/include/llvm/Transforms/Scalar/LoopFuse.h new file mode 100644 index 000000000000..d3a02db6bd28 --- /dev/null +++ b/llvm/include/llvm/Transforms/Scalar/LoopFuse.h @@ -0,0 +1,30 @@ +//===- LoopFuse.h - Loop Fusion Pass ----------------------------*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// +/// +/// \file +/// This file implements the Loop Fusion pass. +/// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_TRANSFORMS_SCALAR_LOOPFUSE_H +#define LLVM_TRANSFORMS_SCALAR_LOOPFUSE_H + +#include "llvm/IR/PassManager.h" + +namespace llvm { + +class Function; + +class LoopFusePass : public PassInfoMixin { +public: + PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM); +}; + +} // end namespace llvm + +#endif // LLVM_TRANSFORMS_SCALAR_LOOPFUSE_H diff --git a/llvm/lib/Passes/PassBuilder.cpp b/llvm/lib/Passes/PassBuilder.cpp index c5fd68299eb8..074abebb1429 100644 --- a/llvm/lib/Passes/PassBuilder.cpp +++ b/llvm/lib/Passes/PassBuilder.cpp @@ -122,6 +122,7 @@ #include "llvm/Transforms/Scalar/LoopDataPrefetch.h" #include "llvm/Transforms/Scalar/LoopDeletion.h" #include "llvm/Transforms/Scalar/LoopDistribute.h" +#include "llvm/Transforms/Scalar/LoopFuse.h" #include "llvm/Transforms/Scalar/LoopIdiomRecognize.h" #include "llvm/Transforms/Scalar/LoopInstSimplify.h" #include "llvm/Transforms/Scalar/LoopLoadElimination.h" diff --git a/llvm/lib/Passes/PassRegistry.def b/llvm/lib/Passes/PassRegistry.def index 781d6d850bbc..aa75af9bb231 100644 --- a/llvm/lib/Passes/PassRegistry.def +++ b/llvm/lib/Passes/PassRegistry.def @@ -197,6 +197,7 @@ FUNCTION_PASS("partially-inline-libcalls", PartiallyInlineLibCallsPass()) FUNCTION_PASS("lcssa", LCSSAPass()) FUNCTION_PASS("loop-data-prefetch", LoopDataPrefetchPass()) FUNCTION_PASS("loop-load-elim", LoopLoadEliminationPass()) +FUNCTION_PASS("loop-fuse", LoopFusePass()) FUNCTION_PASS("loop-distribute", LoopDistributePass()) FUNCTION_PASS("loop-vectorize", LoopVectorizePass()) FUNCTION_PASS("pgo-memop-opt", PGOMemOPSizeOpt()) diff --git a/llvm/lib/Transforms/Scalar/CMakeLists.txt b/llvm/lib/Transforms/Scalar/CMakeLists.txt index 9c33971ce0f2..e6f8901ec81d 100644 --- a/llvm/lib/Transforms/Scalar/CMakeLists.txt +++ b/llvm/lib/Transforms/Scalar/CMakeLists.txt @@ -28,6 +28,7 @@ add_llvm_library(LLVMScalarOpts LoopDeletion.cpp LoopDataPrefetch.cpp LoopDistribute.cpp + LoopFuse.cpp LoopIdiomRecognize.cpp LoopInstSimplify.cpp LoopInterchange.cpp diff --git a/llvm/lib/Transforms/Scalar/LoopFuse.cpp b/llvm/lib/Transforms/Scalar/LoopFuse.cpp new file mode 100644 index 000000000000..1d2394bf14ea --- /dev/null +++ b/llvm/lib/Transforms/Scalar/LoopFuse.cpp @@ -0,0 +1,1212 @@ +//===- LoopFuse.cpp - Loop Fusion Pass ------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// +/// +/// \file +/// This file implements the loop fusion pass. +/// The implementation is largely based on the following document: +/// +/// Code Transformations to Augment the Scope of Loop Fusion in a +/// Production Compiler +/// Christopher Mark Barton +/// MSc Thesis +/// https://webdocs.cs.ualberta.ca/~amaral/thesis/ChristopherBartonMSc.pdf +/// +/// The general approach taken is to collect sets of control flow equivalent +/// loops and test whether they can be fused. The necessary conditions for +/// fusion are: +/// 1. The loops must be adjacent (there cannot be any statements between +/// the two loops). +/// 2. The loops must be conforming (they must execute the same number of +/// iterations). +/// 3. The loops must be control flow equivalent (if one loop executes, the +/// other is guaranteed to execute). +/// 4. There cannot be any negative distance dependencies between the loops. +/// If all of these conditions are satisfied, it is safe to fuse the loops. +/// +/// This implementation creates FusionCandidates that represent the loop and the +/// necessary information needed by fusion. It then operates on the fusion +/// candidates, first confirming that the candidate is eligible for fusion. The +/// candidates are then collected into control flow equivalent sets, sorted in +/// dominance order. Each set of control flow equivalent candidates is then +/// traversed, attempting to fuse pairs of candidates in the set. If all +/// requirements for fusion are met, the two candidates are fused, creating a +/// new (fused) candidate which is then added back into the set to consider for +/// additional fusion. +/// +/// This implementation currently does not make any modifications to remove +/// conditions for fusion. Code transformations to make loops conform to each of +/// the conditions for fusion are discussed in more detail in the document +/// above. These can be added to the current implementation in the future. +//===----------------------------------------------------------------------===// + +#include "llvm/Transforms/Scalar/LoopFuse.h" +#include "llvm/ADT/Statistic.h" +#include "llvm/Analysis/DependenceAnalysis.h" +#include "llvm/Analysis/DomTreeUpdater.h" +#include "llvm/Analysis/LoopInfo.h" +#include "llvm/Analysis/OptimizationRemarkEmitter.h" +#include "llvm/Analysis/PostDominators.h" +#include "llvm/Analysis/ScalarEvolution.h" +#include "llvm/Analysis/ScalarEvolutionExpressions.h" +#include "llvm/IR/Function.h" +#include "llvm/IR/Verifier.h" +#include "llvm/Pass.h" +#include "llvm/Support/Debug.h" +#include "llvm/Support/raw_ostream.h" +#include "llvm/Transforms/Scalar.h" +#include "llvm/Transforms/Utils.h" +#include "llvm/Transforms/Utils/BasicBlockUtils.h" + +using namespace llvm; + +#define DEBUG_TYPE "loop-fusion" + +STATISTIC(FuseCounter, "Count number of loop fusions performed"); +STATISTIC(NumFusionCandidates, "Number of candidates for loop fusion"); +STATISTIC(InvalidPreheader, "Loop has invalid preheader"); +STATISTIC(InvalidHeader, "Loop has invalid header"); +STATISTIC(InvalidExitingBlock, "Loop has invalid exiting blocks"); +STATISTIC(InvalidExitBlock, "Loop has invalid exit block"); +STATISTIC(InvalidLatch, "Loop has invalid latch"); +STATISTIC(InvalidLoop, "Loop is invalid"); +STATISTIC(AddressTakenBB, "Basic block has address taken"); +STATISTIC(MayThrowException, "Loop may throw an exception"); +STATISTIC(ContainsVolatileAccess, "Loop contains a volatile access"); +STATISTIC(NotSimplifiedForm, "Loop is not in simplified form"); +STATISTIC(InvalidDependencies, "Dependencies prevent fusion"); +STATISTIC(InvalidTripCount, + "Loop does not have invariant backedge taken count"); +STATISTIC(UncomputableTripCount, "SCEV cannot compute trip count of loop"); +STATISTIC(NonEqualTripCount, "Candidate trip counts are not the same"); +STATISTIC(NonAdjacent, "Candidates are not adjacent"); +STATISTIC(NonEmptyPreheader, "Candidate has a non-empty preheader"); + +enum FusionDependenceAnalysisChoice { + FUSION_DEPENDENCE_ANALYSIS_SCEV, + FUSION_DEPENDENCE_ANALYSIS_DA, + FUSION_DEPENDENCE_ANALYSIS_ALL, +}; + +static cl::opt FusionDependenceAnalysis( + "loop-fusion-dependence-analysis", + cl::desc("Which dependence analysis should loop fusion use?"), + cl::values(clEnumValN(FUSION_DEPENDENCE_ANALYSIS_SCEV, "scev", + "Use the scalar evolution interface"), + clEnumValN(FUSION_DEPENDENCE_ANALYSIS_DA, "da", + "Use the dependence analysis interface"), + clEnumValN(FUSION_DEPENDENCE_ANALYSIS_ALL, "all", + "Use all available analyses")), + cl::Hidden, cl::init(FUSION_DEPENDENCE_ANALYSIS_ALL), cl::ZeroOrMore); + +#ifndef NDEBUG +static cl::opt + VerboseFusionDebugging("loop-fusion-verbose-debug", + cl::desc("Enable verbose debugging for Loop Fusion"), + cl::Hidden, cl::init(false), cl::ZeroOrMore); +#endif + +/// This class is used to represent a candidate for loop fusion. When it is +/// constructed, it checks the conditions for loop fusion to ensure that it +/// represents a valid candidate. It caches several parts of a loop that are +/// used throughout loop fusion (e.g., loop preheader, loop header, etc) instead +/// of continually querying the underlying Loop to retrieve these values. It is +/// assumed these will not change throughout loop fusion. +/// +/// The invalidate method should be used to indicate that the FusionCandidate is +/// no longer a valid candidate for fusion. Similarly, the isValid() method can +/// be used to ensure that the FusionCandidate is still valid for fusion. +struct FusionCandidate { + /// Cache of parts of the loop used throughout loop fusion. These should not + /// need to change throughout the analysis and transformation. + /// These parts are cached to avoid repeatedly looking up in the Loop class. + + /// Preheader of the loop this candidate represents + BasicBlock *Preheader; + /// Header of the loop this candidate represents + BasicBlock *Header; + /// Blocks in the loop that exit the loop + BasicBlock *ExitingBlock; + /// The successor block of this loop (where the exiting blocks go to) + BasicBlock *ExitBlock; + /// Latch of the loop + BasicBlock *Latch; + /// The loop that this fusion candidate represents + Loop *L; + /// Vector of instructions in this loop that read from memory + SmallVector MemReads; + /// Vector of instructions in this loop that write to memory + SmallVector MemWrites; + /// Are all of the members of this fusion candidate still valid + bool Valid; + + /// Dominator and PostDominator trees are needed for the + /// FusionCandidateCompare function, required by FusionCandidateSet to + /// determine where the FusionCandidate should be inserted into the set. These + /// are used to establish ordering of the FusionCandidates based on dominance. + const DominatorTree *DT; + const PostDominatorTree *PDT; + + FusionCandidate(Loop *L, const DominatorTree *DT, + const PostDominatorTree *PDT) + : Preheader(L->getLoopPreheader()), Header(L->getHeader()), + ExitingBlock(L->getExitingBlock()), ExitBlock(L->getExitBlock()), + Latch(L->getLoopLatch()), L(L), Valid(true), DT(DT), PDT(PDT) { + + // Walk over all blocks in the loop and check for conditions that may + // prevent fusion. For each block, walk over all instructions and collect + // the memory reads and writes If any instructions that prevent fusion are + // found, invalidate this object and return. + for (BasicBlock *BB : L->blocks()) { + if (BB->hasAddressTaken()) { + AddressTakenBB++; + invalidate(); + return; + } + + for (Instruction &I : *BB) { + if (I.mayThrow()) { + MayThrowException++; + invalidate(); + return; + } + if (StoreInst *SI = dyn_cast(&I)) { + if (SI->isVolatile()) { + ContainsVolatileAccess++; + invalidate(); + return; + } + } + if (LoadInst *LI = dyn_cast(&I)) { + if (LI->isVolatile()) { + ContainsVolatileAccess++; + invalidate(); + return; + } + } + if (I.mayWriteToMemory()) + MemWrites.push_back(&I); + if (I.mayReadFromMemory()) + MemReads.push_back(&I); + } + } + } + + /// Check if all members of the class are valid. + bool isValid() const { + return Preheader && Header && ExitingBlock && ExitBlock && Latch && L && + !L->isInvalid() && Valid; + } + + /// Verify that all members are in sync with the Loop object. + void verify() const { + assert(isValid() && "Candidate is not valid!!"); + assert(!L->isInvalid() && "Loop is invalid!"); + assert(Preheader == L->getLoopPreheader() && "Preheader is out of sync"); + assert(Header == L->getHeader() && "Header is out of sync"); + assert(ExitingBlock == L->getExitingBlock() && + "Exiting Blocks is out of sync"); + assert(ExitBlock == L->getExitBlock() && "Exit block is out of sync"); + assert(Latch == L->getLoopLatch() && "Latch is out of sync"); + } + +#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP) + LLVM_DUMP_METHOD void dump() const { + dbgs() << "\tPreheader: " << (Preheader ? Preheader->getName() : "nullptr") + << "\n" + << "\tHeader: " << (Header ? Header->getName() : "nullptr") << "\n" + << "\tExitingBB: " + << (ExitingBlock ? ExitingBlock->getName() : "nullptr") << "\n" + << "\tExitBB: " << (ExitBlock ? ExitBlock->getName() : "nullptr") + << "\n" + << "\tLatch: " << (Latch ? Latch->getName() : "nullptr") << "\n"; + } +#endif + +private: + // This is only used internally for now, to clear the MemWrites and MemReads + // list and setting Valid to false. I can't envision other uses of this right + // now, since once FusionCandidates are put into the FusionCandidateSet they + // are immutable. Thus, any time we need to change/update a FusionCandidate, + // we must create a new one and insert it into the FusionCandidateSet to + // ensure the FusionCandidateSet remains ordered correctly. + void invalidate() { + MemWrites.clear(); + MemReads.clear(); + Valid = false; + } +}; + +inline llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, + const FusionCandidate &FC) { + if (FC.isValid()) + OS << FC.Preheader->getName(); + else + OS << ""; + + return OS; +} + +struct FusionCandidateCompare { + /// Comparison functor to sort two Control Flow Equivalent fusion candidates + /// into dominance order. + /// If LHS dominates RHS and RHS post-dominates LHS, return true; + /// IF RHS dominates LHS and LHS post-dominates RHS, return false; + bool operator()(const FusionCandidate &LHS, + const FusionCandidate &RHS) const { + const DominatorTree *DT = LHS.DT; + const PostDominatorTree *PDT = LHS.PDT; + + assert(DT && PDT && "Expecting valid dominator tree"); + + if (DT->dominates(LHS.Preheader, RHS.Preheader)) { + // Verify RHS Postdominates LHS + assert(PDT->dominates(RHS.Preheader, LHS.Preheader)); + return true; + } + + if (DT->dominates(RHS.Preheader, LHS.Preheader)) { + // RHS dominates LHS + // Verify LHS post-dominates RHS + assert(PDT->dominates(LHS.Preheader, RHS.Preheader)); + return false; + } + // If LHS does not dominate RHS and RHS does not dominate LHS then there is + // no dominance relationship between the two FusionCandidates. Thus, they + // should not be in the same set together. + llvm_unreachable( + "No dominance relationship between these fusion candidates!"); + } +}; + +namespace { +using LoopVector = SmallVector; + +// Set of Control Flow Equivalent (CFE) Fusion Candidates, sorted in dominance +// order. Thus, if FC0 comes *before* FC1 in a FusionCandidateSet, then FC0 +// dominates FC1 and FC1 post-dominates FC0. +// std::set was chosen because we want a sorted data structure with stable +// iterators. A subsequent patch to loop fusion will enable fusing non-ajdacent +// loops by moving intervening code around. When this intervening code contains +// loops, those loops will be moved also. The corresponding FusionCandidates +// will also need to be moved accordingly. As this is done, having stable +// iterators will simplify the logic. Similarly, having an efficient insert that +// keeps the FusionCandidateSet sorted will also simplify the implementation. +using FusionCandidateSet = std::set; +using FusionCandidateCollection = SmallVector; +} // namespace + +inline llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, + const FusionCandidateSet &CandSet) { + for (auto IT : CandSet) + OS << IT << "\n"; + + return OS; +} + +static void +printFusionCandidates(const FusionCandidateCollection &FusionCandidates) { + LLVM_DEBUG(dbgs() << "Fusion Candidates: \n"); + for (const auto &CandidateSet : FusionCandidates) { + LLVM_DEBUG({ + dbgs() << "*** Fusion Candidate Set ***\n"; + dbgs() << CandidateSet; + dbgs() << "****************************\n"; + }); + } +} + +/// Collect all loops in function at the same nest level, starting at the +/// outermost level. +/// +/// This data structure collects all loops at the same nest level for a +/// given function (specified by the LoopInfo object). It starts at the +/// outermost level. +struct LoopDepthTree { + using LoopsOnLevelTy = SmallVector; + using iterator = LoopsOnLevelTy::iterator; + using const_iterator = LoopsOnLevelTy::const_iterator; + + LoopDepthTree(LoopInfo &LI) : Depth(1) { + if (!LI.empty()) + LoopsOnLevel.emplace_back(LoopVector(LI.rbegin(), LI.rend())); + } + + /// Test whether a given loop has been removed from the function, and thus is + /// no longer valid. + bool isRemovedLoop(const Loop *L) const { return RemovedLoops.count(L); } + + /// Record that a given loop has been removed from the function and is no + /// longer valid. + void removeLoop(const Loop *L) { RemovedLoops.insert(L); } + + /// Descend the tree to the next (inner) nesting level + void descend() { + LoopsOnLevelTy LoopsOnNextLevel; + + for (const LoopVector &LV : *this) + for (Loop *L : LV) + if (!isRemovedLoop(L) && L->begin() != L->end()) + LoopsOnNextLevel.emplace_back(LoopVector(L->begin(), L->end())); + + LoopsOnLevel = LoopsOnNextLevel; + RemovedLoops.clear(); + Depth++; + } + + bool empty() const { return size() == 0; } + size_t size() const { return LoopsOnLevel.size() - RemovedLoops.size(); } + unsigned getDepth() const { return Depth; } + + iterator begin() { return LoopsOnLevel.begin(); } + iterator end() { return LoopsOnLevel.end(); } + const_iterator begin() const { return LoopsOnLevel.begin(); } + const_iterator end() const { return LoopsOnLevel.end(); } + +private: + /// Set of loops that have been removed from the function and are no longer + /// valid. + SmallPtrSet RemovedLoops; + + /// Depth of the current level, starting at 1 (outermost loops). + unsigned Depth; + + /// Vector of loops at the current depth level that have the same parent loop + LoopsOnLevelTy LoopsOnLevel; +}; + +#ifndef NDEBUG +static void printLoopVector(const LoopVector &LV) { + dbgs() << "****************************\n"; + for (auto L : LV) + printLoop(*L, dbgs()); + dbgs() << "****************************\n"; +} +#endif + +static void reportLoopFusion(const FusionCandidate &FC0, + const FusionCandidate &FC1, + OptimizationRemarkEmitter &ORE) { + using namespace ore; + ORE.emit( + OptimizationRemark(DEBUG_TYPE, "LoopFusion", FC0.Preheader->getParent()) + << "Fused " << NV("Cand1", StringRef(FC0.Preheader->getName())) + << " with " << NV("Cand2", StringRef(FC1.Preheader->getName()))); +} + +struct LoopFuser { +private: + // Sets of control flow equivalent fusion candidates for a given nest level. + FusionCandidateCollection FusionCandidates; + + LoopDepthTree LDT; + DomTreeUpdater DTU; + + LoopInfo &LI; + DominatorTree &DT; + DependenceInfo &DI; + ScalarEvolution &SE; + PostDominatorTree &PDT; + OptimizationRemarkEmitter &ORE; + +public: + LoopFuser(LoopInfo &LI, DominatorTree &DT, DependenceInfo &DI, + ScalarEvolution &SE, PostDominatorTree &PDT, + OptimizationRemarkEmitter &ORE, const DataLayout &DL) + : LDT(LI), DTU(DT, PDT, DomTreeUpdater::UpdateStrategy::Lazy), LI(LI), + DT(DT), DI(DI), SE(SE), PDT(PDT), ORE(ORE) {} + + /// This is the main entry point for loop fusion. It will traverse the + /// specified function and collect candidate loops to fuse, starting at the + /// outermost nesting level and working inwards. + bool fuseLoops(Function &F) { +#ifndef NDEBUG + if (VerboseFusionDebugging) { + LI.print(dbgs()); + } +#endif + + LLVM_DEBUG(dbgs() << "Performing Loop Fusion on function " << F.getName() + << "\n"); + bool Changed = false; + + while (!LDT.empty()) { + LLVM_DEBUG(dbgs() << "Got " << LDT.size() << " loop sets for depth " + << LDT.getDepth() << "\n";); + + for (const LoopVector &LV : LDT) { + assert(LV.size() > 0 && "Empty loop set was build!"); + + // Skip singleton loop sets as they do not offer fusion opportunities on + // this level. + if (LV.size() == 1) + continue; +#ifndef NDEBUG + if (VerboseFusionDebugging) { + LLVM_DEBUG({ + dbgs() << " Visit loop set (#" << LV.size() << "):\n"; + printLoopVector(LV); + }); + } +#endif + + collectFusionCandidates(LV); + Changed |= fuseCandidates(); + } + + // Finished analyzing candidates at this level. + // Descend to the next level and clear all of the candidates currently + // collected. Note that it will not be possible to fuse any of the + // existing candidates with new candidates because the new candidates will + // be at a different nest level and thus not be control flow equivalent + // with all of the candidates collected so far. + LLVM_DEBUG(dbgs() << "Descend one level!\n"); + LDT.descend(); + FusionCandidates.clear(); + } + + if (Changed) + LLVM_DEBUG(dbgs() << "Function after Loop Fusion: \n"; F.dump();); + +#ifndef NDEBUG + assert(DT.verify()); + assert(PDT.verify()); + LI.verify(DT); + SE.verify(); +#endif + + LLVM_DEBUG(dbgs() << "Loop Fusion complete\n"); + return Changed; + } + +private: + /// Determine if two fusion candidates are control flow equivalent. + /// + /// Two fusion candidates are control flow equivalent if when one executes, + /// the other is guaranteed to execute. This is determined using dominators + /// and post-dominators: if A dominates B and B post-dominates A then A and B + /// are control-flow equivalent. + bool isControlFlowEquivalent(const FusionCandidate &FC0, + const FusionCandidate &FC1) const { + assert(FC0.Preheader && FC1.Preheader && "Expecting valid preheaders"); + + if (DT.dominates(FC0.Preheader, FC1.Preheader)) + return PDT.dominates(FC1.Preheader, FC0.Preheader); + + if (DT.dominates(FC1.Preheader, FC0.Preheader)) + return PDT.dominates(FC0.Preheader, FC1.Preheader); + + return false; + } + + /// Determine if a fusion candidate (representing a loop) is eligible for + /// fusion. Note that this only checks whether a single loop can be fused - it + /// does not check whether it is *legal* to fuse two loops together. + bool eligibleForFusion(const FusionCandidate &FC) const { + if (!FC.isValid()) { + LLVM_DEBUG(dbgs() << "FC " << FC << " has invalid CFG requirements!\n"); + if (!FC.Preheader) + InvalidPreheader++; + if (!FC.Header) + InvalidHeader++; + if (!FC.ExitingBlock) + InvalidExitingBlock++; + if (!FC.ExitBlock) + InvalidExitBlock++; + if (!FC.Latch) + InvalidLatch++; + if (FC.L->isInvalid()) + InvalidLoop++; + + return false; + } + + // Require ScalarEvolution to be able to determine a trip count. + if (!SE.hasLoopInvariantBackedgeTakenCount(FC.L)) { + LLVM_DEBUG(dbgs() << "Loop " << FC.L->getName() + << " trip count not computable!\n"); + InvalidTripCount++; + return false; + } + + if (!FC.L->isLoopSimplifyForm()) { + LLVM_DEBUG(dbgs() << "Loop " << FC.L->getName() + << " is not in simplified form!\n"); + NotSimplifiedForm++; + return false; + } + + return true; + } + + /// Iterate over all loops in the given loop set and identify the loops that + /// are eligible for fusion. Place all eligible fusion candidates into Control + /// Flow Equivalent sets, sorted by dominance. + void collectFusionCandidates(const LoopVector &LV) { + for (Loop *L : LV) { + FusionCandidate CurrCand(L, &DT, &PDT); + if (!eligibleForFusion(CurrCand)) + continue; + + // Go through each list in FusionCandidates and determine if L is control + // flow equivalent with the first loop in that list. If it is, append LV. + // If not, go to the next list. + // If no suitable list is found, start another list and add it to + // FusionCandidates. + bool FoundSet = false; + + for (auto &CurrCandSet : FusionCandidates) { + if (isControlFlowEquivalent(*CurrCandSet.begin(), CurrCand)) { + CurrCandSet.insert(CurrCand); + FoundSet = true; +#ifndef NDEBUG + if (VerboseFusionDebugging) + LLVM_DEBUG(dbgs() << "Adding " << CurrCand + << " to existing candidate set\n"); +#endif + break; + } + } + if (!FoundSet) { + // No set was found. Create a new set and add to FusionCandidates +#ifndef NDEBUG + if (VerboseFusionDebugging) + LLVM_DEBUG(dbgs() << "Adding " << CurrCand << " to new set\n"); +#endif + FusionCandidateSet NewCandSet; + NewCandSet.insert(CurrCand); + FusionCandidates.push_back(NewCandSet); + } + NumFusionCandidates++; + } + } + + /// Determine if it is beneficial to fuse two loops. + /// + /// For now, this method simply returns true because we want to fuse as much + /// as possible (primarily to test the pass). This method will evolve, over + /// time, to add heuristics for profitability of fusion. + bool isBeneficialFusion(const FusionCandidate &FC0, + const FusionCandidate &FC1) { + return true; + } + + /// Determine if two fusion candidates have the same trip count (i.e., they + /// execute the same number of iterations). + /// + /// Note that for now this method simply returns a boolean value because there + /// are no mechanisms in loop fusion to handle different trip counts. In the + /// future, this behaviour can be extended to adjust one of the loops to make + /// the trip counts equal (e.g., loop peeling). When this is added, this + /// interface may need to change to return more information than just a + /// boolean value. + bool identicalTripCounts(const FusionCandidate &FC0, + const FusionCandidate &FC1) const { + const SCEV *TripCount0 = SE.getBackedgeTakenCount(FC0.L); + if (isa(TripCount0)) { + UncomputableTripCount++; + LLVM_DEBUG(dbgs() << "Trip count of first loop could not be computed!"); + return false; + } + + const SCEV *TripCount1 = SE.getBackedgeTakenCount(FC1.L); + if (isa(TripCount1)) { + UncomputableTripCount++; + LLVM_DEBUG(dbgs() << "Trip count of second loop could not be computed!"); + return false; + } + LLVM_DEBUG(dbgs() << "\tTrip counts: " << *TripCount0 << " & " + << *TripCount1 << " are " + << (TripCount0 == TripCount1 ? "identical" : "different") + << "\n"); + + return (TripCount0 == TripCount1); + } + + /// Walk each set of control flow equivalent fusion candidates and attempt to + /// fuse them. This does a single linear traversal of all candidates in the + /// set. The conditions for legal fusion are checked at this point. If a pair + /// of fusion candidates passes all legality checks, they are fused together + /// and a new fusion candidate is created and added to the FusionCandidateSet. + /// The original fusion candidates are then removed, as they are no longer + /// valid. + bool fuseCandidates() { + bool Fused = false; + LLVM_DEBUG(printFusionCandidates(FusionCandidates)); + for (auto &CandidateSet : FusionCandidates) { + if (CandidateSet.size() < 2) + continue; + + LLVM_DEBUG(dbgs() << "Attempting fusion on Candidate Set:\n" + << CandidateSet << "\n"); + + for (auto FC0 = CandidateSet.begin(); FC0 != CandidateSet.end(); ++FC0) { + assert(!LDT.isRemovedLoop(FC0->L) && + "Should not have removed loops in CandidateSet!"); + auto FC1 = FC0; + for (++FC1; FC1 != CandidateSet.end(); ++FC1) { + assert(!LDT.isRemovedLoop(FC1->L) && + "Should not have removed loops in CandidateSet!"); + + LLVM_DEBUG(dbgs() << "Attempting to fuse candidate \n"; FC0->dump(); + dbgs() << " with\n"; FC1->dump(); dbgs() << "\n"); + + FC0->verify(); + FC1->verify(); + + if (!identicalTripCounts(*FC0, *FC1)) { + LLVM_DEBUG(dbgs() << "Fusion candidates do not have identical trip " + "counts. Not fusing.\n"); + NonEqualTripCount++; + continue; + } + + if (!isAdjacent(*FC0, *FC1)) { + LLVM_DEBUG(dbgs() + << "Fusion candidates are not adjacent. Not fusing.\n"); + NonAdjacent++; + continue; + } + + // For now we skip fusing if the second candidate has any instructions + // in the preheader. This is done because we currently do not have the + // safety checks to determine if it is save to move the preheader of + // the second candidate past the body of the first candidate. Once + // these checks are added, this condition can be removed. + if (!isEmptyPreheader(*FC1)) { + LLVM_DEBUG(dbgs() << "Fusion candidate does not have empty " + "preheader. Not fusing.\n"); + NonEmptyPreheader++; + continue; + } + + if (!dependencesAllowFusion(*FC0, *FC1)) { + LLVM_DEBUG(dbgs() << "Memory dependencies do not allow fusion!\n"); + continue; + } + + bool BeneficialToFuse = isBeneficialFusion(*FC0, *FC1); + LLVM_DEBUG(dbgs() + << "\tFusion appears to be " + << (BeneficialToFuse ? "" : "un") << "profitable!\n"); + if (!BeneficialToFuse) + continue; + + // All analysis has completed and has determined that fusion is legal + // and profitable. At this point, start transforming the code and + // perform fusion. + + LLVM_DEBUG(dbgs() << "\tFusion is performed: " << *FC0 << " and " + << *FC1 << "\n"); + + // Report fusion to the Optimization Remarks. + // Note this needs to be done *before* performFusion because + // performFusion will change the original loops, making it not + // possible to identify them after fusion is complete. + reportLoopFusion(*FC0, *FC1, ORE); + + FusionCandidate FusedCand(performFusion(*FC0, *FC1), &DT, &PDT); + FusedCand.verify(); + assert(eligibleForFusion(FusedCand) && + "Fused candidate should be eligible for fusion!"); + + // Notify the loop-depth-tree that these loops are not valid objects + // anymore. + LDT.removeLoop(FC1->L); + + CandidateSet.erase(FC0); + CandidateSet.erase(FC1); + + auto InsertPos = CandidateSet.insert(FusedCand); + + assert(InsertPos.second && + "Unable to insert TargetCandidate in CandidateSet!"); + + // Reset FC0 and FC1 the new (fused) candidate. Subsequent iterations + // of the FC1 loop will attempt to fuse the new (fused) loop with the + // remaining candidates in the current candidate set. + FC0 = FC1 = InsertPos.first; + + LLVM_DEBUG(dbgs() << "Candidate Set (after fusion): " << CandidateSet + << "\n"); + + Fused = true; + } + } + } + return Fused; + } + + /// Rewrite all additive recurrences in a SCEV to use a new loop. + class AddRecLoopReplacer : public SCEVRewriteVisitor { + public: + AddRecLoopReplacer(ScalarEvolution &SE, const Loop &OldL, const Loop &NewL, + bool UseMax = true) + : SCEVRewriteVisitor(SE), Valid(true), UseMax(UseMax), OldL(OldL), + NewL(NewL) {} + + const SCEV *visitAddRecExpr(const SCEVAddRecExpr *Expr) { + const Loop *ExprL = Expr->getLoop(); + SmallVector Operands; + if (ExprL == &OldL) { + Operands.append(Expr->op_begin(), Expr->op_end()); + return SE.getAddRecExpr(Operands, &NewL, Expr->getNoWrapFlags()); + } + + if (OldL.contains(ExprL)) { + bool Pos = SE.isKnownPositive(Expr->getStepRecurrence(SE)); + if (!UseMax || !Pos || !Expr->isAffine()) { + Valid = false; + return Expr; + } + return visit(Expr->getStart()); + } + + for (const SCEV *Op : Expr->operands()) + Operands.push_back(visit(Op)); + return SE.getAddRecExpr(Operands, ExprL, Expr->getNoWrapFlags()); + } + + bool wasValidSCEV() const { return Valid; } + + private: + bool Valid, UseMax; + const Loop &OldL, &NewL; + }; + + /// Return false if the access functions of \p I0 and \p I1 could cause + /// a negative dependence. + bool accessDiffIsPositive(const Loop &L0, const Loop &L1, Instruction &I0, + Instruction &I1, bool EqualIsInvalid) { + Value *Ptr0 = getLoadStorePointerOperand(&I0); + Value *Ptr1 = getLoadStorePointerOperand(&I1); + if (!Ptr0 || !Ptr1) + return false; + + const SCEV *SCEVPtr0 = SE.getSCEVAtScope(Ptr0, &L0); + const SCEV *SCEVPtr1 = SE.getSCEVAtScope(Ptr1, &L1); +#ifndef NDEBUG + if (VerboseFusionDebugging) + LLVM_DEBUG(dbgs() << " Access function check: " << *SCEVPtr0 << " vs " + << *SCEVPtr1 << "\n"); +#endif + AddRecLoopReplacer Rewriter(SE, L0, L1); + SCEVPtr0 = Rewriter.visit(SCEVPtr0); +#ifndef NDEBUG + if (VerboseFusionDebugging) + LLVM_DEBUG(dbgs() << " Access function after rewrite: " << *SCEVPtr0 + << " [Valid: " << Rewriter.wasValidSCEV() << "]\n"); +#endif + if (!Rewriter.wasValidSCEV()) + return false; + + // TODO: isKnownPredicate doesnt work well when one SCEV is loop carried (by + // L0) and the other is not. We could check if it is monotone and test + // the beginning and end value instead. + + BasicBlock *L0Header = L0.getHeader(); + auto HasNonLinearDominanceRelation = [&](const SCEV *S) { + const SCEVAddRecExpr *AddRec = dyn_cast(S); + if (!AddRec) + return false; + return !DT.dominates(L0Header, AddRec->getLoop()->getHeader()) && + !DT.dominates(AddRec->getLoop()->getHeader(), L0Header); + }; + if (SCEVExprContains(SCEVPtr1, HasNonLinearDominanceRelation)) + return false; + + ICmpInst::Predicate Pred = + EqualIsInvalid ? ICmpInst::ICMP_SGT : ICmpInst::ICMP_SGE; + bool IsAlwaysGE = SE.isKnownPredicate(Pred, SCEVPtr0, SCEVPtr1); +#ifndef NDEBUG + if (VerboseFusionDebugging) + LLVM_DEBUG(dbgs() << " Relation: " << *SCEVPtr0 + << (IsAlwaysGE ? " >= " : " may < ") << *SCEVPtr1 + << "\n"); +#endif + return IsAlwaysGE; + } + + /// Return true if the dependences between @p I0 (in @p L0) and @p I1 (in + /// @p L1) allow loop fusion of @p L0 and @p L1. The dependence analyses + /// specified by @p DepChoice are used to determine this. + bool dependencesAllowFusion(const FusionCandidate &FC0, + const FusionCandidate &FC1, Instruction &I0, + Instruction &I1, bool AnyDep, + FusionDependenceAnalysisChoice DepChoice) { +#ifndef NDEBUG + if (VerboseFusionDebugging) { + LLVM_DEBUG(dbgs() << "Check dep: " << I0 << " vs " << I1 << " : " + << DepChoice << "\n"); + } +#endif + switch (DepChoice) { + case FUSION_DEPENDENCE_ANALYSIS_SCEV: + return accessDiffIsPositive(*FC0.L, *FC1.L, I0, I1, AnyDep); + case FUSION_DEPENDENCE_ANALYSIS_DA: { + auto DepResult = DI.depends(&I0, &I1, true); + if (!DepResult) + return true; +#ifndef NDEBUG + if (VerboseFusionDebugging) { + LLVM_DEBUG(dbgs() << "DA res: "; DepResult->dump(dbgs()); + dbgs() << " [#l: " << DepResult->getLevels() << "][Ordered: " + << (DepResult->isOrdered() ? "true" : "false") + << "]\n"); + LLVM_DEBUG(dbgs() << "DepResult Levels: " << DepResult->getLevels() + << "\n"); + } +#endif + + if (DepResult->getNextPredecessor() || DepResult->getNextSuccessor()) + LLVM_DEBUG( + dbgs() << "TODO: Implement pred/succ dependence handling!\n"); + + // TODO: Can we actually use the dependence info analysis here? + return false; + } + + case FUSION_DEPENDENCE_ANALYSIS_ALL: + return dependencesAllowFusion(FC0, FC1, I0, I1, AnyDep, + FUSION_DEPENDENCE_ANALYSIS_SCEV) || + dependencesAllowFusion(FC0, FC1, I0, I1, AnyDep, + FUSION_DEPENDENCE_ANALYSIS_DA); + } + + llvm_unreachable("Unknown fusion dependence analysis choice!"); + } + + /// Perform a dependence check and return if @p FC0 and @p FC1 can be fused. + bool dependencesAllowFusion(const FusionCandidate &FC0, + const FusionCandidate &FC1) { + LLVM_DEBUG(dbgs() << "Check if " << FC0 << " can be fused with " << FC1 + << "\n"); + assert(FC0.L->getLoopDepth() == FC1.L->getLoopDepth()); + assert(DT.dominates(FC0.Preheader, FC1.Preheader)); + + for (Instruction *WriteL0 : FC0.MemWrites) { + for (Instruction *WriteL1 : FC1.MemWrites) + if (!dependencesAllowFusion(FC0, FC1, *WriteL0, *WriteL1, + /* AnyDep */ false, + FusionDependenceAnalysis)) { + InvalidDependencies++; + return false; + } + for (Instruction *ReadL1 : FC1.MemReads) + if (!dependencesAllowFusion(FC0, FC1, *WriteL0, *ReadL1, + /* AnyDep */ false, + FusionDependenceAnalysis)) { + InvalidDependencies++; + return false; + } + } + + for (Instruction *WriteL1 : FC1.MemWrites) { + for (Instruction *WriteL0 : FC0.MemWrites) + if (!dependencesAllowFusion(FC0, FC1, *WriteL0, *WriteL1, + /* AnyDep */ false, + FusionDependenceAnalysis)) { + InvalidDependencies++; + return false; + } + for (Instruction *ReadL0 : FC0.MemReads) + if (!dependencesAllowFusion(FC0, FC1, *ReadL0, *WriteL1, + /* AnyDep */ false, + FusionDependenceAnalysis)) { + InvalidDependencies++; + return false; + } + } + + // Walk through all uses in FC1. For each use, find the reaching def. If the + // def is located in FC0 then it is is not safe to fuse. + for (BasicBlock *BB : FC1.L->blocks()) + for (Instruction &I : *BB) + for (auto &Op : I.operands()) + if (Instruction *Def = dyn_cast(Op)) + if (FC0.L->contains(Def->getParent())) { + InvalidDependencies++; + return false; + } + + return true; + } + + /// Determine if the exit block of \p FC0 is the preheader of \p FC1. In this + /// case, there is no code in between the two fusion candidates, thus making + /// them adjacent. + bool isAdjacent(const FusionCandidate &FC0, + const FusionCandidate &FC1) const { + return FC0.ExitBlock == FC1.Preheader; + } + + bool isEmptyPreheader(const FusionCandidate &FC) const { + return FC.Preheader->size() == 1; + } + + /// Fuse two fusion candidates, creating a new fused loop. + /// + /// This method contains the mechanics of fusing two loops, represented by \p + /// FC0 and \p FC1. It is assumed that \p FC0 dominates \p FC1 and \p FC1 + /// postdominates \p FC0 (making them control flow equivalent). It also + /// assumes that the other conditions for fusion have been met: adjacent, + /// identical trip counts, and no negative distance dependencies exist that + /// would prevent fusion. Thus, there is no checking for these conditions in + /// this method. + /// + /// Fusion is performed by rewiring the CFG to update successor blocks of the + /// components of tho loop. Specifically, the following changes are done: + /// + /// 1. The preheader of \p FC1 is removed as it is no longer necessary + /// (because it is currently only a single statement block). + /// 2. The latch of \p FC0 is modified to jump to the header of \p FC1. + /// 3. The latch of \p FC1 i modified to jump to the header of \p FC0. + /// 4. All blocks from \p FC1 are removed from FC1 and added to FC0. + /// + /// All of these modifications are done with dominator tree updates, thus + /// keeping the dominator (and post dominator) information up-to-date. + /// + /// This can be improved in the future by actually merging blocks during + /// fusion. For example, the preheader of \p FC1 can be merged with the + /// preheader of \p FC0. This would allow loops with more than a single + /// statement in the preheader to be fused. Similarly, the latch blocks of the + /// two loops could also be fused into a single block. This will require + /// analysis to prove it is safe to move the contents of the block past + /// existing code, which currently has not been implemented. + Loop *performFusion(const FusionCandidate &FC0, const FusionCandidate &FC1) { + assert(FC0.isValid() && FC1.isValid() && + "Expecting valid fusion candidates"); + + LLVM_DEBUG(dbgs() << "Fusion Candidate 0: \n"; FC0.dump(); + dbgs() << "Fusion Candidate 1: \n"; FC1.dump();); + + assert(FC1.Preheader == FC0.ExitBlock); + assert(FC1.Preheader->size() == 1 && + FC1.Preheader->getSingleSuccessor() == FC1.Header); + + // Remember the phi nodes originally in the header of FC0 in order to rewire + // them later. However, this is only necessary if the new loop carried + // values might not dominate the exiting branch. While we do not generally + // test if this is the case but simply insert intermediate phi nodes, we + // need to make sure these intermediate phi nodes have different + // predecessors. To this end, we filter the special case where the exiting + // block is the latch block of the first loop. Nothing needs to be done + // anyway as all loop carried values dominate the latch and thereby also the + // exiting branch. + SmallVector OriginalFC0PHIs; + if (FC0.ExitingBlock != FC0.Latch) + for (PHINode &PHI : FC0.Header->phis()) + OriginalFC0PHIs.push_back(&PHI); + + // Replace incoming blocks for header PHIs first. + FC1.Preheader->replaceSuccessorsPhiUsesWith(FC0.Preheader); + FC0.Latch->replaceSuccessorsPhiUsesWith(FC1.Latch); + + // Then modify the control flow and update DT and PDT. + SmallVector TreeUpdates; + + // The old exiting block of the first loop (FC0) has to jump to the header + // of the second as we need to execute the code in the second header block + // regardless of the trip count. That is, if the trip count is 0, so the + // back edge is never taken, we still have to execute both loop headers, + // especially (but not only!) if the second is a do-while style loop. + // However, doing so might invalidate the phi nodes of the first loop as + // the new values do only need to dominate their latch and not the exiting + // predicate. To remedy this potential problem we always introduce phi + // nodes in the header of the second loop later that select the loop carried + // value, if the second header was reached through an old latch of the + // first, or undef otherwise. This is sound as exiting the first implies the + // second will exit too, __without__ taking the back-edge. [Their + // trip-counts are equal after all. + // KB: Would this sequence be simpler to just just make FC0.ExitingBlock go + // to FC1.Header? I think this is basically what the three sequences are + // trying to accomplish; however, doing this directly in the CFG may mean + // the DT/PDT becomes invalid + FC0.ExitingBlock->getTerminator()->replaceUsesOfWith(FC1.Preheader, + FC1.Header); + TreeUpdates.emplace_back(DominatorTree::UpdateType( + DominatorTree::Delete, FC0.ExitingBlock, FC1.Preheader)); + TreeUpdates.emplace_back(DominatorTree::UpdateType( + DominatorTree::Insert, FC0.ExitingBlock, FC1.Header)); + + // The pre-header of L1 is not necessary anymore. + assert(pred_begin(FC1.Preheader) == pred_end(FC1.Preheader)); + FC1.Preheader->getTerminator()->eraseFromParent(); + new UnreachableInst(FC1.Preheader->getContext(), FC1.Preheader); + TreeUpdates.emplace_back(DominatorTree::UpdateType( + DominatorTree::Delete, FC1.Preheader, FC1.Header)); + + // Moves the phi nodes from the second to the first loops header block. + while (PHINode *PHI = dyn_cast(&FC1.Header->front())) { + if (SE.isSCEVable(PHI->getType())) + SE.forgetValue(PHI); + if (PHI->hasNUsesOrMore(1)) + PHI->moveBefore(&*FC0.Header->getFirstInsertionPt()); + else + PHI->eraseFromParent(); + } + + // Introduce new phi nodes in the second loop header to ensure + // exiting the first and jumping to the header of the second does not break + // the SSA property of the phis originally in the first loop. See also the + // comment above. + Instruction *L1HeaderIP = &FC1.Header->front(); + for (PHINode *LCPHI : OriginalFC0PHIs) { + int L1LatchBBIdx = LCPHI->getBasicBlockIndex(FC1.Latch); + assert(L1LatchBBIdx >= 0 && + "Expected loop carried value to be rewired at this point!"); + + Value *LCV = LCPHI->getIncomingValue(L1LatchBBIdx); + + PHINode *L1HeaderPHI = PHINode::Create( + LCV->getType(), 2, LCPHI->getName() + ".afterFC0", L1HeaderIP); + L1HeaderPHI->addIncoming(LCV, FC0.Latch); + L1HeaderPHI->addIncoming(UndefValue::get(LCV->getType()), + FC0.ExitingBlock); + + LCPHI->setIncomingValue(L1LatchBBIdx, L1HeaderPHI); + } + + // Replace latch terminator destinations. + FC0.Latch->getTerminator()->replaceUsesOfWith(FC0.Header, FC1.Header); + FC1.Latch->getTerminator()->replaceUsesOfWith(FC1.Header, FC0.Header); + + // If FC0.Latch and FC0.ExitingBlock are the same then we have already + // performed the updates above. + if (FC0.Latch != FC0.ExitingBlock) + TreeUpdates.emplace_back(DominatorTree::UpdateType( + DominatorTree::Insert, FC0.Latch, FC1.Header)); + + TreeUpdates.emplace_back(DominatorTree::UpdateType(DominatorTree::Delete, + FC0.Latch, FC0.Header)); + TreeUpdates.emplace_back(DominatorTree::UpdateType(DominatorTree::Insert, + FC1.Latch, FC0.Header)); + TreeUpdates.emplace_back(DominatorTree::UpdateType(DominatorTree::Delete, + FC1.Latch, FC1.Header)); + + // Update DT/PDT + DTU.applyUpdates(TreeUpdates); + + LI.removeBlock(FC1.Preheader); + DTU.deleteBB(FC1.Preheader); + DTU.flush(); + + // Is there a way to keep SE up-to-date so we don't need to forget the loops + // and rebuild the information in subsequent passes of fusion? + SE.forgetLoop(FC1.L); + SE.forgetLoop(FC0.L); + + // Merge the loops. + SmallVector Blocks(FC1.L->block_begin(), + FC1.L->block_end()); + for (BasicBlock *BB : Blocks) { + FC0.L->addBlockEntry(BB); + FC1.L->removeBlockFromLoop(BB); + if (LI.getLoopFor(BB) != FC1.L) + continue; + LI.changeLoopFor(BB, FC0.L); + } + while (!FC1.L->empty()) { + const auto &ChildLoopIt = FC1.L->begin(); + Loop *ChildLoop = *ChildLoopIt; + FC1.L->removeChildLoop(ChildLoopIt); + FC0.L->addChildLoop(ChildLoop); + } + + // Delete the now empty loop L1. + LI.erase(FC1.L); + +#ifndef NDEBUG + assert(!verifyFunction(*FC0.Header->getParent(), &errs())); + assert(DT.verify(DominatorTree::VerificationLevel::Fast)); + assert(PDT.verify()); + LI.verify(DT); + SE.verify(); +#endif + + FuseCounter++; + + LLVM_DEBUG(dbgs() << "Fusion done:\n"); + + return FC0.L; + } +}; + +struct LoopFuseLegacy : public FunctionPass { + + static char ID; + + LoopFuseLegacy() : FunctionPass(ID) { + initializeLoopFuseLegacyPass(*PassRegistry::getPassRegistry()); + } + + void getAnalysisUsage(AnalysisUsage &AU) const override { + AU.addRequiredID(LoopSimplifyID); + AU.addRequired(); + AU.addRequired(); + AU.addRequired(); + AU.addRequired(); + AU.addRequired(); + AU.addRequired(); + + AU.addPreserved(); + AU.addPreserved(); + AU.addPreserved(); + AU.addPreserved(); + } + + bool runOnFunction(Function &F) override { + if (skipFunction(F)) + return false; + auto &LI = getAnalysis().getLoopInfo(); + auto &DT = getAnalysis().getDomTree(); + auto &DI = getAnalysis().getDI(); + auto &SE = getAnalysis().getSE(); + auto &PDT = getAnalysis().getPostDomTree(); + auto &ORE = getAnalysis().getORE(); + + const DataLayout &DL = F.getParent()->getDataLayout(); + LoopFuser LF(LI, DT, DI, SE, PDT, ORE, DL); + return LF.fuseLoops(F); + } +}; + +PreservedAnalyses LoopFusePass::run(Function &F, FunctionAnalysisManager &AM) { + auto &LI = AM.getResult(F); + auto &DT = AM.getResult(F); + auto &DI = AM.getResult(F); + auto &SE = AM.getResult(F); + auto &PDT = AM.getResult(F); + auto &ORE = AM.getResult(F); + + const DataLayout &DL = F.getParent()->getDataLayout(); + LoopFuser LF(LI, DT, DI, SE, PDT, ORE, DL); + bool Changed = LF.fuseLoops(F); + if (!Changed) + return PreservedAnalyses::all(); + + PreservedAnalyses PA; + PA.preserve(); + PA.preserve(); + PA.preserve(); + PA.preserve(); + return PA; +} + +char LoopFuseLegacy::ID = 0; + +INITIALIZE_PASS_BEGIN(LoopFuseLegacy, "loop-fusion", "Loop Fusion", false, + false) +INITIALIZE_PASS_DEPENDENCY(PostDominatorTreeWrapperPass) +INITIALIZE_PASS_DEPENDENCY(ScalarEvolutionWrapperPass) +INITIALIZE_PASS_DEPENDENCY(DominatorTreeWrapperPass) +INITIALIZE_PASS_DEPENDENCY(DependenceAnalysisWrapperPass) +INITIALIZE_PASS_DEPENDENCY(LoopInfoWrapperPass) +INITIALIZE_PASS_DEPENDENCY(OptimizationRemarkEmitterWrapperPass) +INITIALIZE_PASS_END(LoopFuseLegacy, "loop-fusion", "Loop Fusion", false, false) + +FunctionPass *llvm::createLoopFusePass() { return new LoopFuseLegacy(); } diff --git a/llvm/lib/Transforms/Scalar/Scalar.cpp b/llvm/lib/Transforms/Scalar/Scalar.cpp index c91ffda6d980..2584cf04c933 100644 --- a/llvm/lib/Transforms/Scalar/Scalar.cpp +++ b/llvm/lib/Transforms/Scalar/Scalar.cpp @@ -62,6 +62,7 @@ void llvm::initializeScalarOpts(PassRegistry &Registry) { initializeJumpThreadingPass(Registry); initializeLegacyLICMPassPass(Registry); initializeLegacyLoopSinkPassPass(Registry); + initializeLoopFuseLegacyPass(Registry); initializeLoopDataPrefetchLegacyPassPass(Registry); initializeLoopDeletionLegacyPassPass(Registry); initializeLoopAccessLegacyAnalysisPass(Registry); diff --git a/llvm/test/Transforms/ADCE/2002-01-31-UseStuckAround.ll b/llvm/test/Transforms/ADCE/2002-01-31-UseStuckAround.ll new file mode 100644 index 000000000000..8910bdade372 --- /dev/null +++ b/llvm/test/Transforms/ADCE/2002-01-31-UseStuckAround.ll @@ -0,0 +1,11 @@ +; RUN: opt < %s -adce + +define i32 @"main"(i32 %argc) { + br label %2 + + %retval = phi i32 [ %argc, %2 ] ; [#uses=2] + %two = add i32 %retval, %retval ; [#uses=1] + ret i32 %two + + br label %1 +} diff --git a/llvm/test/Transforms/ADCE/2002-05-22-PHITest.ll b/llvm/test/Transforms/ADCE/2002-05-22-PHITest.ll new file mode 100644 index 000000000000..0095be1f5a16 --- /dev/null +++ b/llvm/test/Transforms/ADCE/2002-05-22-PHITest.ll @@ -0,0 +1,16 @@ +; It is illegal to remove BB1 because it will mess up the PHI node! +; +; RUN: opt < %s -adce -S | grep BB1 + +define i32 @test(i1 %C, i32 %A, i32 %B) { +;