llvm-6502/test/Transforms/InstCombine
Manman Ren 7a0575b9a8 InstCombine: fix a bug when combining (fcmp cc0 x, y) && (fcmp cc1 x, y).
uno && ueq was converted to ueq, it should be converted to uno.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158441 91177308-0d34-0410-b5e6-96231b3b80d8
2012-06-14 05:57:42 +00:00
..
2002-03-11-InstCombineHang.ll
2002-05-14-SubFailure.ll
2002-08-02-CastTest.ll
2002-12-05-MissedConstProp.ll
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 remove a use of llvm-dis 2010-11-30 02:04:15 +00:00
2003-09-09-VolatileLoadElim.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2003-10-29-CallSiteResolve.ll Update to new EH scheme. 2011-09-01 01:28:25 +00:00
2003-11-03-VarargsCallBug.ll
2004-01-13-InstCombineInvokePHI.ll Update to new EH scheme. 2011-09-01 01:28:25 +00:00
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-06-16-SetCCOrSetCCMiscompile.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 Enhance a bunch of transformations in instcombine to start generating 2011-02-10 05:36:31 +00:00
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-14-FcmpSelf.ll
2007-01-18-VectorInfLoop.ll
2007-01-27-AndICmp.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 Enhance a bunch of transformations in instcombine to start generating 2011-02-10 05:36:31 +00:00
2007-04-08-SingleEltVectorCrash.ll
2007-05-10-icmp-or.ll
2007-05-14-Crash.ll
2007-05-18-CastFoldBug.ll Stop accepting and ignoring attributes in function types. Attributes are applied 2011-06-17 17:37:13 +00:00
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 rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
2007-10-12-Crash.ll
2007-10-28-stacksave.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2007-10-31-RangeCrash.ll
2007-10-31-StringCrash.ll
2007-11-07-OpaqueAlignCrash.ll Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
2007-11-15-CompareMiscomp.ll
2007-11-22-IcmpCrash.ll
2007-11-25-CompatibleAttributes.ll Stop accepting and ignoring attributes in function types. Attributes are applied 2011-06-17 17:37:13 +00:00
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 Revert "Disable InstCombine unsafe folding bitcasts of calls w/ varargs." 2012-02-03 00:00:50 +00:00
2008-01-06-CastCrash.ll
2008-01-06-VoidCast.ll
2008-01-13-AndCmpCmp.ll
2008-01-13-NoBitCastAttributes.ll manually upgrade a bunch of tests to modern syntax, and remove some that 2011-06-17 03:14:27 +00:00
2008-01-14-VarArgTrampoline.ll Split the init.trampoline intrinsic, which currently combines GCC's 2011-09-06 13:37:06 +00:00
2008-01-21-MismatchedCastAndCompare.ll
2008-01-21-MulTrunc.ll
2008-01-27-FloatSelect.ll
2008-01-29-AddICmp.ll
2008-02-13-MulURem.ll
2008-02-16-SDivOverflow2.ll
2008-02-16-SDivOverflow.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 Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2008-04-29-VolatileLoadDontMerge.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2008-04-29-VolatileLoadMerge.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2008-05-08-LiveStoreDelete.ll
2008-05-08-StrLenSink.ll
2008-05-09-SinkOfInvoke.ll Update to new EH scheme. 2011-09-01 01:28:25 +00:00
2008-05-17-InfLoop.ll
2008-05-18-FoldIntToPtr.ll
2008-05-22-IDivVector.ll
2008-05-22-NegValVector.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 Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2008-07-08-AndICmp.ll
2008-07-08-ShiftOneAndOne.ll
2008-07-08-SubAnd.ll
2008-07-08-VolatileLoadMerge.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2008-07-09-SubAndError.ll
2008-07-10-CastSextBool.ll
2008-07-10-ICmpBinOp.ll
2008-07-11-RemAnd.ll
2008-07-13-DivZero.ll
2008-07-16-fsub.ll
2008-07-16-sse2_storel_dq.ll
2008-08-05-And.ll
2008-08-17-ICmpXorSignbit.ll
2008-09-02-VectorCrash.ll
2008-09-29-FoldingOr.ll
2008-10-11-DivCompareFold.ll
2008-10-23-ConstFoldWithoutMask.ll
2008-11-01-SRemDemandedBits.ll
2008-11-08-FCmp.ll
2008-11-20-DivMulRem.ll My auto-simplifier noticed that ((X/Y)*Y)/Y occurs several times in SPEC 2011-01-28 16:51:11 +00:00
2008-11-27-IDivVector.ll
2008-11-27-MultiplyIntVec.ll
2008-11-27-UDivNegative.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-20-InstCombine-SROA.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
2009-02-21-LoadCST.ll
2009-02-25-CrashZeroSizeArray.ll
2009-03-18-vector-ashr-crash.ll
2009-03-20-AShrOverShift.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-11-01-lshr-mask.ll Reapply r155136 after fixing PR12599. 2012-04-23 17:39:52 +00:00
2010-11-21-SizeZeroTypeGEP.ll If a GEP index simply advances by multiples of a type of zero size, 2010-11-22 16:32:50 +00:00
2010-11-23-Distributed.ll Add a generic expansion transform: A op (B op' C) -> (A op B) op' (A op C) 2010-12-22 13:36:08 +00:00
2011-02-14-InfLoop.ll Fix 9216 - Endless loop in InstCombine pass. 2011-02-15 07:13:48 +00:00
2011-03-08-SRemMinusOneBadOpt.ll PR9346: Prevent SimplifyDemandedBits from incorrectly introducing 2011-03-09 01:28:35 +00:00
2011-05-02-VectorBoolean.ll Fix PR9579: when simplifying a compare to "true" or "false", and it was 2011-05-02 18:51:41 +00:00
2011-05-13-InBoundsGEP.ll Drop lli, revise test. 2011-05-17 02:38:59 +00:00
2011-05-28-swapmulsub.ll Reapply 132348 with fixes. rdar://problem/6501862 2011-06-01 16:42:47 +00:00
2011-06-13-nsw-alloca.ll Small fix in InstCombineCasts.cpp. Restored "alloca + bitcast" reducing for case when alloca's size is calculated within the "add/sub/... nsw". 2012-05-05 07:09:40 +00:00
2011-09-03-Trampoline.ll Forgot to add this trampoline testcase. 2011-09-07 09:21:38 +00:00
2011-10-07-AlignPromotion.ll Added a testcase for r141599, rdar://problem/10063881. 2011-10-11 01:32:10 +00:00
2012-3-15-or-xor-constant.ll In InstCombiner::visitOr, make sure we reverse the operand swap used for checking for or-of-xor operations after those checks; a later check expects that any constant will be in Op1. PR12234. 2012-03-16 00:52:42 +00:00
2012-6-7-vselect-bitcast.ll Fix a bug in FoldSelectOpOp. Bitcast ops may change the number of vector elements, which may disagree with the select condition type. 2012-06-07 20:28:57 +00:00
2012-01-11-OpaqueBitcastCrash.ll Don't try to create a GEP when the pointee type is unsized (such GEPs 2012-01-11 12:20:08 +00:00
2012-02-13-FCmp.ll Check against umin while converting fcmp into an icmp. 2012-02-13 23:05:18 +00:00
2012-02-28-ICmp.ll Testcase for r151691. 2012-02-29 01:53:13 +00:00
2012-03-10-InstCombine.ll Don't try to filecheck bitcode. 2012-03-10 18:07:46 +00:00
2012-04-23-Neon-Intrinsics.ll Add support for llvm.arm.neon.vmull* intrinsics to InstCombine. Fixes 2012-05-01 00:20:38 +00:00
2012-04-24-vselect.ll ConstantFoldSelectInstruction swapped the operands of the select. 2012-04-24 20:18:49 +00:00
2012-04-30-SRem.ll Just mark the sign bit as known zero, rather than any other irrelevant bits 2012-04-30 11:56:58 +00:00
2012-05-27-Negative-Shift-Crash.ll PR12967: Don't crash when trying to fold a shift that's larger than the type's size. 2012-05-27 22:03:32 +00:00
2012-05-28-select-hang.ll InstCombine: Fix infinite loop when encountering switch on trivial icmp. 2012-05-28 19:18:16 +00:00
2012-06-06-LoadOfPHIs.ll Adding a missing -S to the opt invocation. 2012-06-07 01:02:13 +00:00
add2.ll preserve NUW/NSW when transforming add x,x 2011-02-17 02:23:02 +00:00
add3.ll
add-shrink.ll
add-sitofp.ll
add.ll Also fold (A+B) == A -> B == 0 when the add is commuted. 2011-02-11 21:46:48 +00:00
addnegneg.ll
adjust-for-sminmax.ll
align-2d-gep.ll
align-addr.ll Make instcombine set explicit alignments on load or store 2010-08-03 18:20:32 +00:00
align-external.ll Fix a theoretical problem (not seen in the wild): if different instances of a 2011-11-29 18:26:38 +00:00
alloca.ll Teach InstCombine to nuke a common alloca pattern -- an alloca which has 2012-04-08 14:36:56 +00:00
and2.ll Fix an infinite loop where a transform in InstCombiner::visitAnd claims a construct is changed when it is not. (See included testcase.) 2011-09-19 21:58:15 +00:00
and-compare.ll
and-fcmp.ll InstCombine: fix a bug when combining (fcmp cc0 x, y) && (fcmp cc1 x, y). 2012-06-14 05:57:42 +00:00
and-not-or.ll
and-or-and.ll
and-or-not.ll Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
and-or.ll
and-xor-merge.ll
and-xor-or.ll Add instcombine patterns for the following transformations: 2012-04-26 23:29:14 +00:00
and.ll
apint-add1.ll
apint-add2.ll
apint-and1.ll
apint-and2.ll
apint-and-compare.ll
apint-and-or-and.ll
apint-and-xor-merge.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-or1.ll
apint-or2.ll
apint-rem1.ll
apint-rem2.ll
apint-select.ll
apint-shift-simplify.ll
apint-shift.ll Reapply r155136 after fixing PR12599. 2012-04-23 17:39:52 +00:00
apint-shl-trunc.ll Filecheck-ize this test so that it actually tests something reasonable. 2012-03-29 22:01:41 +00:00
apint-sub.ll
apint-xor1.ll
apint-xor2.ll
apint-zext1.ll
apint-zext2.ll
ashr-nop.ll
atomic.ll An additional atomic test; related to r137662. 2011-08-16 23:29:17 +00:00
badmalloc.ll
binop-cast.ll
bit-checks.ll Generalize instcombine's support for combining multiple bit checks into a single test. Patch by Dirk Steinke! 2010-09-08 22:16:17 +00:00
bit-tracking.ll
bitcast-sext-vector.ll
bitcast-store.ll Fix a case where instcombine was stripping metadata (and alignment) 2010-10-25 16:16:27 +00:00
bitcast-vec-canon.ll
bitcast-vec-uniform.ll Enhance constant folding of bitcast operations on vectors of floats. 2011-02-17 21:22:27 +00:00
bitcast-vector-fold.ll
bitcast.ll Implement Constant::isAllOnesValue(). Fix ConstantFolding to use the new api. 2011-08-24 20:18:38 +00:00
bitcount.ll Manually upgrade the test suite to specify the flag to cttz and ctlz. 2011-12-12 11:59:10 +00:00
bittest.ll
bswap-fold.ll make the asmparser reject function and type redefinitions. 'Merging' hasn't been 2011-06-17 07:06:44 +00:00
bswap.ll
call2.ll Remove support for using "foo" as symbols instead of %"foo". This is ancient 2011-06-17 06:36:20 +00:00
call-cast-target.ll
call-intrinsics.ll
call.ll Revert "Disable InstCombine unsafe folding bitcasts of calls w/ varargs." 2012-02-03 00:00:50 +00:00
canonicalize_branch.ll Add a routine to swap branch instruction operands, and update any 2011-10-17 01:11:57 +00:00
cast_ptr.ll
cast-mul-select.ll
cast-set.ll
cast.ll Fix a minor logic mistake transforming compares in instcombine. PR12514. 2012-05-11 01:32:59 +00:00
compare-signs.ll
constant-fold-compare.ll
constant-fold-gep.ll Make SelectionDAG::InferPtrAlignment use llvm::ComputeMaskedBits instead of duplicating the logic for globals. Make llvm::ComputeMaskedBits handle GlobalVariables slightly more aggressively, to match what InferPtrAlignment knew how to do. 2011-11-28 22:48:22 +00:00
CPP_min_max.ll
crash.ll Convert to the new EH model. 2011-11-08 00:23:01 +00:00
dce-iterate.ll
deadcode.ll Lifetime intrinsics on undef are dead. 2011-08-02 21:19:27 +00:00
debuginfo.ll revert my previous patches that introduced an additional parameter to the objectsize intrinsic. 2012-05-22 15:25:31 +00:00
devirt.ll Migrate this test from llvm/test/FrontendC++/ptr-to-method-devirt.cpp and 2011-08-16 01:17:17 +00:00
div.ll Carve out a place in instcombine to put transformations which work knowing that their 2011-05-22 18:18:41 +00:00
enforce-known-alignment.ll
exact.ll PR9998: ashr exact %x, 31 is not equivalent to sdiv exact %x, -2147483648. 2011-05-25 23:26:20 +00:00
ExtractCast.ll Instcombile optimization: extractelement(cast) -> cast(extractelement) 2011-03-31 22:57:29 +00:00
extractvalue.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
fcmp-select.ll
fcmp-special.ll
fcmp.ll float comparison to double 'zero' constant can just be a float 'zero.' 2011-09-30 18:45:50 +00:00
fdiv.ll Avoid turning a floating point division with a constant power of two into a denormal multiplication. 2011-03-30 17:02:54 +00:00
fold-bin-operand.ll FileCheck-ize and update test. 2011-03-18 01:10:31 +00:00
fold-calls.ll Don't try to constant fold libm functions with non-finite arguments. 2010-09-27 21:29:20 +00:00
fold-sqrt-sqrtf.ll Add support for sqrt, sqrtl, and sqrtf in TargetLibraryInfo. Disable 2011-11-29 23:57:10 +00:00
fold-vector-select.ll Fix 9173. 2011-02-11 19:37:55 +00:00
fold-vector-zero.ll
fp-ret-bitcast.ll
fpcast.ll
fpextend.ll
fsub.ll
gep-addrspace.ll This testcase passed even without the fix. Added the target info to make the 2011-04-06 11:18:29 +00:00
gepgep.ll
getelementptr.ll Add a small gep optimization I noticed was missing while reading some IL. 2011-07-31 04:43:41 +00:00
hoist_instr.ll
icmp.ll InstCombine: Turn (zext A) == (B & (1<<X)-1) into A == (trunc B), narrowing the compare. 2012-06-10 20:35:00 +00:00
idioms.ll
IntPtrCast.ll
intrinsics.ll Add an explicit test that we now fold cttz.i32(..., true) >> 5 -> 0. 2011-12-24 22:34:15 +00:00
invariant.ll
JavaCompare.ll
known_align.ll
LandingPadClauses.ll Add support for the Objective-C personality function to the instruction 2011-10-17 21:20:24 +00:00
lit.local.cfg Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
load3.ll fix PR7429, a crash turning a load from a string into a float. 2010-07-12 00:22:51 +00:00
load-cmp.ll
load-select.ll
load.ll merge two tests. 2010-07-12 00:19:47 +00:00
loadstore-alignment.ll
logical-select.ll
lshr-phi.ll
malloc-free-delete.ll Fix logical error when detecting lifetime intrinsics. 2011-08-03 00:43:35 +00:00
memcpy-to-load.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
memcpy.ll fix PR8267 - Instcombine shouldn't optimizer away volatile memcpy's. 2010-10-01 05:51:02 +00:00
memmove.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
memset2.ll Test case for r122215 when InstCombine optimizes memset 2010-12-20 01:06:23 +00:00
memset_chk.ll
memset.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
merge-icmp.ll InstCombine: Merge "(trunc x) == C1 & (and x, CA) == C2" into a single and+icmp. 2011-04-28 16:58:40 +00:00
mul-masked-bits.ll
mul.ll Factor out the multiply analysis code in ComputeMaskedBits and apply it to the 2012-03-18 23:28:48 +00:00
multi-use-or.ll
narrow.ll
neon-intrinsics.ll Teach instcombine to set the alignment arguments for NEON load/store intrinsics. 2010-10-22 21:41:48 +00:00
no-negzero.ll
not-fcmp.ll
not.ll manually upgrade a bunch of tests to modern syntax, and remove some that 2011-06-17 03:14:27 +00:00
nothrow.ll
nsw.ll This transform is not safe. Thanks to Eli for pointing that out! 2011-08-14 04:51:49 +00:00
objsize.ll revert my previous patches that introduced an additional parameter to the objectsize intrinsic. 2012-05-22 15:25:31 +00:00
odr-linkage.ll
or-fcmp.ll Just because we have determined that an (fcmp | fcmp) is true for A < B, 2011-01-21 19:39:42 +00:00
or-to-xor.ll
or-xor.ll InstCombine: Add a bunch of combines of the form x | (y ^ z). 2011-02-20 13:23:43 +00:00
or.ll More instcombine cleanup, towards improving debug line info. 2011-05-18 23:58:37 +00:00
overflow.ll Add a missing safety check to ProcessUGT_ADDCST_ADD. Fixes PR11438. 2011-11-28 23:32:19 +00:00
phi-merge-gep.ll
phi.ll Reapply r155682, making constant folding more consistent, with a fix to work 2012-04-27 17:50:22 +00:00
pr2645-0.ll
pr2645-1.ll
pr2996.ll
pr8547.ll Enhance a bunch of transformations in instcombine to start generating 2011-02-10 05:36:31 +00:00
pr12251.ll Always compute all the bits in ComputeMaskedBits. 2012-04-04 12:51:34 +00:00
pr12338.ll canonicalize: 2012-06-08 22:30:05 +00:00
preserve-sminmax.ll
ptr-int-cast.ll Stop emitting instructions with the name "tmp" they eat up memory and have to be uniqued, without any benefit. 2011-09-27 20:39:19 +00:00
README.txt
rem.ll InstCombine: Add a missing irem identity (X % X -> 0). 2010-11-17 19:11:46 +00:00
sdiv-1.ll
sdiv-2.ll
sdiv-shift.ll
select-2.ll
select-crash.ll PR10180: Fix a instcombine crash with FP vectors. 2011-06-23 20:40:23 +00:00
select-load-call.ll
select.ll Added InstCombine for "select cond, ~cond, x" type patterns 2011-12-15 00:56:45 +00:00
set.ll
setcc-strength-reduce.ll
sext.ll Manually upgrade the test suite to specify the flag to cttz and ctlz. 2011-12-12 11:59:10 +00:00
shift-sra.ll
shift.ll Reapply r155136 after fixing PR12599. 2012-04-23 17:39:52 +00:00
shufflemask-undef.ll
shufflevec-constant.ll
sign-test-and-or.ll InstCombine: Teach foldLogOpOfMaskedICmpsHelper that sign bit tests are bit tests. 2012-01-09 17:23:27 +00:00
signed-comparison.ll
signext.ll Enhance a bunch of transformations in instcombine to start generating 2011-02-10 05:36:31 +00:00
simplify-demanded-bits-pointer.ll
sink_instruction.ll
sitofp.ll
sqrt.ll Change test case, one that actually failed before my commit. 2011-07-13 19:19:44 +00:00
srem1.ll
srem-simplify-bug.ll
srem.ll
stack-overalign.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
stacksaverestore.ll
store.ll
strcpy_chk-64.ll If we don't know how long a string is we can't fold an _chk version to the 2011-03-15 00:25:41 +00:00
strcpy_chk.ll
sub-xor.ll InstCombine: Add a combine that turns (2^n)-1 ^ x back into (2^n)-1 - x iff x is smaller than 2^n and it fuses with a following add. 2011-12-24 17:31:53 +00:00
sub.ll InstCombine: Make OptimizePointerDifference more aggressive. 2012-02-20 14:34:57 +00:00
trunc.ll Enhance a bunch of transformations in instcombine to start generating 2011-02-10 05:36:31 +00:00
udiv_select_to_select_shift.ll
udiv-simplify-bug-0.ll
udiv-simplify-bug-1.ll
udivrem-change-width.ll InstCombine: Turn (zext A) udiv (zext B) into (zext (A udiv B)). Same for urem or constant B. 2011-04-30 18:16:07 +00:00
urem-simplify-bug.ll more test cleanup 2010-09-02 22:38:56 +00:00
urem.ll
vec_demanded_elts.ll Make demanded-elt simplification for shufflevector slightly stronger. Spotted by inspection. 2011-09-15 01:14:29 +00:00
vec_extract_elt.ll
vec_insertelt.ll
vec_narrow.ll Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
vec_sext.ll Add vector versions of some existing scalar transforms to aid codegen in matching psign & pblend operations to the IR produced by clang/gcc for their C idioms. 2010-12-17 23:12:19 +00:00
vec_shuffle.ll Extend instcombine's shufflevector simplification to handle more cases where the input and output vectors have different sizes. Patch by Xiaoyi Guo. 2011-10-21 19:06:29 +00:00
vector_gep1.ll Add support for vectors of pointers. 2011-12-05 06:29:09 +00:00
vector-casts.ll Stop emitting instructions with the name "tmp" they eat up memory and have to be uniqued, without any benefit. 2011-09-27 20:39:19 +00:00
vector-srem.ll
volatile_store.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
x86-crc32-demanded.ll Renamed llvm.x86.sse42.crc32 intrinsics; crc64 doesn't exist. 2011-05-26 23:13:19 +00:00
xor2.ll Re-apply r113679, which was reverted in r113720, which added a paid of new instcombine transforms 2010-09-13 17:59:27 +00:00
xor-undef.ll
xor.ll
zero-point-zero-add.ll
zeroext-and-reduce.ll
zext-bool-add-sub.ll
zext-fold.ll
zext-or-icmp.ll manually upgrade a bunch of tests to modern syntax, and remove some that 2011-06-17 03:14:27 +00:00
zext.ll

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.