llvm-project/llvm/test/Transforms/InstCombine
Sanjay Patel 019d3cd3b4 [InstCombine] adjust shuffle tests; NFC
Use xor for the extra uses test because div/rem have other problems.

llvm-svn: 335924
2018-06-28 21:14:02 +00:00
..
AArch64 [InstCombine, ARM, AArch64] Convert table lookup to shuffle vector 2018-05-30 14:38:50 +00:00
AMDGPU InstCombine/AMDGPU: Add dimension-aware image intrinsics to SimplifyDemanded 2018-06-21 13:37:31 +00:00
ARM [InstCombine, ARM] Convert vld1 to llvm load 2018-05-31 12:19:18 +00:00
NVPTX Update three tests I missed in r302979 and r302990 2017-05-18 00:58:06 +00:00
PowerPC InstCombine: Move tests that use target intrinsics into subdirectories 2017-05-13 05:39:46 +00:00
X86 [X86] Rename the autoupgraded of packed fp compare and fpclass intrinsics that don't take a mask as input to exclude '.mask.' from their name. 2018-06-27 15:57:53 +00:00
2003-05-26-CastMiscompile.ll
2003-05-27-ConstExprCrash.ll
2003-06-05-BranchInvertInfLoop.ll
2003-07-21-ExternalConstant.ll
2003-08-12-AllocaNonNull.ll
2003-09-09-VolatileLoadElim.ll
2003-10-29-CallSiteResolve.ll
2003-11-03-VarargsCallBug.ll
2004-01-13-InstCombineInvokePHI.ll
2004-02-23-ShiftShiftOverflow.ll
2004-03-13-InstCombineInfLoop.ll
2004-04-04-InstCombineReplaceAllUsesWith.ll
2004-05-07-UnsizedCastLoad.ll
2004-07-27-ConstantExprMul.ll
2004-08-09-RemInfLoop.ll
2004-08-10-BoolSetCC.ll
2004-09-20-BadLoadCombine.ll
2004-09-20-BadLoadCombine2.ll
2004-09-28-BadShiftAndSetCC.ll
2004-11-22-Missed-and-fold.ll
2004-11-27-SetCCForCastLargerAndConstant.ll
2004-12-08-RemInfiniteLoop.ll
2005-03-04-ShiftOverflow.ll
2005-04-07-UDivSelectCrash.ll
2005-06-15-DivSelectCrash.ll
2005-06-15-ShiftSetCCCrash.ll
2005-06-16-RangeCrash.ll
2005-07-07-DeadPHILoop.ll
2006-02-13-DemandedMiscompile.ll
2006-02-28-Crash.ll
2006-03-30-ExtractElement.ll
2006-04-28-ShiftShiftLongLong.ll
2006-05-04-DemandedBitCrash.ll
2006-09-15-CastToBool.ll
2006-10-19-SignedToUnsignedCastAndConst-2.ll
2006-10-20-mask.ll
2006-10-26-VectorReassoc.ll [InstCombine] Enable more reassociations using FMF 'reassoc' + 'nsz' 2018-05-24 20:16:43 +00:00
2006-11-10-ashr-miscompile.ll
2006-12-01-BadFPVectorXform.ll
2006-12-05-fp-to-int-ext.ll
2006-12-08-Phi-ICmp-Op-Fold.ll
2006-12-08-Select-ICmp.ll
2006-12-15-Range-Test.ll
2006-12-23-Select-Cmp-Cmp.ll
2007-01-13-ExtCompareMiscompile.ll
2007-01-18-VectorInfLoop.ll
2007-02-01-LoadSinkAlloca.ll
2007-02-07-PointerCast.ll
2007-02-23-PhiFoldInfLoop.ll
2007-03-13-CompareMerge.ll
2007-03-19-BadTruncChangePR1261.ll
2007-03-21-SignedRangeTest.ll [InstCombine] allow icmp (div X, Y), C folds for splat constant vectors 2016-08-31 21:57:21 +00:00
2007-03-25-BadShiftMask.ll update to use FileCheck and auto-generate checks 2016-08-09 19:42:52 +00:00
2007-03-25-DoubleShift.ll
2007-03-26-BadShiftMask.ll
2007-04-08-SingleEltVectorCrash.ll
2007-05-10-icmp-or.ll
2007-05-14-Crash.ll
2007-05-18-CastFoldBug.ll
2007-06-06-AshrSignBit.ll
2007-06-21-DivCompareMiscomp.ll
2007-08-02-InfiniteLoop.ll
2007-09-10-AliasConstFold.ll
2007-09-17-AliasConstFold2.ll
2007-10-10-EliminateMemCpy.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
2007-10-12-Crash.ll
2007-10-28-stacksave.ll
2007-10-31-RangeCrash.ll
2007-10-31-StringCrash.ll
2007-11-07-OpaqueAlignCrash.ll
2007-11-15-CompareMiscomp.ll
2007-11-25-CompatibleAttributes.ll
2007-12-10-ConstFoldCompare.ll
2007-12-12-GEPScale.ll
2007-12-16-AsmNoUnwind.ll
2007-12-18-AddSelCmpSub.ll
2007-12-28-IcmpSub2.ll
2008-01-06-BitCastAttributes.ll
2008-01-06-CastCrash.ll
2008-01-06-VoidCast.ll
2008-01-13-AndCmpCmp.ll
2008-01-14-VarArgTrampoline.ll
2008-01-21-MismatchedCastAndCompare.ll
2008-01-21-MulTrunc.ll
2008-01-27-FloatSelect.ll
2008-02-13-MulURem.ll
2008-02-16-SDivOverflow2.ll
2008-02-23-MulSub.ll
2008-02-28-OrFCmpCrash.ll
2008-03-13-IntToPtr.ll
2008-04-22-ByValBitcast.ll
2008-04-28-VolatileStore.ll
2008-04-29-VolatileLoadDontMerge.ll
2008-04-29-VolatileLoadMerge.ll
2008-05-08-LiveStoreDelete.ll
2008-05-08-StrLenSink.ll
2008-05-09-SinkOfInvoke.ll
2008-05-17-InfLoop.ll
2008-05-18-FoldIntToPtr.ll
2008-05-22-IDivVector.ll
2008-05-23-CompareFold.ll
2008-05-31-AddBool.ll
2008-05-31-Bools.ll
2008-06-05-ashr-crash.ll
2008-06-08-ICmpPHI.ll
2008-06-13-InfiniteLoopStore.ll
2008-06-13-ReadOnlyCallStore.ll
2008-06-19-UncondLoad.ll
2008-06-21-CompareMiscomp.ll
2008-06-24-StackRestore.ll
2008-07-08-ShiftOneAndOne.ll
2008-07-08-SubAnd.ll
2008-07-08-VolatileLoadMerge.ll
2008-07-09-SubAndError.ll
2008-07-10-CastSextBool.ll
2008-07-11-RemAnd.ll
2008-07-13-DivZero.ll
2008-07-16-fsub.ll
2008-08-05-And.ll
2008-09-02-VectorCrash.ll
2008-10-11-DivCompareFold.ll
2008-10-23-ConstFoldWithoutMask.ll
2008-11-01-SRemDemandedBits.ll
2008-11-08-FCmp.ll
2008-11-27-IDivVector.ll
2008-11-27-MultiplyIntVec.ll
2008-12-17-SRemNegConstVec.ll
2009-01-05-i128-crash.ll
2009-01-08-AlignAlloca.ll
2009-01-16-PointerAddrSpace.ll
2009-01-19-fmod-constant-float-specials.ll
2009-01-19-fmod-constant-float.ll
2009-01-24-EmptyStruct.ll
2009-01-31-InfIterate.ll
2009-01-31-Pressure.ll
2009-02-04-FPBitcast.ll
2009-02-11-NotInitialized.ll
2009-02-20-InstCombine-SROA.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
2009-02-21-LoadCST.ll
2009-02-25-CrashZeroSizeArray.ll
2009-03-18-vector-ashr-crash.ll
2009-03-24-InfLoop.ll
2009-04-07-MulPromoteToI96.ll
2009-05-23-FCmpToICmp.ll
2009-06-11-StoreAddrSpace.ll
2009-06-16-SRemDemandedBits.ll
2009-07-02-MaskedIntVector.ll
2009-12-17-CmpSelectNull.ll
2010-01-28-NegativeSRem.ll
2010-03-03-ExtElim.ll
2010-05-30-memcpy-Struct.ll
2010-11-01-lshr-mask.ll Revert commit rL323951 2018-02-01 13:05:25 +00:00
2010-11-21-SizeZeroTypeGEP.ll
2010-11-23-Distributed.ll
2011-02-14-InfLoop.ll
2011-03-08-SRemMinusOneBadOpt.ll
2011-05-02-VectorBoolean.ll
2011-05-13-InBoundsGEP.ll
2011-05-28-swapmulsub.ll [InstCombine] auto-generate complete test checks; NFC 2017-11-28 19:07:28 +00:00
2011-06-13-nsw-alloca.ll
2011-09-03-Trampoline.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
2011-10-07-AlignPromotion.ll
2012-01-11-OpaqueBitcastCrash.ll
2012-02-13-FCmp.ll
2012-02-28-ICmp.ll
2012-03-10-InstCombine.ll
2012-3-15-or-xor-constant.ll
2012-04-24-vselect.ll
2012-04-30-SRem.ll
2012-05-28-select-hang.ll
2012-06-06-LoadOfPHIs.ll
2012-6-7-vselect-bitcast.ll
2012-07-25-LoadPart.ll opt: Rename -default-data-layout flag to -data-layout and make it always override the layout. 2017-02-17 17:36:52 +00:00
2012-07-30-addrsp-bitcast.ll
2012-08-28-udiv_ashl.ll
2012-09-17-ZeroSizedAlloca.ll
2012-10-25-vector-of-pointers.ll
2012-12-14-simp-vgep.ll
2013-03-05-Combine-BitcastTy-Into-Alloca.ll
AddOverFlow.ll [InstCombine][KnownBits] Use KnownBits better to detect nsw adds 2017-05-03 23:22:46 +00:00
CPP_min_max.ll
ExtractCast.ll
IntPtrCast.ll
JavaCompare.ll
LandingPadClauses.ll
OverlappingInsertvalues.ll
PR30597.ll [InstCombine] Transform !range metadata to !nonnull when combining loads 2016-10-11 01:00:45 +00:00
PR37526.ll [InstCombine] Fix PR37526: MinMax patterns produce an infinite loop. 2018-05-21 17:46:34 +00:00
README.txt
abs-1.ll [InstCombine] fold another shifty abs pattern to cmp+sel (PR36036) 2018-06-06 21:58:12 +00:00
abs_abs.ll Recommit r333226 "[ValueTracking] Teach computeKnownBits that the result of an absolute value pattern that uses nsw flag is always positive." 2018-05-25 19:18:09 +00:00
add-shrink.ll
add-sitofp.ll Fix for PR32740 - Invalid floating type, unreachable between r300969 and r301029 2017-04-22 07:24:52 +00:00
add.ll [InstCombine] (A + 1) + (B ^ -1) --> A - B 2018-06-26 05:31:18 +00:00
add2.ll [InstCombine][NFC] add2.ll: add a few commutative checks. 2018-04-26 20:07:17 +00:00
add3.ll
add4.ll [InstCombine] Simplify Add with remainder expressions as operands. 2018-04-26 20:52:28 +00:00
addnegneg.ll
addrspacecast.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
adjust-for-minmax.ll [InstCombine] canonicalize min/max constant to select's false value 2016-11-21 22:04:14 +00:00
alias-recursion.ll
align-2d-gep.ll
align-addr.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
align-attr.ll
align-external.ll
all-bits-shift.ll
alloca-cast-debuginfo.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
alloca.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
allocsize-32.ll
allocsize.ll [Analysis] Ignore `nobuiltin` on `allocsize` function calls. 2016-12-27 06:32:14 +00:00
and-compare.ll [InstCombine] use m_APInt to allow icmp (and X, Y), C folds for splat constant vectors 2016-08-28 18:18:00 +00:00
and-fcmp.ll [InstSimplify, InstCombine] add/update tests with FP +0.0 vector with undef; NFC 2018-03-25 17:48:20 +00:00
and-narrow.ll [InstCombine] Allow common type conversions to i8/i16/i32 2018-02-03 16:51:03 +00:00
and-or-and.ll
and-or-icmps.ll [InstSimplify] use ConstantRange to simplify or-of-icmps 2017-05-07 15:11:40 +00:00
and-or-not.ll Revert rL333106 / D46814: [InstCombine] Fold unfolded masked merge pattern with variable mask! 2018-05-31 06:00:36 +00:00
and-or.ll [InstCombine] allow mask hoisting transform for vector types 2017-07-31 21:01:53 +00:00
and-xor-merge.ll
and-xor-or.ll [InstCombine] add shift+logic tests (PR37098); NFC 2018-04-14 13:39:02 +00:00
and.ll [InstCombine] fix demanded-bits propagation for zext/trunc 2018-01-17 14:39:28 +00:00
and2.ll [InstCombine] move related tests together; NFC 2017-09-12 15:29:28 +00:00
apint-add.ll
apint-and-compare.ll
apint-and-or-and.ll
apint-and-xor-merge.ll
apint-and.ll [InstCombine] use FileCheck and auto-generate checks; NFC 2017-05-01 14:20:30 +00:00
apint-call-cast-target.ll
apint-cast-and-cast.ll
apint-cast-cast-to-and.ll
apint-cast.ll
apint-div1.ll
apint-div2.ll
apint-mul1.ll [InstCombine] Improve mul(x, pow2) -> shl combine for vector constants 2018-02-08 14:10:01 +00:00
apint-mul2.ll [InstCombine] Improve mul(x, pow2) -> shl combine for vector constants 2018-02-08 14:10:01 +00:00
apint-not.ll [InstCombine] consolidate tests for DeMorgan folds; NFC 2017-04-30 18:57:12 +00:00
apint-or.ll [InstCombine] consolidate tests for DeMorgan folds; NFC 2017-04-30 18:57:12 +00:00
apint-rem1.ll
apint-rem2.ll
apint-select.ll [InstCombine] move tests for select with bit-test of condition; NFC 2018-04-24 21:06:06 +00:00
apint-shift-simplify.ll
apint-shift.ll [InstSimplify] move tests for shifts; NFC 2018-04-21 16:58:00 +00:00
apint-shl-trunc.ll [InstCombine] use m_APInt to allow icmp (and (sh X, Y), C2), C1 folds for splat constant vectors 2016-09-07 22:33:03 +00:00
apint-sub.ll [InstCombine] put tests of mul with neg operand(s) together; NFC 2018-02-13 23:02:12 +00:00
apint-xor1.ll
apint-xor2.ll
assoc-cast-assoc.ll
assume-loop-align.ll
assume-redundant.ll Revert @llvm.assume with operator bundles (r289755-r289757) 2016-12-19 08:22:17 +00:00
assume.ll [InstCombine] ignore debuginfo when removing redundant assumes (PR37726) 2018-06-20 13:22:26 +00:00
assume2.ll [InstCombine] don't use DeMorgan's Law on integer constants (2nd try) 2017-05-02 15:31:40 +00:00
atomic.ll [PR29121] Don't fold if it would produce atomic vector loads or stores 2016-12-01 20:17:06 +00:00
badmalloc.ll
binop-cast.ll
bit-checks.ll [InstCombine][InstSimplify] Teach decomposeBitTestICmp to look through truncate instructions 2017-09-01 21:27:34 +00:00
bitcast-alias-function.ll
bitcast-bigendian.ll [InstCombine] reverse bitcast + bitwise-logic canonicalization (PR33138) 2017-06-22 15:46:54 +00:00
bitcast-bitcast.ll
bitcast-sext-vector.ll
bitcast-store.ll InstCombine: Don't combine loads/stores from swifterror to a new type 2016-09-10 18:14:57 +00:00
bitcast-vec-canon.ll [InstCombine] auto-generate test checks; NFC 2017-05-23 17:51:22 +00:00
bitcast.ll [InstCombine] reverse bitcast + bitwise-logic canonicalization (PR33138) 2017-06-22 15:46:54 +00:00
bitcount.ll
bitreverse-hang.ll
bitreverse-known-bits.ll [ValueTracking] Make sure we keep range metadata information when calculating known bits for calls to bitreverse intrinsic. 2017-03-22 07:22:49 +00:00
bittest.ll
branch.ll [InstCombine] Fold branches with irrelevant conditions to a constant. 2017-08-23 09:14:37 +00:00
broadcast.ll [InstCombine] Fold insert sequence if first ins has multiple users. 2017-08-30 10:54:21 +00:00
bswap-fold.ll Move tests associated with transforms moved in r321467 2017-12-30 03:13:00 +00:00
bswap-known-bits.ll
bswap.ll [InstCombine] Adjusting bswap pattern matching to hold for And/Shift mixed case 2018-05-01 12:25:46 +00:00
builtin-object-size-offset.ll Add address space mangling to lifetime intrinsics 2017-04-10 20:18:21 +00:00
builtin-object-size-ptr.ll Add address space mangling to lifetime intrinsics 2017-04-10 20:18:21 +00:00
cabs-array.ll [SimplifyLibCalls] Inline calls to cabs when it's safe to do so 2017-12-16 01:26:25 +00:00
cabs-discrete.ll [SimplifyLibCalls] Inline calls to cabs when it's safe to do so 2017-12-16 01:26:25 +00:00
call-callconv.ll [InstCombine] use nsw negation for abs libcalls 2018-05-22 23:29:40 +00:00
call-cast-attrs.ll Simplify test for sret attribute in instcombine 2017-04-19 23:17:47 +00:00
call-cast-target-inalloca.ll
call-cast-target.ll
call-guard.ll [InstCombine] Widen guards with conditions between 2018-05-09 22:56:32 +00:00
call-intrinsics.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
call.ll [InstCombine] Add test to remove VarArg casts (NFC) 2018-01-03 13:35:43 +00:00
call2.ll
call_nonnull_arg.ll [ValueTracking] use nonnull argument attribute to eliminate null checks 2017-02-12 15:35:34 +00:00
canonicalize-ashr-shl-to-masking.ll [InstCombine] Fold (x >> y) << y -> x & (-1 << y) 2018-06-10 20:10:13 +00:00
canonicalize-lshr-shl-to-masking.ll [InstCombine] Fold (x >> y) << y -> x & (-1 << y) 2018-06-10 20:10:13 +00:00
canonicalize-shl-lshr-to-masking.ll [InstCombine] Recommit: Fold (x << y) >> y -> x & (-1 >> y) 2018-06-15 09:56:52 +00:00
canonicalize_branch.ll [InstCombine] add isCanonicalPredicate() helper function and use it; NFCI 2017-05-17 14:21:19 +00:00
cast-call-combine-prof.ll Fix some misc. -enable-var-scope violations 2017-11-13 01:47:52 +00:00
cast-call-combine.ll
cast-callee-deopt-bundles.ll
cast-int-fcmp-eq-0.ll [InstSimplify] More fcmp cases when comparing against negative constants. 2017-12-01 12:34:16 +00:00
cast-int-icmp-eq-0.ll [PatternMatch] allow undef elements when matching a vector zero 2018-04-22 17:07:44 +00:00
cast-mul-select.ll [InstCombine] don't try to evaluate instructions with >1 use (revert r324014) 2018-02-05 21:50:32 +00:00
cast-select.ll [InstCombine] don't change the size of a select if it would mismatch its condition operands' sizes 2018-05-31 00:16:58 +00:00
cast-set.ll
cast-unsigned-icmp-eqcmp-0.ll [PatternMatch] allow undef elements when matching a vector zero 2018-04-22 17:07:44 +00:00
cast.ll [ConstProp] move tests for fp <--> int; NFC 2018-06-06 16:53:56 +00:00
cast_ptr.ll
ceil.ll
clamp-to-minmax.ll [InstCombine] Canonicalize clamp of float types to minmax in fast mode. 2017-08-04 12:22:17 +00:00
cmp-intrinsic.ll [InstCombine] move and improve tests for cmp-intrinsic; NFC 2017-07-03 14:07:40 +00:00
compare-3way.ll [InstCombine] Recognize and simplify three way comparison idioms 2017-06-23 13:41:45 +00:00
compare-alloca.ll Add address space mangling to lifetime intrinsics 2017-04-10 20:18:21 +00:00
compare-signs.ll [InstCombine] add folds for xor-of-icmp signbit tests (PR36682) 2018-03-22 14:08:16 +00:00
compare-udiv.ll [InstCombine] use m_APInt to allow icmp (udiv X, Y), C folds for splat constant vectors 2016-08-18 17:55:59 +00:00
compare-unescaped.ll [InstCombine] fix operand-complexity-based canonicalization (PR28296) 2017-02-03 21:43:34 +00:00
consecutive-fences.ll InstCombine: ignore debug instructions during fence combine 2018-06-06 12:46:02 +00:00
constant-expr-datalayout.ll
constant-fold-address-space-pointer.ll ConstantFold: Don't fold global address vs. null for addrspace != 0 2018-06-26 18:55:43 +00:00
constant-fold-alias.ll
constant-fold-compare.ll
constant-fold-gep.ll
constant-fold-iteration.ll [InstCombine] Prevent InstCombine from triggering an extra iteration if something changed in the initial Worklist creation 2017-05-13 06:56:04 +00:00
constant-fold-libfunc.ll Add strictfp attribute to prevent unwanted optimizations of libm calls 2017-08-14 21:15:13 +00:00
constant-fold-math.ll [InstCombine] Add frem constant folding test (PR3316) 2017-04-19 21:09:19 +00:00
convergent.ll Fix some misc. -enable-var-scope violations 2017-11-13 01:47:52 +00:00
copysign.ll
cos-1.ll
cos-2.ll
cos-intrinsic.ll [PatternMatch] allow vector matches with m_FNeg 2018-02-20 23:29:05 +00:00
crash.ll
ctpop.ll Fix some misc. -enable-var-scope violations 2017-11-13 01:47:52 +00:00
dce-iterate.ll
deadcode.ll Add address space mangling to lifetime intrinsics 2017-04-10 20:18:21 +00:00
debug-line.ll
debuginfo-dce.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
debuginfo-dce2.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
debuginfo-skip.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
debuginfo-variables.ll [Debugify] Set a DI version module flag for llc compatibility 2018-05-24 23:00:23 +00:00
debuginfo.ll Re-apply "[DebugInfo] Check size of variable in ConvertDebugDeclareToDebugValue" 2018-06-15 13:48:55 +00:00
debuginfo_add.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
default-alignment.ll
demand_shrink_nsw.ll [InstCombine][KnownBits] Use KnownBits better to detect nsw adds 2017-05-03 23:22:46 +00:00
demorgan.ll [InstCombine] fix auto-generated FileCheck-captured variable refs 2017-05-10 14:40:04 +00:00
disable-simplify-libcalls.ll
distribute.ll
div-shift-crash.ll
div-shift.ll [InstCombine] (X << Y) / X -> 1 << Y 2018-01-21 16:14:51 +00:00
div.ll [InstCombine] fold udiv with sext bool divisor 2018-06-26 12:41:15 +00:00
double-float-shrink-1.ll
double-float-shrink-2.ll [InstCombine] Avoid creating mis-sized dbg.values in commonCastTransforms() 2018-06-27 00:47:53 +00:00
early_constfold_changes_IR.ll [InstCombine] Make sure AddReachableCodeToWorklist sets MadeIRChange 2017-06-19 18:00:27 +00:00
early_dce_clobbers_callgraph.ll [InstCombine] Make sure AddReachableCodeToWorklist sets MadeIRChange 2017-06-19 18:00:27 +00:00
element-atomic-memintrins.ll [InstCombine] Handle atomic memset in the same way as regular memset 2018-05-11 20:04:50 +00:00
enforce-known-alignment.ll
err-rep-cold.ll Fix some misc. -enable-var-scope violations 2017-11-13 01:47:52 +00:00
exact.ll [InstCombine] use m_APInt to allow ashr folds for vectors with splat constants 2017-01-15 16:38:19 +00:00
exp2-1.ll
exp2-2.ll
extractelement.ll [instsimplify] consistently handle undef and out of bound indices for insertelement and extractelement 2017-12-30 05:54:22 +00:00
extractinsert-tbaa.ll [InstCombine] Retain TBAA when narrowing memory accesses 2017-06-28 23:36:40 +00:00
extractvalue.ll
fabs-libcall.ll [InstCombine] regenerate test checks; NFC 2017-11-16 16:38:42 +00:00
fabs.ll [PatternMatch] allow undef elements when matching vector FP +0.0 2018-03-25 21:16:33 +00:00
fadd.ll [InstCombine] simplify fneg+fadd folds; NFC 2018-04-16 14:13:57 +00:00
fast-math-scalarization.ll
fast-math.ll [InstCombine] simplify fneg+fadd folds; NFC 2018-04-16 14:13:57 +00:00
fcmp-select.ll
fcmp-special.ll [PatternMatch] allow undef elements when matching vector FP +0.0 2018-03-25 21:16:33 +00:00
fcmp.ll [PatternMatch] define m_FNeg using m_FSub 2018-04-05 15:36:55 +00:00
fdiv-cos-sin.ll [InstCombine] allow sin/cos transforms with 'reassoc' 2018-02-15 15:07:12 +00:00
fdiv-sin-cos.ll [InstCombine] allow sin/cos transforms with 'reassoc' 2018-02-15 15:07:12 +00:00
fdiv.ll [PatternMatch] define m_FNeg using m_FSub 2018-04-05 15:36:55 +00:00
ffs-1.ll [InstCombine] narrow truncated add/sub/mul with constant 2017-08-04 22:30:34 +00:00
float-shrink-compare.ll [InstCombine] regenerate test checks; NFC 2017-11-16 16:59:49 +00:00
fls.ll [InstCombine] narrow truncated add/sub/mul with constant 2017-08-04 22:30:34 +00:00
fma.ll [PatternMatch] define m_FNeg using m_FSub 2018-04-05 15:36:55 +00:00
fmul-sqrt.ll [InstCombine] add nnan requirement for sqrt(x) * sqrt(y) -> sqrt(x*y) 2018-03-18 14:32:54 +00:00
fmul.ll [PatternMatch] define m_FNeg using m_FSub 2018-04-05 15:36:55 +00:00
fold-bin-operand.ll
fold-calls.ll
fold-fops-into-selects.ll
fold-phi-load-metadata.ll Don't passively concatenate MDNodes 2016-08-16 18:48:34 +00:00
fold-phi.ll
fold-sqrt-sqrtf.ll
fold-vector-select.ll
fold-vector-zero.ll
fp-ret-bitcast.ll
fpcast.ll [InstCombine] don't change the size of a select if it would mismatch its condition operands' sizes 2018-05-31 00:16:58 +00:00
fpextend.ll [InstCombine] Add constant vector support to getMinimumFPType for visitFPTrunc. 2018-03-05 18:04:12 +00:00
fpextend_x86.ll
fprintf-1.ll
fputs-1.ll
fputs-opt-size.ll
fsub.ll [InstCombine] don't negate constant expression with fsub (PR37605) 2018-05-30 23:55:12 +00:00
fwrite-1.ll
gc.relocate.ll
gep-addrspace.ll [InstCombine] fix crash due to ignored addrspacecast 2018-05-14 22:05:01 +00:00
gep-combine-loop-invariant.ll [InstCombine] Properly change GEP type when reassociating loop invariant GEP chains 2018-04-05 18:51:45 +00:00
gep-custom-dl.ll Adding a width of the GEP index to the Data Layout. 2018-02-14 06:58:08 +00:00
gep-sext.ll
gep-vector.ll [InstCombine] peek through bitcasted vector/array pointer GEP operand 2018-04-18 00:36:40 +00:00
gepgep.ll
gepphigep.ll
getelementptr-folding.ll
getelementptr.ll Fix some misc. -enable-var-scope violations 2017-11-13 01:47:52 +00:00
hoist_instr.ll
icmp-add.ll [InstCombine] Remove a FIXME from a test that was fixed in r314025. 2017-09-22 21:47:20 +00:00
icmp-bc-vec.ll [InstCombine] Fold compare of int constant against a splatted vector of ints 2018-04-03 17:26:20 +00:00
icmp-custom-dl.ll Adding a width of the GEP index to the Data Layout. 2018-02-14 06:58:08 +00:00
icmp-div-constant.ll fix FileCheck variables for test added with r280677 2016-09-05 23:49:32 +00:00
icmp-logical.ll Simplify more cases of logical ops of masked icmps. 2018-03-13 21:13:18 +00:00
icmp-mul-zext.ll [InstCombine] Avoid iteration/mutation conflict 2018-06-15 16:52:40 +00:00
icmp-range.ll
icmp-shl-nsw.ll [InstCombine] icmp Pred (shl nsw X, C1), C0 --> icmp Pred X, C0 >> C1 2017-01-19 16:12:10 +00:00
icmp-shl-nuw.ll [InstCombine] Fold nuw left-shifts in `ugt`/`ule` comparisons. 2016-11-01 19:19:29 +00:00
icmp-shr-lt-gt.ll [InstCombine] improve folds for icmp gt/lt (shr X, C1), C2 2017-10-05 21:11:49 +00:00
icmp-shr.ll revert r314984: revert r314698 - [InstCombine] remove one-use restriction for icmp (shr exact X, C1), C2 --> icmp X, (C2<<C1) 2017-10-15 15:39:15 +00:00
icmp-vec.ll [InstCombine] add tests for shuffled cmps; NFC 2018-06-21 18:07:38 +00:00
icmp-xor-signbit.ll [InstCombine] reverse bitcast + bitwise-logic canonicalization (PR33138) 2017-06-22 15:46:54 +00:00
icmp.ll [InstCombine] choose 1 form of abs and nabs as canonical 2018-05-20 14:23:23 +00:00
idioms.ll
indexed-gep-compares.ll [InstCombine] Make sure that LHS and RHS have the same type in 2017-01-31 14:04:15 +00:00
inline-intrinsic-assert.ll
insert-const-shuf.ll [InstCombine] Fix for PR29124: reduce insertelements to shufflevector 2016-09-23 09:14:08 +00:00
insert-extract-shuffle.ll [InstCombine] Fix extractelement use before def 2017-06-05 09:18:10 +00:00
insert-val-extract-elem.ll
int_sideeffect.ll Add an @llvm.sideeffect intrinsic 2017-11-08 21:59:51 +00:00
intptr1.ll Renable r314928 2017-10-10 05:07:54 +00:00
intptr2.ll Renable r314928 2017-10-10 05:07:54 +00:00
intptr3.ll Renable r314928 2017-10-10 05:07:54 +00:00
intptr4.ll Renable r314928 2017-10-10 05:07:54 +00:00
intptr5.ll Renable r314928 2017-10-10 05:07:54 +00:00
intptr6.ll Renable r314928 2017-10-10 05:07:54 +00:00
intptr7.ll Renable r314928 2017-10-10 05:07:54 +00:00
intrinsics.ll Move tests associated with transforms moved in r321467 2017-12-30 03:13:00 +00:00
invariant.group.ll Constant fold launder of null and undef 2018-05-18 23:52:57 +00:00
invariant.ll Revert "Revert "Invariant start/end intrinsics overloaded for address space"" 2016-08-13 23:31:24 +00:00
invert-variable-mask-in-masked-merge-scalar.ll [InstCombine] Canonicalize variable mask in masked merge 2018-04-28 15:45:07 +00:00
invert-variable-mask-in-masked-merge-vector.ll [InstCombine] Canonicalize variable mask in masked merge 2018-04-28 15:45:07 +00:00
invoke.ll
isascii-1.ll
isdigit-1.ll
known_align.ll
lifetime-asan.ll Hardware-assisted AddressSanitizer (llvm part). 2017-12-09 00:21:41 +00:00
lifetime.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
load-bitcast-select.ll [InstCombine] PR35354: Convert store(bitcast, load bitcast (select (Cond, &V1, &V2)) --> store (, load (select(Cond, load &V1, load &V2))) 2017-12-08 15:32:10 +00:00
load-bitcast32.ll
load-bitcast64.ll
load-cmp.ll opt: Rename -default-data-layout flag to -data-layout and make it always override the layout. 2017-02-17 17:36:52 +00:00
load-combine-metadata-2.ll
load-combine-metadata-3.ll
load-combine-metadata-4.ll
load-combine-metadata.ll [Verifier] Add verification for TBAA metadata 2016-12-11 20:07:15 +00:00
load-select.ll
load.ll Don't combine stores to a swifterror pointer operand to a different type 2017-01-31 17:53:49 +00:00
load3.ll
load_combine_aa.ll
loadstore-alignment.ll Fix known zero bits for addrspacecast. 2016-11-21 15:42:31 +00:00
loadstore-metadata.ll [Verifier] Add verification for TBAA metadata 2016-12-11 20:07:15 +00:00
log-pow-nofastmath.ll
log-pow.ll
logical-select.ll [InstCombine] add vector test with undef elts; NFC 2018-04-22 15:59:14 +00:00
lshr-phi.ll
lshr.ll [InstCombine] narrow lshr with constant 2017-08-04 15:42:47 +00:00
malloc-free-delete.ll [Analysis] Support aligned new/delete functions. 2018-04-04 19:01:51 +00:00
masked-merge-add.ll Revert rL333106 / D46814: [InstCombine] Fold unfolded masked merge pattern with variable mask! 2018-05-31 06:00:36 +00:00
masked-merge-and-of-ors.ll Revert rL333106 / D46814: [InstCombine] Fold unfolded masked merge pattern with variable mask! 2018-05-31 06:00:36 +00:00
masked-merge-or.ll Revert rL333106 / D46814: [InstCombine] Fold unfolded masked merge pattern with variable mask! 2018-05-31 06:00:36 +00:00
masked-merge-xor.ll Revert rL333106 / D46814: [InstCombine] Fold unfolded masked merge pattern with variable mask! 2018-05-31 06:00:36 +00:00
masked_intrinsics.ll Support arbitrary address space pointers in masked gather/scatter intrinsics. 2017-05-03 12:28:54 +00:00
max-of-nots.ll [InstCombine] choose 1 form of abs and nabs as canonical 2018-05-20 14:23:23 +00:00
maxnum.ll [InstCombine] add folds for minnum(-a, -b) --> -maxnum(a, b) 2018-05-10 20:03:13 +00:00
mem-gep-zidx.ll
mem-par-metadata-memcpy.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
memchr.ll SimplifyLibCalls: Optimize wcslen 2017-05-19 22:37:09 +00:00
memcmp-1.ll [InstCombine] auto-generate better checks; NFC 2017-04-09 15:44:59 +00:00
memcmp-2.ll
memcmp-constant-fold.ll [LibCallSimplifier] try harder to fold memcmp with constant arguments (2nd try) 2017-08-21 19:13:14 +00:00
memcpy-1.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
memcpy-2.ll [InstCombine] regenerate test checks; NFC 2017-08-10 15:07:37 +00:00
memcpy-addrspace.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
memcpy-from-global.ll [InstCombine] Simplify MemTransferInst's source and dest alignments separately 2018-02-12 23:06:55 +00:00
memcpy-to-load.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
memcpy.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
memcpy_chk-1.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
memcpy_chk-2.ll
memmove-1.ll
memmove-2.ll
memmove.ll [InstCombine] Simplify MemTransferInst's source and dest alignments separately 2018-02-12 23:06:55 +00:00
memmove_chk-1.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
memmove_chk-2.ll
memset-1.ll [InstCombine] add potential calloc tests and regenerate checks; NFC 2018-04-06 16:06:08 +00:00
memset-2.ll
memset.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
memset2.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
memset_chk-1.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
memset_chk-2.ll
merge-icmp.ll
min-positive.ll [PatternMatch] allow undef elements when matching a vector zero 2018-04-22 17:07:44 +00:00
minmax-fold.ll [InstCombine] narrow select to match condition operands' size 2018-05-31 19:55:27 +00:00
minmax-fp.ll [ValueTracking] ignore FP signed-zero when detecting a casted-to-integer fmin/fmax pattern 2017-12-26 15:09:19 +00:00
minnum.ll [InstCombine] add folds for minnum(-a, -b) --> -maxnum(a, b) 2018-05-10 20:03:13 +00:00
misc-2002.ll
mul-masked-bits.ll
mul.ll [InstCombine] put tests of mul with neg operand(s) together; NFC 2018-02-13 23:02:12 +00:00
multi-size-address-space-pointer.ll
multi-use-or.ll
multiple-uses-load-bitcast-select.ll [InstCombine] Fix PR35618: Instcombine hangs on single minmax load bitcast. 2017-12-12 20:28:46 +00:00
musttail-thunk.ll [Debugify] Add debug intrinsics before terminating musttail calls 2018-06-04 03:33:01 +00:00
narrow-switch.ll opt: Rename -default-data-layout flag to -data-layout and make it always override the layout. 2017-02-17 17:36:52 +00:00
narrow.ll [InstCombine] fix operand-complexity-based canonicalization (PR28296) 2017-02-03 21:43:34 +00:00
no-negzero.ll
no_cgscc_assert.ll
non-integral-pointers.ll Fix invalid ptrtoint in InstCombine 2017-10-22 20:28:17 +00:00
nonnull-attribute.ll
not.ll [InstCombine] fix icmp with not op and constant to work with splat vector constant 2017-06-02 16:29:41 +00:00
nothrow.ll
nsw.ll
obfuscated_splat.ll
objsize-64.ll
objsize-address-space.ll
objsize-noverify.ll
objsize.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
odr-linkage.ll
onehot_merge.ll [InstCombine] Fold (!iszero(A & K1) & !iszero(A & K2)) -> (A & (K1 | K2)) == (K1 | K2) if K1 and K2 are a 1-bit mask 2017-06-16 05:10:37 +00:00
opaque.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
or-fcmp.ll [InstSimplify, InstCombine] add/update tests with FP +0.0 vector with undef; NFC 2018-03-25 17:48:20 +00:00
or-shifted-masks.ll Inserting several lit tests to reflect current behaviour 2017-12-14 12:00:04 +00:00
or-xor.ll [PatternMatch] Stabilize the matching order of commutative matchers 2018-04-27 21:23:20 +00:00
or.ll [NFC][InstCombine] Regenerate two tests that are affected by folding masked merge 2018-04-20 10:49:19 +00:00
osx-names.ll
out-of-bounds-indexes.ll Reintroduce r320049, r320014 and r319894. 2017-12-13 11:21:18 +00:00
overflow-mul.ll
overflow.ll
phi-load-metadata-2.ll
phi-load-metadata-3.ll
phi-load-metadata.ll
phi-merge-gep.ll
phi-preserve-ir-flags.ll
phi-select-constant.ll Fix some misc. -enable-var-scope violations 2017-11-13 01:47:52 +00:00
phi-timeout.ll Remove unneeded -debug argument from new test 2018-02-03 17:33:50 +00:00
phi.ll
pow-1.ll [SimplifyLibCalls] propagate FMF when folding pow(x, -1.0) call 2017-12-10 17:25:54 +00:00
pow-2.ll
pow-3.ll
pow-4.ll [InstCombine] auto-generate full checks; NFC 2018-03-01 15:13:42 +00:00
pow-exp-nofastmath.ll
pow-exp.ll
pow-sqrt.ll [LibCallSimplifier] allow splat vectors for pow(x, 0.5) -> sqrt() transforms 2017-11-19 16:42:27 +00:00
pr2645-0.ll
pr2996.ll
pr12251.ll
pr12338.ll
pr17827.ll [InstCombine] Teach the code that pulls logical operators through constant shifts to handle vector splats too. 2017-08-05 20:00:42 +00:00
pr19420.ll [InstCombine] auto-generate better test checks; NFC 2017-02-03 20:56:38 +00:00
pr20079.ll
pr20678.ll
pr21199.ll
pr21210.ll
pr21651.ll
pr21891.ll
pr23751.ll
pr23809.ll
pr24354.ll
pr24605.ll
pr25342.ll [InstCombine] Resubmit the combine of A->B->A BitCast and fix for pr27996 2016-10-25 20:43:42 +00:00
pr25745.ll
pr26992.ll
pr26993.ll
pr27236.ll [InstCombine] Canonicalize clamp of float types to minmax in fast mode. 2017-08-04 12:22:17 +00:00
pr27332.ll
pr27703.ll [InstCombine] Resubmit the combine of A->B->A BitCast and fix for pr27996 2016-10-25 20:43:42 +00:00
pr27996.ll [InstCombine] Resubmit the combine of A->B->A BitCast and fix for pr27996 2016-10-25 20:43:42 +00:00
pr28143.ll
pr28725.ll Reintroduce r320049, r320014 and r319894. 2017-12-13 11:21:18 +00:00
pr30929.ll [LibcallsShrinkWrap] This pass doesn't preserve the CFG. 2016-11-08 19:18:20 +00:00
pr31990_wrong_memcpy.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
pr32686.ll Regenerate test. NFCI. 2017-04-19 12:06:40 +00:00
pr33453.ll [InstCombine] Make FPMathOperator working with ConstantExpression(s). 2017-06-17 00:07:22 +00:00
pr33689_same_bitwidth.ll Add original reproducer for r307754 / PR33689 2017-07-13 07:38:53 +00:00
pr34349.ll [InstCombine] Call hasNoSignedWrap instead of hasNoUnsignedWrap to get the NSW flag when handling Add in SimplifyDemandedUseBits. 2017-08-28 18:44:28 +00:00
pr34627.ll [ConstantFold] Return the correct type when folding a GEP with vector indices. 2017-09-15 20:53:05 +00:00
pr35515.ll [InstCombine] Fix SimplifyDemandedUseBits SHL handling (PR35515) 2017-12-09 23:42:56 +00:00
pr36362.ll [InstCombine] Don't fold select(C, Z, binop(select(C, X, Y), W)) -> select(C, Z, binop(Y, W)) if the binop is rem or div. 2018-02-14 18:08:33 +00:00
prefetch-load.ll Change the default attributes for llvm.prefetch to inaccessiblemem_or_argmemonly 2017-03-25 20:20:23 +00:00
preserve-sminmax.ll
preserved-analyses.ll [PM] Fix instcombine's analysis preservation in the new pass manager to 2017-01-14 23:25:22 +00:00
prevent-cmp-merge.ll
printf-1.ll Fix some misc. -enable-var-scope violations 2017-11-13 01:47:52 +00:00
printf-2.ll
printf-3.ll
ptr-int-cast.ll
puts-1.ll
range-check.ll
readnone-maythrow.ll [InstCombine] Don't DSE across readnone functions that may throw 2017-01-17 05:45:09 +00:00
realloc.ll [SimplifyLibcalls] Realloc(null, N) -> Malloc(N) 2018-04-18 14:21:31 +00:00
rem.ll [InstCombine] fold urem with sext bool divisor 2018-06-26 16:30:00 +00:00
rotate.ll [InstCombine] Add tests for cases where we don't recognize type promoted rotate idioms. 2018-05-11 00:46:09 +00:00
round.ll
sdiv-1.ll
sdiv-2.ll
sdiv-guard.ll [InstCombine] Fix div handling 2018-06-04 02:52:36 +00:00
select-2.ll
select-bitext-bitwise-ops.ll [InstCombine] narrow select to match condition operands' size 2018-05-31 19:55:27 +00:00
select-bitext.ll Revert commit rL323951 2018-02-01 13:05:25 +00:00
select-cmp-br.ll [InstCombine] Fold branches with irrelevant conditions to a constant. 2017-08-23 09:14:37 +00:00
select-cmp-cttz-ctlz.ll [PatternMatch] Remove 64-bit or less restriction from m_SpecificInt 2017-06-27 15:39:40 +00:00
select-cmpxchg.ll [InstCombine] Simplify selects that test cmpxchg instructions 2017-10-31 12:34:02 +00:00
select-crash-noverify.ll
select-crash.ll [InstCombine, NewGVN] remove FP undef from tests 2018-03-08 14:57:08 +00:00
select-extractelement.ll [InstCombine] remove extract-of-select vector transform (2nd try) 2017-09-25 20:30:53 +00:00
select-gep.ll [InstCombine] Make foldSelectOpOp able to handle two-operand getelementptr 2018-01-19 10:05:15 +00:00
select-icmp-and.ll [InstCombine] refine select-of-constants to bitwise ops 2018-05-03 21:58:44 +00:00
select-implied.ll [ValueTracking] Fix the identity case (LHS => RHS) when the LHS is false. 2017-07-07 13:55:55 +00:00
select-load-call.ll
select-obo-peo-ops.ll [InstCombine] narrow select to match condition operands' size 2018-05-31 19:55:27 +00:00
select-of-bittest.ll [PatternMatch] allow undef elements when matching a vector zero 2018-04-22 17:07:44 +00:00
select-select.ll
select-with-bitwise-ops.ll [InstCombine] move tests for select with bit-test of condition; NFC 2018-04-24 21:06:06 +00:00
select.ll [InstCombine] move tests for select with bit-test of condition; NFC 2018-04-24 21:06:06 +00:00
select_arithmetic.ll [InstCombine] auto-generate complete checks; NFC 2018-02-28 16:53:45 +00:00
select_meta.ll [InstCombine] choose 1 form of abs and nabs as canonical 2018-05-20 14:23:23 +00:00
set-lowbits-mask-canonicalize.ll [InstSimplify] add nuw %x, -1 -> -1 fold. 2018-06-08 15:44:47 +00:00
set.ll [InstCombine] Support vector splats in transformZExtICmp 2017-08-29 18:58:13 +00:00
setcc-strength-reduce.ll
sext.ll [InstCombine] fix auto-generated FileCheck-captured variable refs 2017-05-10 14:40:04 +00:00
shift-add.ll [InstCombine] Folding of shifts by the sum of positive values 2016-11-01 15:40:30 +00:00
shift-shift.ll
shift-sra.ll [InstCombine] sink sext after ashr 2017-08-15 18:25:52 +00:00
shift.ll [InstSimplify] move tests for shifts; NFC 2018-04-21 16:58:00 +00:00
should-change-type.ll [InstCombine] Allow common type conversions to i8/i16/i32 2018-02-03 16:51:03 +00:00
shuffle_select.ll [InstCombine] adjust shuffle tests; NFC 2018-06-28 21:14:02 +00:00
shufflevec-bitcast.ll InstCombine: fix extraction when performing vector/array punning 2017-02-17 07:36:03 +00:00
shufflevec-constant.ll
sign-test-and-or.ll
signed-comparison.ll
signext.ll [InstCombine] fix datalayout in test file 2018-01-24 21:36:45 +00:00
simplify-demanded-bits-pointer.ll
simplify-libcalls.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
sincospi.ll
sink-into-catchswitch.ll
sink-zext.ll [InstCombine] Add a test for r290733 2017-01-04 02:21:37 +00:00
sink_instruction.ll [InstCombine] Allow sinking from unique predecessor with multiple edges 2016-08-22 18:21:56 +00:00
sitofp.ll [InstCombine] auto-generate better checks; NFC 2017-03-21 14:04:44 +00:00
smax-icmp.ll [InstCombine] add folds for icmp (smax X, Y), X 2016-12-19 16:28:53 +00:00
smin-icmp.ll [InstCombine] add folds for icmp (smin X, Y), X 2016-12-15 19:13:37 +00:00
snprintf.ll [InstCombine] snprintf optimizations 2018-05-11 17:50:49 +00:00
sprintf-1.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
sprintf-void.ll [Analysis] Validate the return type of s(n)printf like libcalls 2018-05-11 16:53:56 +00:00
sqrt-nofast.ll
sqrt.ll
srem-simplify-bug.ll
srem1.ll
stack-overalign.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
stacksave-debuginfo.ll [InstCombine] Skip dbg.value(s) when looking at stack{save,restore}. 2018-06-08 20:42:36 +00:00
stacksaverestore.ll
statepoint.ll
store-load-unaliased-gep.ll [PM][InstCombine] fixing omission of AliasAnalysis in new-pass-manager's version of InstCombine 2017-12-14 10:36:31 +00:00
store.ll [InstComineLoadStoreAlloca] Optimize stores to GEP off null base 2017-12-12 14:12:33 +00:00
stpcpy-1.ll
stpcpy-2.ll
stpcpy_chk-1.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
stpcpy_chk-2.ll
str-int-2.ll [SimplifyLibcalls] Atoi, strtol replacements 2018-04-25 18:58:53 +00:00
str-int.ll [SimplifyLibcalls] Atoi, strtol replacements 2018-04-25 18:58:53 +00:00
strcat-1.ll
strcat-2.ll
strcat-3.ll
strchr-1.ll
strchr-2.ll
strcmp-1.ll
strcmp-2.ll
strcpy-1.ll
strcpy-2.ll
strcpy_chk-1.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
strcpy_chk-2.ll
strcpy_chk-64.ll Merge isKnownNonNull into isKnownNonZero 2017-09-09 18:23:11 +00:00
strcspn-1.ll
strcspn-2.ll
strlen-1.ll Merge isKnownNonNull into isKnownNonZero 2017-09-09 18:23:11 +00:00
strlen-2.ll
strncat-1.ll
strncat-2.ll
strncat-3.ll
strncmp-1.ll
strncmp-2.ll
strncmp-wrong-datalayout.ll [TargetLibraryInfo] Discard library functions with incorrectly sized integers 2017-12-18 10:31:58 +00:00
strncpy-1.ll
strncpy-2.ll
strncpy_chk-1.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
strncpy_chk-2.ll
strpbrk-1.ll
strpbrk-2.ll
strrchr-1.ll
strrchr-2.ll
strspn-1.ll
strstr-1.ll
strstr-2.ll
strto-1.ll
struct-assign-tbaa-new.ll [Transforms] Propagate new-format TBAA tags on simplification of memory-transfer intrinsics 2018-02-19 12:10:20 +00:00
struct-assign-tbaa.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
sub-xor.ll Replace hardcoded intrinsic list with speculatable attribute. 2017-05-03 02:26:10 +00:00
sub.ll [InstCombine] move/add tests for sub with bool op; NFC 2018-05-22 18:50:06 +00:00
switch-constant-expr.ll [InstCombine] Fix constexpr issue in select combining 2016-10-12 10:20:15 +00:00
switch-truncate-crash.ll
tan-nofastmath.ll
tan.ll
tbaa-store-to-load.ll [Verifier] Add verification for TBAA metadata 2016-12-11 20:07:15 +00:00
toascii-1.ll
token.ll
trunc-binop-ext.ll [InstCombine] include 'sub' in the list of narrow-able binops 2017-11-16 14:40:51 +00:00
trunc.ll [InstCombine] Consider more cases where SimplifyDemandedUseBits does not convert AShr to LShr. 2017-08-25 11:07:54 +00:00
type_pun.ll Update tests for the patch. 2017-04-14 17:47:07 +00:00
udiv-simplify.ll [InstCombine] Teach SimplifyDemandedBits that udiv doesn't demand low dividend bits that are zero in the divisor 2018-05-09 22:27:34 +00:00
udiv_select_to_select_shift.ll [InstCombine] Add constant vector support for X udiv C, where C >= signbit 2018-02-09 10:43:59 +00:00
udivrem-change-width.ll [InstCombine] fix and enhance udiv/urem narrowing 2017-08-24 22:54:01 +00:00
umax-icmp.ll [InstCombine] add folds for icmp (umin|umax X, Y), X 2016-12-19 17:32:37 +00:00
umin-icmp.ll [InstCombine] add folds for icmp (umin|umax X, Y), X 2016-12-19 17:32:37 +00:00
unfold-masked-merge-with-const-mask-scalar.ll [InstCombine] Unfold masked merge with constant mask 2018-04-30 17:59:33 +00:00
unfold-masked-merge-with-const-mask-vector.ll [InstCombine] Unfold masked merge with constant mask 2018-04-30 17:59:33 +00:00
unlocked-stdio-mingw.ll [Analysis] Only use _unlocked stdio functions on linux 2018-05-17 08:16:08 +00:00
unlocked-stdio.ll [InstCombine] [NFC] Added more tests for unlocked IO transformation 2018-05-23 03:01:45 +00:00
unordered-fcmp-select.ll
unpack-fca.ll [InstCombine] Don't unpack arrays that are too large (part 2). 2016-10-07 21:53:09 +00:00
unrecognized_three-way-comparison.ll [InstCombine] refine select-of-constants to bitwise ops 2018-05-03 21:58:44 +00:00
unsigned_saturated_sub.ll [InstCombine] add unsigned saturation subtraction canonicalizations 2018-02-05 17:53:29 +00:00
urem-simplify-bug.ll [InstSimplify] Optimize away urems in the presence of range metadata 2017-01-06 21:23:51 +00:00
vararg.ll Add address space mangling to lifetime intrinsics 2017-04-10 20:18:21 +00:00
vec_demanded_elts.ll [InstCombine] remove stale comments for tests; NFC 2018-03-01 16:28:32 +00:00
vec_extract_2elts.ll
vec_extract_elt.ll
vec_extract_var_elt.ll
vec_insertelt.ll
vec_narrow.ll
vec_phi_extract.ll [InstCombine] Support ~(c-X) --> X+(-c-1) and ~(X-c) --> (-c-1)-X for splat vectors. 2017-08-06 06:28:41 +00:00
vec_sext.ll [InstCombine] use constant pattern matchers with icmp+sext 2018-06-21 17:51:44 +00:00
vec_shuffle.ll [InstCombine] refine UB-handling in shuffle-binop transform 2018-06-04 22:26:45 +00:00
vector-casts.ll [InstCombine] Remove check for sext of vector icmp from shouldOptimizeCast 2017-08-22 23:40:15 +00:00
vector-mul.ll [InstCombine] Regenerate vector mul tests. 2018-02-08 17:54:24 +00:00
vector-type.ll
vector-udiv.ll [InstCombine] Add constant vector support for X udiv C, where C >= signbit 2018-02-09 10:43:59 +00:00
vector-urem.ll [PatternMatch] enhance m_One() to ignore undef elements in vectors 2018-02-17 16:00:42 +00:00
vector-xor.ll [PatternMatch] define m_Not using m_Xor and cst_pred_ty 2018-03-06 18:19:42 +00:00
vector_gep1.ll [InstCombine] auto-generate checks; NFC 2018-03-23 15:39:03 +00:00
vector_gep2.ll [InstCombine] auto-generate checks; NFC 2018-03-23 15:39:03 +00:00
vector_insertelt_shuffle.ll [instsimplify] consistently handle undef and out of bound indices for insertelement and extractelement 2017-12-30 05:54:22 +00:00
volatile_store.ll
wcslen-1.ll TargetLibraryInfo: Stop guessing wchar_t size 2017-09-26 02:36:57 +00:00
wcslen-2.ll TargetLibraryInfo: Stop guessing wchar_t size 2017-09-26 02:36:57 +00:00
wcslen-3.ll Merge isKnownNonNull into isKnownNonZero 2017-09-09 18:23:11 +00:00
wcslen-4.ll TargetLibraryInfo: Stop guessing wchar_t size 2017-09-26 02:36:57 +00:00
weak-symbols.ll
win-math.ll SimplifyLibCalls: Replace more unary libcalls with intrinsics 2017-01-23 23:55:08 +00:00
xor-icmps.ll [InstCombine] add folds for xor-of-icmp signbit tests (PR36682) 2018-03-22 14:08:16 +00:00
xor-undef.ll
xor.ll Eliminate a bitwise 'not' op of 'not' min/max by inverting the min/max. 2018-04-11 10:29:37 +00:00
xor2.ll [InstCombine] Cleanup some duplicated one use checks 2017-06-19 16:23:49 +00:00
zero-point-zero-add.ll SimplifyLibCalls: Replace fabs libcalls with intrinsics 2017-01-17 00:10:40 +00:00
zeroext-and-reduce.ll
zext-bool-add-sub.ll [InstCombine] improve sub with bool folds 2018-06-03 16:35:26 +00:00
zext-fold.ll
zext-or-icmp.ll [ValueTracking] Out of range shifts might be undef 2017-03-14 10:13:17 +00:00
zext-phi.ll [InstCombine] treat i1 as a special type in shouldChangeType() 2017-02-03 23:13:11 +00:00
zext.ll [InstCombine] revert r300977 and r301021 2017-04-21 20:29:17 +00:00

README.txt

This directory contains test cases for the instcombine transformation.  The
dated tests are actual bug tests, whereas the named tests are used to test
for features that the this pass should be capable of performing.