1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/test/Transforms/InstCombine
Krishna Kariya 05b090ffb1 [InstCombine] Fold IntToPtr/PtrToInt to bitcast
The inttoptr/ptrtoint roundtrip optimization is not always correct.
We are working towards removing this optimization and adding support
to specific cases where this optimization works. This patch is the
first one on this line.

Consider the example:

    %i = ptrtoint i8* %X to i64
    %p = inttoptr i64 %i to i16*
    %cmp = icmp eq i8* %load, %p

In this specific case, the inttoptr/ptrtoint optimization is correct
as it only compares the pointer values. In this patch, we fold
inttoptr/ptrtoint to a bitcast (if src and dest types are different).

Differential Revision: https://reviews.llvm.org/D105088
2021-07-18 23:13:25 +02:00
..
AArch64 [AArch64][SVEIntrinsicOpts] Convect cntb/h/w/d to vscale intrinsic or constant. 2021-07-01 10:09:47 +08:00
AMDGPU
ARM [ARM] Fix arm.mve.pred.v2i range upper limit 2021-07-05 21:06:30 +01:00
Hexagon
NVPTX
PowerPC
RISCV
X86 [ValueTracking] look through bitcast of vector in computeKnownBits 2021-06-23 11:46:46 -04: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-BadLoadCombine2.ll
2004-09-20-BadLoadCombine.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
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
2007-03-25-BadShiftMask.ll
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
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-02-04-FPBitcast.ll
2009-02-11-NotInitialized.ll
2009-02-20-InstCombine-SROA.ll
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 Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
2010-11-01-lshr-mask.ll
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
2011-06-13-nsw-alloca.ll
2011-09-03-Trampoline.ll
2011-10-07-AlignPromotion.ll
2012-3-15-or-xor-constant.ll
2012-6-7-vselect-bitcast.ll
2012-01-11-OpaqueBitcastCrash.ll
2012-02-13-FCmp.ll
2012-02-28-ICmp.ll
2012-03-10-InstCombine.ll
2012-04-24-vselect.ll
2012-04-30-SRem.ll
2012-05-28-select-hang.ll
2012-06-06-LoadOfPHIs.ll
2012-07-25-LoadPart.ll
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
abs_abs.ll
abs-1.ll
abs-intrinsic.ll
add2.ll
add3.ll
add4.ll
add-shl-sdiv-to-srem.ll
add-sitofp.ll
add.ll
addnegneg.ll
AddOverFlow.ll
addrspacecast.ll
addsub-constant-folding.ll
adjust-for-minmax.ll
aggregate-reconstruction.ll
alias-recursion.ll
align-2d-gep.ll
align-addr.ll
align-attr.ll
align-external.ll
all-bits-shift.ll
alloca-big.ll
alloca-cast-debuginfo.ll
alloca-in-non-alloca-as.ll [InstCombine] Gracefully handle an alloca outside the alloca-AS 2021-06-29 09:38:13 -05:00
alloca.ll
allocsize-32.ll
allocsize.ll
and2.ll
and-compare.ll
and-fcmp.ll
and-narrow.ll [InstSimplify] Add more poison folding optimizations 2021-06-23 20:25:24 +09:00
and-or-and.ll
and-or-icmp-min-max.ll
and-or-icmp-nullptr.ll
and-or-icmps.ll
and-or-not.ll
and-or.ll
and-xor-merge.ll
and-xor-or.ll
and.ll
annotation-intrinsic.ll
annotations.ll
apint-add.ll
apint-and-compare.ll
apint-and-or-and.ll
apint-and-xor-merge.ll
apint-and.ll
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
apint-mul2.ll
apint-not.ll
apint-or.ll
apint-rem1.ll
apint-rem2.ll
apint-select.ll
apint-shift-simplify.ll
apint-shift.ll
apint-shl-trunc.ll
apint-sub.ll
apint-xor1.ll
apint-xor2.ll
ashr-lshr.ll
ashr-or-mul-abs.ll
assoc-cast-assoc.ll
assume2.ll
assume_inevitable.ll
assume-align.ll [NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg' 2021-07-09 09:47:03 +02:00
assume-icmp-null-select.ll [InstCombine] Fold icmp (select c,const,arg), null if icmp arg, null can be simplified 2021-06-21 17:39:05 +09:00
assume-inseltpoison.ll
assume-loop-align.ll
assume-redundant.ll
assume.ll
atomic.ll [InstCombine] Use poison constant to represent the result of unreachable instrs 2021-06-21 09:58:44 +09:00
atomicrmw.ll
badmalloc.ll
bcmp-1.ll
bcopy.ll
binop-cast.ll
bit-checks.ll
bitcast-bigendian.ll
bitcast-bitcast.ll
bitcast-function.ll
bitcast-inseltpoison.ll
bitcast-phi-uselistorder.ll
bitcast-sext-vector.ll
bitcast-store.ll
bitcast-vec-canon-inseltpoison.ll
bitcast-vec-canon.ll
bitcast.ll Reapply [InstCombine] Extract bitcast -> gep transform 2021-06-21 22:03:15 +02:00
bitreverse-hang.ll
bitreverse-known-bits.ll
bitreverse.ll
bittest.ll
branch.ll
broadcast-inseltpoison.ll
broadcast.ll
bswap-fold.ll
bswap-inseltpoison.ll
bswap-known-bits.ll
bswap.ll
builtin-dynamic-object-size.ll
builtin-object-size-custom-dl.ll
builtin-object-size-offset.ll
builtin-object-size-ptr.ll [InstCombine] Use poison constant to represent the result of unreachable instrs 2021-06-21 09:58:44 +09:00
byval.ll
cabs-array.ll
cabs-discrete.ll
call2.ll
call_nonnull_arg.ll
call-callconv-mismatch.ll
call-callconv.ll
call-cast-attrs.ll
call-cast-target-inalloca.ll
call-cast-target-preallocated.ll
call-cast-target.ll
call-guard.ll [tests] Stablize tests for possible change in deref semantics 2021-07-14 13:05:43 -07:00
call-intrinsics.ll
call-returned.ll
call.ll
calloc-mismatch.ll [Analysis] improve function signature checking for calloc 2021-06-27 08:19:00 -04:00
callsite_nonnull_args_through_casts.ll
canonicalize_branch.ll
canonicalize-ashr-shl-to-masking.ll
canonicalize-clamp-like-pattern-between-negative-and-positive-thresholds.ll
canonicalize-clamp-like-pattern-between-zero-and-positive-threshold.ll
canonicalize-clamp-with-select-of-constant-threshold-pattern.ll
canonicalize-constant-low-bit-mask-and-icmp-eq-to-icmp-ule.ll
canonicalize-constant-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll
canonicalize-constant-low-bit-mask-and-icmp-sge-to-icmp-sle.ll
canonicalize-constant-low-bit-mask-and-icmp-sgt-to-icmp-sgt.ll
canonicalize-constant-low-bit-mask-and-icmp-sle-to-icmp-sle.ll
canonicalize-constant-low-bit-mask-and-icmp-slt-to-icmp-sgt.ll
canonicalize-constant-low-bit-mask-and-icmp-uge-to-icmp-ule.ll
canonicalize-constant-low-bit-mask-and-icmp-ugt-to-icmp-ugt.ll
canonicalize-constant-low-bit-mask-and-icmp-ule-to-icmp-ule.ll
canonicalize-constant-low-bit-mask-and-icmp-ult-to-icmp-ugt.ll
canonicalize-lack-of-signed-truncation-check.ll
canonicalize-low-bit-mask-and-icmp-eq-to-icmp-ule.ll
canonicalize-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll
canonicalize-low-bit-mask-v2-and-icmp-eq-to-icmp-ule.ll
canonicalize-low-bit-mask-v2-and-icmp-ne-to-icmp-ugt.ll
canonicalize-low-bit-mask-v3-and-icmp-eq-to-icmp-ule.ll
canonicalize-low-bit-mask-v3-and-icmp-ne-to-icmp-ugt.ll
canonicalize-low-bit-mask-v4-and-icmp-eq-to-icmp-ule.ll
canonicalize-low-bit-mask-v4-and-icmp-ne-to-icmp-ugt.ll
canonicalize-lshr-shl-to-masking.ll
canonicalize-selects-icmp-condition-bittest.ll
canonicalize-shl-lshr-to-masking.ll
canonicalize-signed-truncation-check.ll
canonicalize-vector-extract.ll [Verifier] Fail on overrunning and invalid indices for {insert,extract} vector intrinsics 2021-06-23 10:33:22 +00:00
canonicalize-vector-insert.ll [Verifier] Fail on overrunning and invalid indices for {insert,extract} vector intrinsics 2021-06-23 10:33:22 +00:00
cast_phi.ll
cast_ptr.ll
cast-call-combine-prof.ll
cast-call-combine.ll
cast-callee-deopt-bundles.ll
cast-int-fcmp-eq-0.ll
cast-int-icmp-eq-0.ll
cast-mul-select.ll
cast-select.ll
cast-set-preserve-signed-dbg-val.ll
cast-set.ll
cast-unsigned-icmp-eqcmp-0.ll
cast.ll
catchswitch-phi.ll [InstCombine] Don't combine PHI before catchswitch 2021-07-02 12:10:24 -07:00
ceil.ll
clamp-to-minmax.ll
cmp-intrinsic.ll
cmp-x-vs-neg-x.ll
commutative-intrinsics.ll
compare-3way.ll
compare-alloca.ll
compare-signs.ll
compare-udiv.ll
compare-unescaped.ll
conditional-variable-length-signext-after-high-bit-extract.ll
consecutive-fences.ll
constant-expr-datalayout.ll
constant-fold-address-space-pointer.ll
constant-fold-alias.ll
constant-fold-compare.ll
constant-fold-gep.ll
constant-fold-iteration.ll
constant-fold-libfunc.ll
constant-fold-math.ll
constant-fold-shifts.ll
convergent.ll
copysign.ll
cos-1.ll
cos-2.ll
cos-sin-intrinsic.ll
CPP_min_max.ll
crash.ll
ctlz-cttz-bitreverse.ll
ctpop-bswap-bitreverse.ll
ctpop-cttz.ll
ctpop.ll
cttz-abs.ll
cttz-negative.ll
cttz.ll
dce-iterate.ll
deadcode.ll
debug-line.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
debuginfo_add.ll
debuginfo-dce2.ll
debuginfo-dce.ll
debuginfo-scalable-typesize.ll
debuginfo-sink.ll Partial Reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands" 2021-06-24 09:46:38 +01:00
debuginfo-skip.ll
debuginfo-variables.ll
debuginfo.ll
default-alignment.ll
demand_shrink_nsw.ll
demorgan-sink-not-into-xor.ll
demorgan.ll
deref-alloc-fns.ll
disable-builtin.ll
disable-simplify-libcalls.ll
distribute.ll
div-by-0-guard-before-smul_ov-not.ll
div-by-0-guard-before-smul_ov.ll
div-by-0-guard-before-umul_ov-not.ll
div-by-0-guard-before-umul_ov.ll
div-shift-crash.ll
div-shift.ll
div.ll [Constants] Extend support for scalable-vector splats 2021-06-07 14:37:56 +01:00
do-not-clone-dbg-declare.ll
dont-distribute-phi.ll
double-float-shrink-1.ll
double-float-shrink-2.ll
early_constfold_changes_IR.ll
early_dce_clobbers_callgraph.ll
element-atomic-memintrins.ll
enforce-known-alignment.ll
eq-of-parts.ll
erase-dbg-values-at-dead-alloc-site.ll
err-rep-cold.ll
exact.ll
exp2-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
exp2-2.ll
ExtractCast.ll
extractelement-inseltpoison.ll
extractelement.ll
extractinsert-tbaa.ll
extractvalue.ll
fabs-copysign.ll
fabs-libcall.ll
fabs.ll
fadd-fsub-factor.ll
fadd.ll [InstCombine] fold reassociative FP add into start value of fadd reduction 2021-07-18 06:26:20 -04:00
fast-math.ll
fcmp-select.ll
fcmp-special.ll
fcmp.ll
fdiv-cos-sin.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
fdiv-sin-cos.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
fdiv.ll Update @llvm.powi to handle different int sizes for the exponent 2021-06-17 09:38:28 +02:00
ffs-1.ll
float-shrink-compare.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
fls.ll
fma.ll
fmul-exp2.ll
fmul-exp.ll
fmul-inseltpoison.ll
fmul-pow.ll [InstCombine] Missed optimization for pow(x, y) * pow(x, z) with fast-math 2021-06-07 08:08:05 -04:00
fmul-sqrt.ll
fmul.ll [Constants] Extend support for scalable-vector splats 2021-06-07 14:37:56 +01:00
fneg.ll [InstCombine] fix nsz (fast-math) propagation from fneg-of-select 2021-06-08 17:04:30 -04:00
fold-bin-operand.ll
fold-calls.ll
fold-fops-into-selects.ll
fold-inc-of-add-of-not-x-and-y-to-sub-x-from-y.ll
fold-phi-load-metadata.ll
fold-phi.ll
fold-sqrt-sqrtf.ll
fold-sub-of-not-to-inc-of-add.ll
fold-vector-select.ll
fold-vector-zero-inseltpoison.ll
fold-vector-zero.ll
fortify-folding.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
fp-ret-bitcast.ll
fpcast.ll
fpextend_x86.ll
fpextend.ll
fprintf-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
fptrunc.ll
fputs-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
fputs-opt-size.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
freeze-phi.ll
freeze.ll [InstCombine] Add optimization to prevent poison from being propagated. 2021-07-11 12:40:43 +09:00
fsh.ll
fsub.ll
funnel.ll
fwrite-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
gc.relocate.ll
gep-addrspace.ll
gep-alias.ll
gep-can-replace-gep-idx-with-zero-typesize.ll
gep-combine-loop-invariant.ll
gep-custom-dl.ll
gep-inbounds-null.ll
gep-sext.ll
gep-vector-indices.ll [InstSimplify] Add constant fold for extractelement + splat for scalable vectors 2021-06-10 12:41:40 +01:00
gep-vector.ll
gepgep.ll
gepphigep.ll
get-lowbitmask-upto-and-including-bit.ll
getelementptr-folding.ll
getelementptr.ll [InstSimplify] Add more poison folding optimizations 2021-06-23 20:25:24 +09:00
high-bit-signmask-with-trunc.ll
high-bit-signmask.ll
hoist_instr.ll
hoist-negation-out-of-bias-calculation-with-constant.ll
hoist-negation-out-of-bias-calculation.ll
hoist-not-from-ashr-operand.ll
hoist-xor-by-constant-from-xor-by-value.ll
icmp_sdiv_with_and_without_range.ll
icmp-add.ll [InstCombine] reorder icmp with offset folds for better results 2021-07-14 12:12:05 -04:00
icmp-bc-vec-inseltpoison.ll
icmp-bc-vec.ll
icmp-bitcast-glob.ll
icmp-constant-phi.ll
icmp-custom-dl.ll
icmp-div-constant.ll
icmp-dom.ll
icmp-logical.ll
icmp-mul-zext.ll
icmp-mul.ll
icmp-or.ll
icmp-range.ll
icmp-shl-nsw.ll
icmp-shl-nuw.ll
icmp-shr-lt-gt.ll
icmp-shr.ll
icmp-sub.ll
icmp-uge-of-add-of-shl-one-by-bits-to-allones-and-val-to-icmp-eq-of-lshr-val-by-bits-and-0.ll
icmp-uge-of-not-of-shl-allones-by-bits-and-val-to-icmp-eq-of-lshr-val-by-bits-and-0.ll
icmp-ugt-of-shl-1-by-bits-and-val-to-icmp-eq-of-lshr-val-by-bits-and-0.ll
icmp-ule-of-shl-1-by-bits-and-val-to-icmp-ne-of-lshr-val-by-bits-and-0.ll
icmp-ult-of-add-of-shl-one-by-bits-to-allones-and-val-to-icmp-ne-of-lshr-val-by-bits-and-0.ll
icmp-ult-of-not-of-shl-allones-by-bits-and-val-to-icmp-ne-of-lshr-val-by-bits-and-0.ll
icmp-vec-inseltpoison.ll
icmp-vec.ll [Constants] Extend support for scalable-vector splats 2021-06-07 14:37:56 +01:00
icmp-xor-signbit.ll
icmp.ll [InstCombine] reduce signbit test of logic ops to cmp with zero 2021-07-12 09:01:26 -04:00
idioms.ll
indexed-gep-compares.ll [InstCombine] don't try to fold a constant expression that can trap (PR50906) 2021-06-28 17:00:21 -04:00
infinite-loop-postdom.ll
inline-intrinsic-assert.ll
inselt-binop-inseltpoison.ll
inselt-binop.ll
insert-const-shuf.ll
insert-extract-shuffle-inseltpoison.ll
insert-extract-shuffle.ll
insert-val-extract-elem.ll
insertelement-bitcast.ll
int_sideeffect.ll
intersect-accessgroup.ll
intptr1.ll
intptr2.ll
intptr3.ll
intptr4.ll
intptr5.ll
intptr6.ll
intptr7.ll
intptr8.ll
IntPtrCast.ll
intrinsic-select.ll [InstCombine] fold ctlz/cttz-of-select with 1 or more constant arms 2021-06-21 11:04:12 -04:00
intrinsics.ll Update @llvm.powi to handle different int sizes for the exponent 2021-06-17 09:38:28 +02:00
invariant.group.ll
invariant.ll
invert-variable-mask-in-masked-merge-scalar.ll
invert-variable-mask-in-masked-merge-vector.ll
invoke.ll
isascii-1.ll
isdigit-1.ll
ispow2.ll
JavaCompare.ll
known_align.ll
known-bits.ll
known-never-nan.ll
known-non-zero.ll
known-signbit-shift.ll
LandingPadClauses.ll
lifetime-no-null-opt.ll
lifetime-sanitizer.ll
lifetime.ll
load3.ll
load_combine_aa.ll
load-bitcast32.ll
load-bitcast64.ll
load-bitcast-select.ll
load-bitcast-vec.ll
load-cmp.ll [InstCombine] Fix miscompile on GEP+load to icmp fold (PR45210) 2021-06-17 19:46:17 +09:00
load-combine-metadata-2.ll
load-combine-metadata-3.ll
load-combine-metadata-4.ll
load-combine-metadata-dominance.ll
load-combine-metadata.ll
load-no-aliasing.ll
load-select.ll
load-store-forward.ll
load.ll [InstCombine] Use poison constant to represent the result of unreachable instrs 2021-06-21 09:58:44 +09:00
loadstore-alignment.ll
loadstore-metadata.ll
log-pow-nofastmath.ll
log-pow.ll
logical-select-inseltpoison.ll
logical-select.ll
lower-dbg-declare.ll
lshr-and-negC-icmpeq-zero.ll
lshr-and-signbit-icmpeq-zero.ll
lshr-phi.ll
lshr-trunc-sext-to-ashr-sext.ll [InstCombine] add/adjust test comments; NFC 2021-06-04 09:04:53 -04:00
lshr.ll
malloc_free_delete_nvptx.ll
malloc-free-delete-dbginvar.ll
malloc-free-delete.ll [InstCombine] Look through invariant group intrinsics when removing malloc 2021-07-15 09:02:40 -07:00
masked_intrinsics_keep_metadata.ll
masked_intrinsics-inseltpoison.ll [tests] Stablize tests for possible change in deref semantics 2021-07-14 13:05:43 -07:00
masked_intrinsics.ll [tests] Stablize tests for possible change in deref semantics 2021-07-14 13:05:43 -07:00
masked-merge-add.ll
masked-merge-and-of-ors.ll
masked-merge-or.ll
masked-merge-xor.ll
max_known_bits.ll
max-of-nots.ll
maximum.ll [InstCombine] convert FP min/max with negated op to fabs 2021-06-23 10:41:39 -04:00
maxnum.ll [InstCombine] convert FP min/max with negated op to fabs 2021-06-23 10:41:39 -04:00
mem-deref-bytes-addrspaces.ll
mem-deref-bytes.ll
mem-gep-zidx.ll
mem-par-metadata-memcpy.ll
memccpy.ll
memchr.ll [SimplifyLibCalls] Fix memchr opt to use CreateLogicalAnd 2021-06-26 05:59:35 +09:00
memcmp-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
memcmp-2.ll
memcmp-constant-fold.ll
memcpy_chk-1.ll
memcpy_chk-2.ll
memcpy-1.ll
memcpy-2.ll
memcpy-addrspace.ll
memcpy-from-global.ll
memcpy-to-load.ll
memcpy.ll
memmove_chk-1.ll
memmove_chk-2.ll
memmove-1.ll
memmove-2.ll
memmove.ll
mempcpy.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
memrchr.ll
memset2.ll
memset_chk-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
memset_chk-2.ll
memset-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
memset-2.ll
memset.ll
merge-icmp.ll
merging-multiple-stores-into-successor.ll
min-positive.ll
minimum.ll [InstCombine] convert FP min/max with negated op to fabs 2021-06-23 10:41:39 -04:00
minmax-demandbits.ll
minmax-fold.ll
minmax-fp.ll
minmax-intrinsics.ll [instcombine] Precommit tests for umin(a,b) ne/eq 0 fold 2021-06-30 10:29:19 -07:00
minmax-of-minmax.ll
minnum.ll [InstCombine] convert FP min/max with negated op to fabs 2021-06-23 10:41:39 -04:00
misc-2002.ll
mul-inseltpoison.ll
mul-masked-bits.ll
mul.ll [InstCombine] Fold (sext bool X) * (sext bool X) to zext (and X, X) 2021-06-18 16:28:06 +07:00
multi-size-address-space-pointer.ll
multi-use-load-casts.ll
multi-use-or.ll
multiple-uses-load-bitcast-select.ll
musttail-thunk.ll
narrow-math.ll
narrow-switch.ll
narrow.ll
no_cgscc_assert.ll
no_sink_instruction.ll
no-negzero.ll
no-unwind-inline-asm.ll
noalias-scope-decl.ll
non-integral-pointers.ll
nonnull-attribute.ll
nonnull-select.ll
not-add.ll
not.ll [InstCombine] add tests for logical and/or with not ops; NFC 2021-06-14 12:54:35 -04:00
nothrow.ll
nsw-inseltpoison.ll
nsw.ll
obfuscated_splat-inseltpoison.ll
obfuscated_splat.ll
object-size-opaque.ll
objsize-64.ll
objsize-address-space.ll
objsize-noverify.ll
objsize.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
odr-linkage.ll
omit-urem-of-power-of-two-or-zero-when-comparing-with-zero.ll
onehot_merge.ll
opaque-ptr.ll [InstCombine] Make varargs cast transform compatible with opaque ptrs 2021-06-24 21:57:05 +02:00
opaque.ll
operand-complexity.ll
or-concat.ll
or-fcmp.ll
or-shifted-masks.ll
or-xor.ll
or.ll
oss_fuzz_32759.ll
osx-names.ll
out-of-bounds-indexes.ll
overflow_to_sat.ll
overflow-mul.ll
overflow.ll
OverlappingInsertvalues.ll
partally-redundant-left-shift-input-masking-after-truncation-variant-a.ll
partally-redundant-left-shift-input-masking-after-truncation-variant-b.ll
partally-redundant-left-shift-input-masking-after-truncation-variant-c.ll
partally-redundant-left-shift-input-masking-after-truncation-variant-d.ll
partally-redundant-left-shift-input-masking-after-truncation-variant-e.ll
partally-redundant-left-shift-input-masking-variant-a.ll
partally-redundant-left-shift-input-masking-variant-b.ll
partally-redundant-left-shift-input-masking-variant-c.ll
partally-redundant-left-shift-input-masking-variant-d.ll
partally-redundant-left-shift-input-masking-variant-e.ll
phi-aware-aggregate-reconstruction.ll
phi-cse.ll
phi-equal-incoming-pointers.ll
phi-known-bits-operand-order.ll
phi-load-metadata-2.ll
phi-load-metadata-3.ll
phi-load-metadata-dominance.ll
phi-load-metadata.ll
phi-merge-gep.ll
phi-of-extractvalues.ll
phi-of-insertvalues.ll
phi-pointercasts.ll
phi-preserve-ir-flags.ll
phi-select-constant.ll
phi-shifts.ll
phi-timeout.ll
phi.ll
pow_fp_int16.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
pow_fp_int.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
pow-0.ll
pow-1.ll
pow-2.ll
pow-3.ll
pow-4.ll Update @llvm.powi to handle different int sizes for the exponent 2021-06-17 09:38:28 +02:00
pow-cbrt.ll
pow-exp-nofastmath.ll
pow-exp.ll
pow-sqrt.ll
pr2645-0-inseltpoison.ll
pr2645-0.ll
pr2996.ll
pr12251.ll
pr12338.ll
pr14365.ll
pr17827.ll
pr19420.ll
pr20079.ll
pr20678.ll
pr21199.ll
pr21210.ll
pr21651.ll
pr21891.ll
pr23751.ll
pr23809.ll
pr24354.ll
pr24605.ll
pr25342.ll
pr25745.ll
pr26992.ll
pr26993.ll
pr27236.ll
pr27332.ll
pr27343.ll
pr27703.ll
pr27996.ll
pr28143.ll
pr28725.ll
pr30929.ll
pr31990_wrong_memcpy.ll
pr32686.ll
pr33453.ll
pr33689_same_bitwidth.ll
pr34349.ll
pr34627.ll
pr35515.ll
pr36362.ll
pr38677.ll
pr38897.ll
pr38915.ll
pr38984-inseltpoison.ll
pr38984.ll
pr39177.ll
pr39908.ll
pr41164.ll
pr43081.ll
pr43376-getFlippedStrictnessPredicateAndConstant-assert.ll
pr43893.ll
pr44242.ll
pr44245.ll [InstCombine] Use poison constant to represent the result of unreachable instrs 2021-06-21 09:58:44 +09:00
pr44541.ll
pr44552.ll
pr44835.ll
pr46680.ll
pr49688.ll
PR30597.ll
PR37526.ll
prefetch-load.ll
preserve-sminmax.ll
preserved-analyses.ll
prevent-cmp-merge.ll
printf-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
printf-2.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
printf-3.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
ptr-int-cast.ll
ptr-int-ptr-icmp.ll [InstCombine] Fold IntToPtr/PtrToInt to bitcast 2021-07-18 23:13:25 +02:00
pull-binop-through-shift.ll
pull-conditional-binop-through-shift.ll
puts-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
range-check.ll
README.txt
readnone-maythrow.ll
realloc.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
reassociate-nuw.ll
recurrence.ll
reduction-add-sext-zext-i1.ll [Instcombine]Transform reduction+(sext/zext(<n x i1>) to <n x im>) to [-]zext/trunc(ctpop(bitcast <n x i1> to in)) to im. 2021-07-08 07:56:41 -07:00
reduction-shufflevector.ll [INSTCOMBINE] Transform reduction(shuffle V, poison, unique_mask) to reduction(V). 2021-06-29 10:02:38 -07:00
redundant-left-shift-input-masking-after-truncation-variant-a.ll
redundant-left-shift-input-masking-after-truncation-variant-b.ll
redundant-left-shift-input-masking-after-truncation-variant-c.ll
redundant-left-shift-input-masking-after-truncation-variant-d.ll
redundant-left-shift-input-masking-after-truncation-variant-e.ll
redundant-left-shift-input-masking-after-truncation-variant-f.ll
redundant-left-shift-input-masking-pr49778.ll
redundant-left-shift-input-masking-variant-a.ll
redundant-left-shift-input-masking-variant-b.ll
redundant-left-shift-input-masking-variant-c.ll
redundant-left-shift-input-masking-variant-d.ll
redundant-left-shift-input-masking-variant-e.ll
redundant-left-shift-input-masking-variant-f.ll
redundant-right-shift-input-masking.ll
rem.ll
result-of-add-of-negative-is-non-zero-and-no-underflow.ll
result-of-add-of-negative-or-zero-is-non-zero-and-no-underflow.ll
result-of-usub-is-non-zero-and-no-overflow.ll
reuse-constant-from-select-in-icmp.ll
rotate.ll
sadd_sat.ll
sadd-with-overflow.ll
saddo.ll [instcombine] Fold overflow check using overflow intrinsic to comparison 2021-07-01 09:41:55 -07:00
salvage-dbg-declare.ll
saturating-add-sub.ll
scalable-bitcast-inseltpoison.ll
scalable-bitcast.ll
scalable-cast-of-alloc.ll
scalable-const-fp-splat.ll
scalable-select.ll
scalable-trunc.ll
scalarization-inseltpoison.ll
scalarization.ll
sdiv-1.ll
sdiv-2.ll
sdiv-canonicalize.ll
sdiv-exact-by-negative-power-of-two.ll
sdiv-exact-by-power-of-two.ll
sdiv-guard.ll
sdiv-of-non-negative-by-negative-power-of-two.ll
select_arithmetic.ll
select_meta.ll
select-2.ll
select-and-or.ll [InstCombine] avoid infinite loops with select folds of constant expressions 2021-06-20 09:46:25 -04:00
select-binop-cmp.ll [InstSimplify] Add more poison folding optimizations 2021-06-23 20:25:24 +09:00
select-bitext-bitwise-ops.ll
select-bitext.ll
select-cmp-br.ll
select-cmp-cttz-ctlz.ll
select-cmpxchg.ll
select-crash-noverify.ll
select-crash.ll
select-ctlz-to-cttz.ll
select-extractelement-inseltpoison.ll
select-extractelement.ll
select-gep.ll [InstCombine] Add select(cond,gep(gep(x,y),z),gep(x,y)) tests from PR51069 2021-07-15 19:26:24 +01:00
select-icmp-and.ll
select-imm-canon.ll
select-load-call.ll
select-min-max.ll [InstCombine] hoist min/max intrinsics above select with constant op 2021-06-27 10:02:23 -04:00
select-obo-peo-ops.ll
select-of-bittest.ll
select-pr39595.ll
select-safe-bool-transforms.ll
select-safe-impliedcond-transforms.ll
select-safe-transforms.ll
select-select.ll
select-with-bitwise-ops.ll
select.ll [tests] Stablize tests for possible change in deref semantics 2021-07-14 13:05:43 -07:00
set-lowbits-mask-canonicalize.ll
set.ll
setcc-strength-reduce.ll
sext-of-trunc-nsw.ll
sext.ll
shift-add-inseltpoison.ll
shift-add.ll
shift-amount-reassociation-in-bittest-with-truncation-lshr.ll
shift-amount-reassociation-in-bittest-with-truncation-shl.ll
shift-amount-reassociation-in-bittest.ll
shift-amount-reassociation-with-truncation-ashr.ll
shift-amount-reassociation-with-truncation-lshr.ll
shift-amount-reassociation-with-truncation-shl.ll
shift-amount-reassociation.ll
shift-by-signext.ll
shift-direction-in-bit-test.ll
shift-logic.ll
shift-shift.ll
shift-sra.ll
shift.ll
shl-and-negC-icmpeq-zero.ll
shl-and-signbit-icmpeq-zero.ll
shl-demand.ll
shl-factor.ll
shl-sub.ll
shl-unsigned-cmp-const.ll
should-change-type.ll
shuffle_select-inseltpoison.ll
shuffle_select.ll
shuffle-cast-dist.ll
shuffle-cast-inseltpoison.ll
shuffle-cast.ll
shuffle-select-narrow-inseltpoison.ll
shuffle-select-narrow.ll
shufflevec-bitcast-inseltpoison.ll
shufflevec-bitcast.ll
shufflevec-constant-inseltpoison.ll
shufflevec-constant.ll
shufflevector-div-rem-inseltpoison.ll
shufflevector-div-rem.ll
sign-bit-test-via-right-shifting-all-other-bits.ll
sign-test-and-or.ll
signbit-lshr-and-icmpeq-zero.ll
signbit-shl-and-icmpeq-zero.ll
signed-comparison.ll
signed-mul-lack-of-overflow-check-via-mul-sdiv.ll
signed-mul-overflow-check-via-mul-sdiv.ll
signed-truncation-check.ll
signext.ll
signmask-of-sext-vs-of-shl-of-zext.ll
simple_phi_condition.ll
simplify-demanded-bits-pointer.ll
simplify-libcalls-erased.ll
simplify-libcalls.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
sincospi.ll
sink_instruction.ll
sink_to_unreachable.ll
sink-alloca.ll
sink-into-catchswitch.ll
sink-not-into-another-hand-of-and.ll
sink-not-into-another-hand-of-or.ll
sitofp.ll
smax-icmp.ll
smin-icmp.ll
smulo.ll [instcombine] Fold overflow check using overflow intrinsic to comparison 2021-07-01 09:41:55 -07:00
snprintf.ll
sprintf-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
sprintf-void.ll
sqrt-nofast.ll
sqrt.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
srem1.ll
srem-canonicalize.ll
srem-simplify-bug.ll
srem-via-sdiv-mul-sub.ll
ssub-with-overflow.ll
ssubo.ll [instcombine] Fold overflow check using overflow intrinsic to comparison 2021-07-01 09:41:55 -07:00
stack-overalign.ll
stacksave-debuginfo.ll
stacksaverestore.ll
statepoint-cleanup.ll
statepoint-iter.ll
statepoint.ll
stdio-custom-dl.ll
store-load-unaliased-gep.ll
store.ll [InstCombine] Use poison constant to represent the result of unreachable instrs 2021-06-21 09:58:44 +09:00
storemerge-dbg.ll
stpcpy_chk-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
stpcpy_chk-2.ll
stpcpy-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
stpcpy-2.ll
str-int-2.ll
str-int.ll
strcat-1.ll
strcat-2.ll
strcat-3.ll
strchr-1.ll [SimplifyLibCalls] Fix memchr opt to use CreateLogicalAnd 2021-06-26 05:59:35 +09:00
strchr-2.ll
strcmp-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
strcmp-2.ll
strcmp-memcmp.ll [tests] Stablize tests for possible change in deref semantics 2021-07-14 13:05:43 -07:00
strcpy_chk-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
strcpy_chk-2.ll
strcpy_chk-64.ll
strcpy-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
strcpy-2.ll
strcpy-nonzero-as.ll
strcspn-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
strcspn-2.ll
strict-sub-underflow-check-to-comparison-of-sub-operands.ll
strlen_chk.ll
strlen-1.ll
strlen-2.ll
strncat-1.ll
strncat-2.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
strncat-3.ll
strncmp-1.ll
strncmp-2.ll
strncmp-wrong-datalayout.ll
strncpy_chk-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
strncpy_chk-2.ll
strncpy-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
strncpy-2.ll
strncpy-3.ll
strndup.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
strpbrk-1.ll
strpbrk-2.ll
strrchr-1.ll
strrchr-2.ll
strspn-1.ll
strstr-1.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
strstr-2.ll
strto-1.ll
struct-assign-tbaa-new.ll
struct-assign-tbaa.ll
sub-and-or-neg-xor.ll
sub-ashr-and-to-icmp-select.ll
sub-ashr-or-to-icmp-select.ll [InstCombine] Fold lshr/ashr(or(neg(x),x),bw-1) --> zext/sext(icmp_ne(x,0)) (PR50816) 2021-07-13 14:44:54 +01:00
sub-from-sub.ll
sub-gep.ll
sub-lshr-or-to-icmp-select.ll [InstCombine] Fold lshr/ashr(or(neg(x),x),bw-1) --> zext/sext(icmp_ne(x,0)) (PR50816) 2021-07-13 14:44:54 +01:00
sub-minmax.ll
sub-not.ll
sub-of-negatible-inseltpoison.ll
sub-of-negatible.ll
sub-or-and-xor.ll
sub-xor-or-neg-and.ll
sub-xor.ll
sub.ll [InstCombine] Support negation of scalable-vector splats 2021-06-07 15:14:00 +01:00
subtract-from-one-hand-of-select.ll
subtract-of-one-hand-of-select.ll
swifterror-argument-bitcast-fold.ll
switch-constant-expr.ll
switch-truncate-crash.ll
tan-nofastmath.ll
tan.ll
tbaa-store-to-load.ll
tmp-alloca-bypass.ll
toascii-1.ll
token.ll
trunc-binop-ext.ll
trunc-extractelement-inseltpoison.ll
trunc-extractelement.ll
trunc-inseltpoison.ll
trunc-load.ll
trunc-shift-trunc.ll
trunc.ll
type_pun-inseltpoison.ll
type_pun.ll
uadd-with-overflow.ll
uaddo2.ll [test] Add coverage for existing overflow rule with uadd.with.overflow 2021-06-25 10:45:00 -07:00
uaddo.ll
udiv_select_to_select_shift.ll
udiv-pow2-vscale-inseltpoison.ll
udiv-pow2-vscale.ll
udiv-simplify.ll [InstSimplify] icmp poison, X -> poison 2021-06-20 15:39:07 +09:00
udivrem-change-width.ll
umax-icmp.ll
umin-icmp.ll
umul-sign-check.ll
umulo.ll [instcombine] Fold overflow check using umulo to comparison 2021-06-25 10:25:45 -07:00
unavailable-debug.ll
unfold-masked-merge-with-const-mask-scalar.ll
unfold-masked-merge-with-const-mask-vector.ll
unordered-fcmp-select.ll
unpack-fca.ll
unreachable-dbg-info-modified.ll
unrecognized_three-way-comparison.ll
unsigned_saturated_sub.ll
unsigned-add-lack-of-overflow-check-via-add.ll
unsigned-add-lack-of-overflow-check-via-xor.ll
unsigned-add-lack-of-overflow-check.ll
unsigned-add-overflow-check-via-add.ll
unsigned-add-overflow-check-via-xor.ll
unsigned-add-overflow-check.ll
unsigned-mul-lack-of-overflow-check-via-mul-udiv.ll
unsigned-mul-lack-of-overflow-check-via-udiv-of-allones.ll
unsigned-mul-overflow-check-via-mul-udiv.ll
unsigned-mul-overflow-check-via-udiv-of-allones.ll
unsigned-sub-lack-of-overflow-check.ll
unsigned-sub-overflow-check.ll
unused-nonnull.ll
unwind-inline-asm.ll
urem-simplify-bug.ll
urem-via-udiv-mul-sub.ll
usub-overflow-known-by-implied-cond.ll
usubo.ll [instcombine] Fold overflow check using overflow intrinsic to comparison 2021-07-01 09:41:55 -07:00
vararg.ll
variable-signext-of-variable-high-bit-extraction.ll
vec_demanded_elts-inseltpoison.ll
vec_demanded_elts.ll
vec_extract_2elts.ll
vec_extract_var_elt-inseltpoison.ll
vec_extract_var_elt.ll
vec_gep_scalar_arg-inseltpoison.ll
vec_gep_scalar_arg.ll
vec_phi_extract-inseltpoison.ll
vec_phi_extract.ll
vec_sext.ll
vec_shuffle-inseltpoison.ll
vec_shuffle.ll
vec_udiv_to_shift.ll
vec-binop-select-inseltpoison.ll
vec-binop-select.ll
vector_gep1-inseltpoison.ll
vector_gep1.ll
vector_gep2.ll
vector_insertelt_shuffle-inseltpoison.ll
vector_insertelt_shuffle.ll
vector-casts-inseltpoison.ll
vector-casts.ll
vector-concat-binop-inseltpoison.ll
vector-concat-binop.ll
vector-logical-reductions.ll
vector-mul.ll
vector-reductions.ll
vector-type.ll
vector-udiv.ll
vector-urem.ll
vector-xor.ll
volatile_load_cast.ll
volatile_store.ll Revert "Revert "Temporarily do not drop volatile stores before unreachable"" 2021-07-09 11:44:34 -04:00
vscale_alloca.ll
vscale_cmp.ll
vscale_extractelement-inseltpoison.ll [InstSimplify][test] move tests that don't require InstCombine; NFC 2021-06-24 13:13:34 -04:00
vscale_extractelement.ll [InstSimplify][test] move tests that don't require InstCombine; NFC 2021-06-24 13:13:34 -04:00
vscale_gep.ll
vscale_insertelement-inseltpoison.ll
vscale_insertelement.ll
wcslen-1.ll
wcslen-2.ll
wcslen-3.ll
wcslen-4.ll
weak-symbols.ll
widenable-conditions.ll
win-math.ll
with_overflow.ll
xor2.ll
xor-icmps.ll
xor-of-icmps-with-extra-uses.ll
xor-undef.ll
xor.ll
zero-point-zero-add.ll
zeroext-and-reduce.ll
zext-bool-add-sub.ll
zext-ctlz-trunc-to-ctlz-add.ll [InstCombine] Eliminate casts to optimize ctlz operation 2021-06-23 11:19:12 -04:00
zext-fold.ll
zext-or-icmp.ll
zext-phi.ll
zext.ll [InstCombine] Don't transform code if DoTransform is false 2021-06-18 18:01:34 -07:00

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.