llvm/test/Transforms/InstCombine
Shuxin Yang a0c9939873 Perform factorization as a last resort of unsafe fadd/fsub simplification.
Rules include:
  1)1 x*y +/- x*z => x*(y +/- z) 
    (the order of operands dosen't matter)

  2) y/x +/- z/x => (y +/- z)/x 

 The transformation is disabled if the new add/sub expr "y +/- z" is a 
denormal/naz/inifinity.

rdar://12911472


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177088 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14 18:08:26 +00:00
..
2002-03-11-InstCombineHang.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2002-05-14-SubFailure.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2002-08-02-CastTest.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2002-12-05-MissedConstProp.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2003-05-26-CastMiscompile.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2003-05-27-ConstExprCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2003-06-05-BranchInvertInfLoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2003-07-21-ExternalConstant.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2004-01-13-InstCombineInvokePHI.ll Update to new EH scheme. 2011-09-01 01:28:25 +00:00
2004-02-23-ShiftShiftOverflow.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2004-03-13-InstCombineInfLoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2004-04-04-InstCombineReplaceAllUsesWith.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2004-05-07-UnsizedCastLoad.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2004-07-27-ConstantExprMul.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2004-08-09-RemInfLoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2004-08-10-BoolSetCC.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2004-09-20-BadLoadCombine2.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2004-09-20-BadLoadCombine.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2004-09-28-BadShiftAndSetCC.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2004-11-22-Missed-and-fold.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
2004-11-27-SetCCForCastLargerAndConstant.ll Allow instcombine to combine "sext(a) >u const" to "a >u trunc(const)". 2009-12-17 22:42:29 +00:00
2004-12-08-RemInfiniteLoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2005-03-04-ShiftOverflow.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2005-04-07-UDivSelectCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2005-06-15-DivSelectCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2005-06-15-ShiftSetCCCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2005-06-16-RangeCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2005-06-16-SetCCOrSetCCMiscompile.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2005-07-07-DeadPHILoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-02-13-DemandedMiscompile.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-02-28-Crash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-03-30-ExtractElement.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-09-15-CastToBool.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-10-19-SignedToUnsignedCastAndConst-2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-10-20-mask.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-10-26-VectorReassoc.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-11-10-ashr-miscompile.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-12-01-BadFPVectorXform.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-12-05-fp-to-int-ext.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-12-08-Phi-ICmp-Op-Fold.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2006-12-08-Select-ICmp.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2006-12-15-Range-Test.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2006-12-23-Select-Cmp-Cmp.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-01-13-ExtCompareMiscompile.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-01-14-FcmpSelf.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-01-18-VectorInfLoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-01-27-AndICmp.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-02-01-LoadSinkAlloca.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-02-07-PointerCast.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-02-23-PhiFoldInfLoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-03-13-CompareMerge.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-03-19-BadTruncChangePR1261.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2007-03-21-SignedRangeTest.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-03-25-BadShiftMask.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-03-25-DoubleShift.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-03-26-BadShiftMask.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-04-08-SingleEltVectorCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-05-10-icmp-or.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-05-14-Crash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-05-18-CastFoldBug.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-06-06-AshrSignBit.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-06-21-DivCompareMiscomp.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-08-02-InfiniteLoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-09-10-AliasConstFold.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-09-17-AliasConstFold2.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-10-28-stacksave.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-10-31-RangeCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-10-31-StringCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-11-22-IcmpCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2007-12-12-GEPScale.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-12-16-AsmNoUnwind.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2007-12-18-AddSelCmpSub.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-12-28-IcmpSub2.ll add newlines at the end of files. 2010-04-07 22:53:17 +00:00
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 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-01-06-VoidCast.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-01-13-AndCmpCmp.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Convert InstCombine tests from notcast to FileCheck. 2009-10-12 06:14:06 +00:00
2008-01-21-MulTrunc.ll make instcombine only rewrite a chain of computation 2009-11-07 19:11:46 +00:00
2008-01-27-FloatSelect.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-01-29-AddICmp.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2008-02-13-MulURem.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-02-16-SDivOverflow2.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-02-16-SDivOverflow.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-02-23-MulSub.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-02-28-OrFCmpCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-03-13-IntToPtr.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-04-22-ByValBitcast.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-04-28-VolatileStore.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-04-29-VolatileLoadDontMerge.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-04-29-VolatileLoadMerge.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-05-08-LiveStoreDelete.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-05-08-StrLenSink.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 01:28:40 +00:00
2008-05-09-SinkOfInvoke.ll Update to new EH scheme. 2011-09-01 01:28:25 +00:00
2008-05-17-InfLoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-05-18-FoldIntToPtr.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-05-22-IDivVector.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-05-22-NegValVector.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-05-23-CompareFold.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-05-31-AddBool.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-05-31-Bools.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-06-05-ashr-crash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-06-08-ICmpPHI.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-06-13-InfiniteLoopStore.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-06-13-ReadOnlyCallStore.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-06-19-UncondLoad.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-06-21-CompareMiscomp.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-06-24-StackRestore.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-07-08-AndICmp.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-07-08-ShiftOneAndOne.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-07-08-SubAnd.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-07-08-VolatileLoadMerge.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-07-09-SubAndError.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2008-07-10-CastSextBool.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-07-10-ICmpBinOp.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-07-11-RemAnd.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-07-13-DivZero.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-07-16-fsub.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-07-16-sse2_storel_dq.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2008-08-05-And.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
2008-08-17-ICmpXorSignbit.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-09-02-VectorCrash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-09-29-FoldingOr.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-10-11-DivCompareFold.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-10-23-ConstFoldWithoutMask.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-11-01-SRemDemandedBits.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-11-08-FCmp.ll Fix a serious typo in InstCombine's optimization of comparisons. 2012-08-07 22:35:16 +00:00
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 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-11-27-MultiplyIntVec.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-11-27-UDivNegative.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2008-12-17-SRemNegConstVec.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-01-05-i128-crash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-01-08-AlignAlloca.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-01-16-PointerAddrSpace.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-01-19-fmod-constant-float-specials.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-01-19-fmod-constant-float.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-01-24-EmptyStruct.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-01-31-InfIterate.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-01-31-Pressure.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-02-04-FPBitcast.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-02-20-InstCombine-SROA.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2009-02-21-LoadCST.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-02-25-CrashZeroSizeArray.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-03-18-vector-ashr-crash.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-03-20-AShrOverShift.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-03-24-InfLoop.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-04-07-MulPromoteToI96.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-05-23-FCmpToICmp.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-06-11-StoreAddrSpace.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2009-06-16-SRemDemandedBits.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-07-02-MaskedIntVector.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
2009-12-17-CmpSelectNull.ll Optimize icmp of null and select of two constants even if the select has 2009-12-18 08:22:35 +00:00
2010-01-28-NegativeSRem.ll Fix PR6165. The bug was that LHSKnownZero was being and'd with DemandedMask 2010-01-28 17:22:42 +00:00
2010-03-03-ExtElim.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 01:28:40 +00:00
2010-05-30-memcpy-Struct.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 01:28:40 +00:00
2010-11-01-lshr-mask.ll For rdar://12329730, last piece. 2012-12-04 22:15:32 +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 Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +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
2012-07-25-LoadPart.ll llvm/ConstantFolding.cpp: Make ReadDataFromGlobal() and FoldReinterpretLoadFromConstPtr() Big-endian-aware. 2012-11-08 20:34:25 +00:00
2012-07-30-addrsp-bitcast.ll When constant folding GEP expressions, keep the address space information of pointers. 2012-07-30 07:25:20 +00:00
2012-08-28-udiv_ashl.ll It is illegal to transform (sdiv (ashr X c1) c2) -> (sdiv x (2^c1 * c2)), 2012-08-30 11:23:20 +00:00
2012-09-17-ZeroSizedAlloca.ll Fix instcombine to obey requested alignment when merging allocas. 2012-09-18 09:31:44 +00:00
2012-09-24-MemcpyFromGlobalCrash.ll Add missing : in CHECK line. 2012-09-24 17:22:43 +00:00
2012-10-25-vector-of-pointers.ll Fix a crash in SimpliftDemandedBits of vectors of pointers. 2012-10-26 17:17:05 +00:00
2012-12-14-simp-vgep.ll Fix a crash in ValueTracking on vectors of pointers. 2012-12-14 20:43:49 +00:00
2013-03-05-Combine-BitcastTy-Into-Alloca.ll InstCombine: Don't shrink allocas when combining with a bitcast. 2013-03-06 05:44:53 +00:00
abs-1.ll instcombine: Migrate *abs optimizations 2012-11-26 00:24:07 +00:00
add2.ll preserve NUW/NSW when transforming add x,x 2011-02-17 02:23:02 +00:00
add3.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
add-shrink.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
add-sitofp.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
add.ll Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767 2012-09-27 10:14:43 +00:00
addnegneg.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
adjust-for-sminmax.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
align-2d-gep.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
align-addr.ll The alignment of an sret parameter is known: it must be at least the 2012-10-04 13:36:31 +00:00
align-external.ll Disallow the undocumented practice of starting the datalayout string with '-'. 2012-11-23 14:51:42 +00:00
alloca.ll Don't try to calculate the alignment of an unsigned type. Fixes PR14371! 2012-11-18 05:39:39 +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 Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
and-fcmp.ll Fix broken tests. 2012-10-02 15:49:34 +00:00
and-not-or.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
and-or-and.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
and-or-not.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
and-or.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
and-xor-merge.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
and-xor-or.ll Add instcombine patterns for the following transformations: 2012-04-26 23:29:14 +00:00
and.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-add1.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-add2.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-and1.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
apint-and2.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
apint-and-compare.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-and-or-and.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
apint-and-xor-merge.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-call-cast-target.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
apint-cast-and-cast.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
apint-cast-cast-to-and.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
apint-cast.ll make instcombine only rewrite a chain of computation 2009-11-07 19:11:46 +00:00
apint-div1.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-div2.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-mul1.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-mul2.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-not.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
apint-or1.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-or2.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-rem1.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-rem2.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-select.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
apint-shift-simplify.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
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 Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
apint-xor1.ll Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767 2012-09-27 10:14:43 +00:00
apint-xor2.ll Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767 2012-09-27 10:14:43 +00:00
apint-zext1.ll Convert the rest of the InstCombine tests from notcast to FileCheck. 2009-10-12 07:18:14 +00:00
apint-zext2.ll Convert the rest of the InstCombine tests from notcast to FileCheck. 2009-10-12 07:18:14 +00:00
ashr-nop.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
atomic.ll An additional atomic test; related to r137662. 2011-08-16 23:29:17 +00:00
badmalloc.ll teach instcombine to remove allocated buffers even if there are stores, memcpy/memmove/memset, and objectsize users. 2012-07-06 23:09:25 +00:00
binop-cast.ll Convert the rest of the InstCombine tests from notcast to FileCheck. 2009-10-12 07:18:14 +00:00
bit-checks.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
bit-tracking.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
bitcast-sext-vector.ll InstCombine should not fold sext/zext of a vector and a bitcast to a scalar to a sext/zext 2010-01-23 04:35:57 +00:00
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 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Constant fold vector bitcasts of halves similarly to how floats and doubles are folded. Test case included. 2013-02-26 22:51:07 +00:00
bitcast.ll Optimization: bitcast (<1 x ...> insertelement ..., X, ...) to ... ==> bitcast X to ... 2013-02-11 21:41:44 +00:00
bitcount.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
bittest.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
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 Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
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 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
call-intrinsics.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 merge some tests. 2010-01-05 21:54:09 +00:00
cast-mul-select.ll unify the code that determines whether it is a good idea to change the type 2009-11-10 07:23:37 +00:00
cast-set.ll make instcombine only rewrite a chain of computation 2009-11-07 19:11:46 +00:00
cast.ll unHECKify test fixed by Jacob in r159003. 2012-12-12 20:58:42 +00:00
compare-signs.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2013-01-01 13:57:25 +00:00
constant-expr-datalayout.ll Teach the DataLayout aware constant folder to be much more aggressive towards 2013-02-14 03:23:37 +00:00
constant-fold-compare.ll Aggressively flip compare constant expressions where appropriate; constant 2009-12-17 06:07:04 +00:00
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
cos-1.ll instcombine: Migrate math library call simplifications 2012-11-13 04:16:17 +00:00
cos-2.ll instcombine: Migrate math library call simplifications 2012-11-13 04:16:17 +00:00
CPP_min_max.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
crash.ll The normal edge of an invoke is not allowed to branch to a block with a 2012-08-10 20:55:20 +00:00
dce-iterate.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
deadcode.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
debug-line.ll instcombine: Migrate printf optimizations 2012-11-26 20:37:20 +00:00
debuginfo.ll Remove the unused 4th operand for DIFile debug info metadata 2013-03-13 22:05:21 +00:00
devirt.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 01:28:40 +00:00
disable-simplify-libcalls.ll Add more functions to the target library information. 2012-11-22 15:36:42 +00:00
div-shift.ll InstCombine: Make sure we use the pre-zext type when creating a constant of a value that is zext'd. 2012-09-21 16:26:41 +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
double-float-shrink-1.ll instcombine: Migrate math library call simplifications 2012-11-13 04:16:17 +00:00
double-float-shrink-2.ll instcombine: Migrate math library call simplifications 2012-11-13 04:16:17 +00:00
enforce-known-alignment.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
exact.ll Teach InstCombine to work with smaller legal types in icmp (shl %v, C1), C2 2013-02-15 14:35:47 +00:00
exp2-1.ll instcombine: Migrate math library call simplifications 2012-11-13 04:16:17 +00:00
exp2-2.ll instcombine: Migrate math library call simplifications 2012-11-13 04:16:17 +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
fast-math.ll Perform factorization as a last resort of unsafe fadd/fsub simplification. 2013-03-14 18:08:26 +00:00
fcmp-select.ll Don't do (X != Y) ? X : Y -> X for floating-point values; it doesn't 2010-02-23 17:17:57 +00:00
fcmp-special.ll Constant-fold certain comparisons with infinity and negative infinity. 2010-02-22 04:06:03 +00:00
fcmp.ll Enable some additional constant folding for PPCDoubleDouble. 2012-10-30 12:33:18 +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
ffs-1.ll Fix bogus comment; no functional change. 2012-11-26 00:25:33 +00:00
fmul.ll 1. Hoist minus sign as high as possible in an attempt to reveal 2013-01-15 21:09:32 +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-phi.ll Add back FoldOpIntoPhi optimizations with fix. Included test cases to help catch these errors and to test the presence of the optimization itself 2012-12-14 22:08:26 +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 [llvm] Updated the test fold-vector-select so that we test the vector selects exhaustively. 2012-08-30 23:11:49 +00:00
fold-vector-zero.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
fp-ret-bitcast.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
fpcast.ll Teach InstCombine to hoist FABS and FNEG through FPTRUNC instructions. The application of these operations commutes with the truncation, so we should prefer to do them in the smallest size we can, to save register space, use smaller constant pool entries, etc. 2013-01-10 22:06:52 +00:00
fpextend.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
fprintf-1.ll instcombine: Migrate fputs optimizations 2012-11-29 15:45:43 +00:00
fputs-1.ll instcombine: Migrate fputs optimizations 2012-11-29 15:45:43 +00:00
fsub.ll Reduce fsub-fadd.ll and merge it into fsub-fsub.ll. Rename fsub-fsub.ll to 2010-01-17 00:21:21 +00:00
fwrite-1.ll instcombine: Migrate fwrite optimizations 2012-11-29 15:45:39 +00:00
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 When constant folding GEP of GEP, do not crash if an index of 2010-03-12 17:55:20 +00:00
getelementptr.ll Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
hoist_instr.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
icmp.ll Teach InstCombine to work with smaller legal types in icmp (shl %v, C1), C2 2013-02-15 14:35:47 +00:00
idioms.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 01:28:40 +00:00
IntPtrCast.ll Convert the rest of the InstCombine tests from notcast to FileCheck. 2009-10-12 07:18:14 +00:00
intrinsics.ll Revert "Have InstCombine call SipmlifyCall when handling calls. Test case included." 2013-02-08 01:55:39 +00:00
invariant.ll Print empty structs as {} rather than { }. 2010-04-08 18:03:05 +00:00
invoke.ll teach instcombine to remove allocated buffers even if there are stores, memcpy/memmove/memset, and objectsize users. 2012-07-06 23:09:25 +00:00
isascii-1.ll instcombine: Migrate isascii optimizations 2012-11-26 03:10:07 +00:00
isdigit-1.ll instcombine: Migrate isdigit optimizations 2012-11-26 02:31:59 +00:00
JavaCompare.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
known_align.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
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 ConstantFolding: Evaluate GEP indices in the index type. 2013-01-23 20:41:05 +00:00
load-cmp.ll make these less sensitive to temporary naming. 2010-03-05 08:43:33 +00:00
load-select.ll Remove ARM-specific calling convention from this test. Target data is 2010-01-30 00:40:23 +00:00
load.ll merge two tests. 2010-07-12 00:19:47 +00:00
loadstore-alignment.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
logical-select.ll The transform is: 2013-02-16 23:41:36 +00:00
lshr-phi.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
malloc-free-delete.ll When code size is the priority (Oz, MinSize attribute), help llvm 2013-01-07 18:37:41 +00:00
memcmp-1.ll Normalize memcmp constant folding results. 2012-11-12 14:00:45 +00:00
memcmp-2.ll instcombine: Migrate memcmp optimizations 2012-11-11 05:11:20 +00:00
memcpy_chk-1.ll instcombine: Add more test cases for __memcpy_chk simplification 2012-09-27 21:21:21 +00:00
memcpy_chk-2.ll instcombine: Add more test cases for __memcpy_chk simplification 2012-09-27 21:21:21 +00:00
memcpy-1.ll instcombine: Migrate memcpy optimizations 2012-11-11 05:54:34 +00:00
memcpy-2.ll instcombine: Migrate memcpy optimizations 2012-11-11 05:54:34 +00:00
memcpy-from-global.ll Get rid of the getPointeeAlignment helper function from 2012-11-26 23:04:53 +00:00
memcpy-to-load.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
memcpy.ll fix infinite loop in instcombine with more than 4GB memcpy 2012-08-15 03:49:59 +00:00
memmove_chk-1.ll instcombine: Add more test cases for __memmove_chk simplification 2012-09-27 21:21:25 +00:00
memmove_chk-2.ll instcombine: Add more test cases for __memmove_chk simplification 2012-09-27 21:21:25 +00:00
memmove-1.ll instcombine: Migrate memmove optimizations 2012-11-11 06:22:40 +00:00
memmove-2.ll instcombine: Migrate memmove optimizations 2012-11-11 06:22:40 +00:00
memmove.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
memset2.ll Test case for r122215 when InstCombine optimizes memset 2010-12-20 01:06:23 +00:00
memset_chk-1.ll instcombine: Add more test cases for __memset_chk simplification 2012-09-27 21:21:18 +00:00
memset_chk-2.ll instcombine: Add more test cases for __memset_chk simplification 2012-09-27 21:21:18 +00:00
memset-1.ll instcombine: Migrate memset optimizations 2012-11-11 06:49:03 +00:00
memset-2.ll instcombine: Migrate memset optimizations 2012-11-11 06:49:03 +00:00
memset.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +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 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
mul.ll InstCombine: canonicalize sext-and --> select 2013-01-30 06:35:22 +00:00
multi-use-or.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
narrow.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
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 Handle sqrt in CannotBeNegativeZero. absf and absl 2009-09-25 20:54:50 +00:00
not-fcmp.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
nsw.ll This transform is not safe. Thanks to Eli for pointing that out! 2011-08-14 04:51:49 +00:00
obfuscated_splat.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 01:28:40 +00:00
objsize-64.ll teach instcombine to remove allocated buffers even if there are stores, memcpy/memmove/memset, and objectsize users. 2012-07-06 23:09:25 +00:00
objsize.ll recommit r172363 & r171325 (reverted in r172756) 2013-03-02 11:36:24 +00:00
odr-linkage.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
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 Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
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 The transform is: 2013-02-16 23:41:36 +00:00
osx-names.ll instcombine: Migrate fprintf optimizations 2012-11-29 15:45:33 +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 Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
phi.ll Reapply r155682, making constant folding more consistent, with a fix to work 2012-04-27 17:50:22 +00:00
pow-1.ll Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
pow-2.ll instcombine: Migrate math library call simplifications 2012-11-13 04:16:17 +00:00
pr2645-0.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
pr2645-1.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
pr2996.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
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 Remove DOS line endings. 2012-11-14 20:18:34 +00:00
preserve-sminmax.ll Convert a few tests to FileCheck for PR5307. 2009-10-26 22:52:03 +00:00
printf-1.ll instcombine: Migrate printf optimizations 2012-11-26 20:37:20 +00:00
printf-2.ll instcombine: Don't replace all uses for instructions with no uses 2012-11-27 18:52:49 +00:00
ptr-int-cast.ll InstCombine: Fix and simplify the inttoptr side too. 2013-02-05 20:22:40 +00:00
puts-1.ll instcombine: Migrate puts optimizations 2012-11-29 19:15:17 +00:00
README.txt *** empty log message *** 2002-08-03 20:24:45 +00:00
rem.ll InstCombine: Add a missing irem identity (X % X -> 0). 2010-11-17 19:11:46 +00:00
sdiv-1.ll llvm/test/Transforms/InstCombine/sdiv-1.ll: FileCheck-ize. 2012-11-21 14:46:18 +00:00
sdiv-2.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
select-2.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
select-crash.ll fix infinite loop in instcombine in the presence of a (malformed) self-referencing select inst. 2012-07-27 18:03:57 +00:00
select-load-call.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
select.ll InstCombine: Fix an edge case where constant icmps could sneak into ConstantFoldInstOperands and crash. 2012-10-20 08:43:52 +00:00
set.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
setcc-strength-reduce.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
sext.ll Transform (sub 0, (zext bool to A)) to (sext bool to A) and 2013-01-21 21:57:20 +00:00
shift-sra.ll Fix a typo in ValueTracking that's causing instcombine to delete needed shift instructions. 2010-03-13 02:20:29 +00:00
shift.ll Revert r174152. The shift amount may overflow and in that case this transformation is illegal. 2013-02-01 07:59:33 +00:00
shufflemask-undef.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
shufflevec-constant.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
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 Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
signext.ll rdar://12329730 (2nd part) 2012-12-04 00:04:54 +00:00
simplify-demanded-bits-pointer.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
sink_instruction.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 01:28:40 +00:00
sitofp.ll Use opt -S instead of piping bitcode output through llvm-dis. 2009-09-08 22:34:10 +00:00
sprintf-1.ll Move sprintf simplifier tests to test/Transforms/InstCombine 2012-11-27 15:35:58 +00:00
sqrt.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 01:28:40 +00:00
srem1.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
srem-simplify-bug.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
srem.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
stack-overalign.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
stacksaverestore.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
store.ll teach instcombine to preserve TBAA tag when merging two stores, part of 2012-12-31 08:10:58 +00:00
stpcpy_chk-1.ll instcombine: Migrate stpcpy optimizations 2012-10-31 00:20:56 +00:00
stpcpy_chk-2.ll instcombine: Split out the __stpcpy_chk simplifications from StrCpyChkOpt 2012-10-31 00:20:51 +00:00
stpcpy-1.ll instcombine: Migrate stpcpy optimizations 2012-10-31 00:20:56 +00:00
stpcpy-2.ll instcombine: Migrate stpcpy optimizations 2012-10-31 00:20:56 +00:00
strcat-1.ll instcombine: Migrate strcat and strncat optimizations 2012-10-13 16:45:32 +00:00
strcat-2.ll instcombine: Migrate strcat and strncat optimizations 2012-10-13 16:45:32 +00:00
strcat-3.ll instcombine: Migrate strcat and strncat optimizations 2012-10-13 16:45:32 +00:00
strchr-1.ll instcombine: Migrate strchr and strrchr optimizations 2012-10-13 16:45:37 +00:00
strchr-2.ll instcombine: Migrate strchr and strrchr optimizations 2012-10-13 16:45:37 +00:00
strcmp-1.ll instcombine: Migrate strcmp and strncmp optimizations 2012-10-15 03:47:37 +00:00
strcmp-2.ll instcombine: Migrate strcmp and strncmp optimizations 2012-10-15 03:47:37 +00:00
strcpy_chk-1.ll instcombine: Migrate strcpy optimizations 2012-10-18 18:12:40 +00:00
strcpy_chk-2.ll instcombine: Add more test cases for __strcpy_chk simplification 2012-09-27 21:21:28 +00:00
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-1.ll instcombine: Migrate strcpy optimizations 2012-10-18 18:12:40 +00:00
strcpy-2.ll instcombine: Migrate strcpy optimizations 2012-10-18 18:12:40 +00:00
strcspn-1.ll instcombine: Migrate strcspn optimizations 2012-11-10 15:16:48 +00:00
strcspn-2.ll instcombine: Migrate strcspn optimizations 2012-11-10 15:16:48 +00:00
strlen-1.ll instcombine: Migrate strlen optimizations 2012-10-31 03:33:06 +00:00
strlen-2.ll instcombine: Migrate strlen optimizations 2012-10-31 03:33:06 +00:00
strncat-1.ll instcombine: Migrate strcat and strncat optimizations 2012-10-13 16:45:32 +00:00
strncat-2.ll instcombine: Migrate strcat and strncat optimizations 2012-10-13 16:45:32 +00:00
strncat-3.ll instcombine: Migrate strcat and strncat optimizations 2012-10-13 16:45:32 +00:00
strncmp-1.ll instcombine: Migrate memcmp optimizations 2012-11-11 05:11:20 +00:00
strncmp-2.ll instcombine: Migrate strcmp and strncmp optimizations 2012-10-15 03:47:37 +00:00
strncpy_chk-1.ll instcombine: Migrate strncpy optimizations 2012-10-31 03:33:00 +00:00
strncpy_chk-2.ll instcombine: Add more test cases for __strncpy_chk simplification 2012-09-27 21:21:31 +00:00
strncpy-1.ll instcombine: Migrate strncpy optimizations 2012-10-31 03:33:00 +00:00
strncpy-2.ll instcombine: Migrate strncpy optimizations 2012-10-31 03:33:00 +00:00
strpbrk-1.ll instcombine: Migrate strpbrk optimizations 2012-10-31 04:29:58 +00:00
strpbrk-2.ll instcombine: Migrate strpbrk optimizations 2012-10-31 04:29:58 +00:00
strrchr-1.ll instcombine: Migrate strchr and strrchr optimizations 2012-10-13 16:45:37 +00:00
strrchr-2.ll instcombine: Migrate strchr and strrchr optimizations 2012-10-13 16:45:37 +00:00
strspn-1.ll instcombine: Migrate strspn optimizations 2012-11-08 01:33:50 +00:00
strstr-1.ll instcombine: Migrate strstr optimizations 2012-11-11 03:51:48 +00:00
strstr-2.ll instcombine: Migrate strstr optimizations 2012-11-11 03:51:48 +00:00
strto-1.ll instcombine: Migrate strto* optimizations 2012-10-31 14:58:26 +00:00
struct-assign-tbaa.ll Don't crash when !tbaa.struct contents is invalid. 2012-10-11 02:05:23 +00:00
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
toascii-1.ll instcombine: Migrate toascii optimizations 2012-11-26 03:38:52 +00:00
trunc.ll Revert remaining part of r93200: "Disable folding sext(trunc(x)) -> x" 2012-06-22 16:36:43 +00:00
udiv_select_to_select_shift.ll Convert a few more opt | llvm-dis to opt -S. 2009-09-08 22:41:33 +00:00
udiv-simplify-bug-0.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
udiv-simplify-bug-1.ll Teach InstCombine to canonicalize [SU]div+[AL]shl patterns. 2012-08-28 10:01:43 +00:00
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 Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
urem.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
vec_demanded_elts.ll Prefer shuffles to selects. Backends love shuffles! 2012-09-27 08:33:56 +00:00
vec_extract_elt.ll Teach InstCombine to optimize extract of a value from a vector add operation with a constant zero. 2013-01-15 23:43:14 +00:00
vec_insertelt.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
vec_narrow.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +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 Surprisingly, we missed a trivial case here. Fix that! 2012-09-28 09:33:53 +00:00
vector_gep1.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 02:33:22 +00:00
vector_gep2.ll Generalize the transform that boosts GEP indices to the size of a pointer to 2012-11-03 11:44:17 +00:00
vector-casts.ll InstCombine: canonicalize sext-and --> select 2013-01-30 06:35:22 +00:00
vector-srem.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
volatile_store.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
weak-symbols.ll instcombine: Migrate strcmp and strncmp optimizations 2012-10-15 03:47:37 +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 fix a typo 2012-12-05 00:33:16 +00:00
xor-undef.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
xor.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
zero-point-zero-add.ll Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
zeroext-and-reduce.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
zext-bool-add-sub.ll Transform (sub 0, (zext bool to A)) to (sext bool to A) and 2013-01-21 21:57:20 +00:00
zext-fold.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
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 Remove this part of the test, it never actually tested anything anyways. This 2009-10-12 06:32:42 +00: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.