llvm-6502/test/Transforms/InstCombine
David Blaikie 198d8baafb [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction
One of several parallel first steps to remove the target type of pointers,
replacing them with a single opaque pointer type.

This adds an explicit type parameter to the gep instruction so that when the
first parameter becomes an opaque pointer type, the type to gep through is
still available to the instructions.

* This doesn't modify gep operators, only instructions (operators will be
  handled separately)

* Textual IR changes only. Bitcode (including upgrade) and changing the
  in-memory representation will be in separate changes.

* geps of vectors are transformed as:
    getelementptr <4 x float*> %x, ...
  ->getelementptr float, <4 x float*> %x, ...
  Then, once the opaque pointer type is introduced, this will ultimately look
  like:
    getelementptr float, <4 x ptr> %x
  with the unambiguous interpretation that it is a vector of pointers to float.

* address spaces remain on the pointer, not the type:
    getelementptr float addrspace(1)* %x
  ->getelementptr float, float addrspace(1)* %x
  Then, eventually:
    getelementptr float, ptr addrspace(1) %x

Importantly, the massive amount of test case churn has been automated by
same crappy python code. I had to manually update a few test cases that
wouldn't fit the script's model (r228970,r229196,r229197,r229198). The
python script just massages stdin and writes the result to stdout, I
then wrapped that in a shell script to handle replacing files, then
using the usual find+xargs to migrate all the files.

update.py:
import fileinput
import sys
import re

ibrep = re.compile(r"(^.*?[^%\w]getelementptr inbounds )(((?:<\d* x )?)(.*?)(| addrspace\(\d\)) *\*(|>)(?:$| *(?:%|@|null|undef|blockaddress|getelementptr|addrspacecast|bitcast|inttoptr|\[\[[a-zA-Z]|\{\{).*$))")
normrep = re.compile(       r"(^.*?[^%\w]getelementptr )(((?:<\d* x )?)(.*?)(| addrspace\(\d\)) *\*(|>)(?:$| *(?:%|@|null|undef|blockaddress|getelementptr|addrspacecast|bitcast|inttoptr|\[\[[a-zA-Z]|\{\{).*$))")

def conv(match, line):
  if not match:
    return line
  line = match.groups()[0]
  if len(match.groups()[5]) == 0:
    line += match.groups()[2]
  line += match.groups()[3]
  line += ", "
  line += match.groups()[1]
  line += "\n"
  return line

for line in sys.stdin:
  if line.find("getelementptr ") == line.find("getelementptr inbounds"):
    if line.find("getelementptr inbounds") != line.find("getelementptr inbounds ("):
      line = conv(re.match(ibrep, line), line)
  elif line.find("getelementptr ") != line.find("getelementptr ("):
    line = conv(re.match(normrep, line), line)
  sys.stdout.write(line)

apply.sh:
for name in "$@"
do
  python3 `dirname "$0"`/update.py < "$name" > "$name.tmp" && mv "$name.tmp" "$name"
  rm -f "$name.tmp"
done

The actual commands:
From llvm/src:
find test/ -name *.ll | xargs ./apply.sh
From llvm/src/tools/clang:
find test/ -name *.mm -o -name *.m -o -name *.cpp -o -name *.c | xargs -I '{}' ../../apply.sh "{}"
From llvm/src/tools/polly:
find test/ -name *.ll | xargs ./apply.sh

After that, check-all (with llvm, clang, clang-tools-extra, lld,
compiler-rt, and polly all checked out).

The extra 'rm' in the apply.sh script is due to a few files in clang's test
suite using interesting unicode stuff that my python script was throwing
exceptions on. None of those files needed to be migrated, so it seemed
sufficient to ignore those cases.

Reviewers: rafael, dexonsmith, grosser

Differential Revision: http://reviews.llvm.org/D7636

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230786 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-27 19:29:02 +00:00
..
2002-03-11-InstCombineHang.ll
2002-05-14-SubFailure.ll Convert tests to FileCheck 2013-08-28 23:04:41 +00:00
2002-08-02-CastTest.ll
2002-12-05-MissedConstProp.ll Convert tests to FileCheck 2013-08-28 23:04:41 +00:00
2003-05-26-CastMiscompile.ll
2003-05-27-ConstExprCrash.ll
2003-06-05-BranchInvertInfLoop.ll
2003-07-21-ExternalConstant.ll
2003-08-12-AllocaNonNull.ll Convert tests to FileCheck 2013-08-28 23:04:41 +00:00
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 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
2004-11-22-Missed-and-fold.ll
2004-11-27-SetCCForCastLargerAndConstant.ll
2004-12-08-RemInfiniteLoop.ll
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
2005-06-15-DivSelectCrash.ll
2005-06-15-ShiftSetCCCrash.ll
2005-06-16-RangeCrash.ll
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
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 Convert tests to FileCheck 2013-08-28 23:04:41 +00:00
2006-10-26-VectorReassoc.ll Convert tests to FileCheck 2013-08-28 23:04:41 +00:00
2006-11-10-ashr-miscompile.ll
2006-12-01-BadFPVectorXform.ll
2006-12-05-fp-to-int-ext.ll
2006-12-08-Phi-ICmp-Op-Fold.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2006-12-08-Select-ICmp.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2006-12-15-Range-Test.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2006-12-23-Select-Cmp-Cmp.ll
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
2007-01-27-AndICmp.ll InstCombine: add more transforms 2013-07-09 07:50:59 +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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2007-02-23-PhiFoldInfLoop.ll
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
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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2007-03-25-DoubleShift.ll
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
2007-05-10-icmp-or.ll
2007-05-14-Crash.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +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
2007-09-10-AliasConstFold.ll Use "weak alias" instead of "alias weak" 2014-07-30 22:51:54 +00:00
2007-09-17-AliasConstFold2.ll Use "weak alias" instead of "alias weak" 2014-07-30 22:51:54 +00:00
2007-10-10-EliminateMemCpy.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2007-10-12-Crash.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2007-10-28-stacksave.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2007-10-31-RangeCrash.ll
2007-10-31-StringCrash.ll
2007-11-07-OpaqueAlignCrash.ll
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
2007-11-25-CompatibleAttributes.ll
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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2007-12-16-AsmNoUnwind.ll
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
2008-01-06-BitCastAttributes.ll Change behavior of calling bitcasted alias functions. 2013-07-30 20:45:05 +00:00
2008-01-06-CastCrash.ll
2008-01-06-VoidCast.ll Change behavior of calling bitcasted alias functions. 2013-07-30 20:45:05 +00:00
2008-01-13-AndCmpCmp.ll
2008-01-13-NoBitCastAttributes.ll
2008-01-14-VarArgTrampoline.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2008-01-21-MismatchedCastAndCompare.ll
2008-01-21-MulTrunc.ll
2008-01-27-FloatSelect.ll Convert tests to FileCheck 2013-08-28 23:04:41 +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 Convert tests to FileCheck 2013-08-28 23:04:41 +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-23-MulSub.ll
2008-02-28-OrFCmpCrash.ll
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
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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2008-05-08-StrLenSink.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2008-05-09-SinkOfInvoke.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2008-05-17-InfLoop.ll
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
2008-05-22-NegValVector.ll
2008-05-23-CompareFold.ll Convert test to FileCheck and use CHECK-LABEL 2014-11-24 23:03:17 +00:00
2008-05-31-AddBool.ll Convert tests to FileCheck 2013-08-28 23:04:41 +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
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
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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2008-07-08-AndICmp.ll
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
2008-07-11-RemAnd.ll
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
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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2008-08-17-ICmpXorSignbit.ll
2008-09-02-VectorCrash.ll
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
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 Convert test to FileCheck and use CHECK-LABEL 2014-11-24 23:03:17 +00:00
2008-11-20-DivMulRem.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
2008-11-27-IDivVector.ll
2008-11-27-MultiplyIntVec.ll
2008-11-27-UDivNegative.ll
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
2009-01-08-AlignAlloca.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2009-01-16-PointerAddrSpace.ll Add addrspacecast instruction. 2013-11-15 01:34:59 +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
2009-01-24-EmptyStruct.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2009-01-31-InfIterate.ll
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
2009-02-11-NotInitialized.ll Move library call prototype attribute inference to functionattrs 2013-03-21 00:55:59 +00:00
2009-02-20-InstCombine-SROA.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2009-03-18-vector-ashr-crash.ll
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
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
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
2009-07-02-MaskedIntVector.ll
2009-12-17-CmpSelectNull.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2010-01-28-NegativeSRem.ll
2010-03-03-ExtElim.ll IR: Fold away compares between GV GEPs and GVs 2014-07-04 22:05:26 +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 Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
2010-11-21-SizeZeroTypeGEP.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2010-11-23-Distributed.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
2011-02-14-InfLoop.ll
2011-03-08-SRemMinusOneBadOpt.ll
2011-05-02-VectorBoolean.ll
2011-05-13-InBoundsGEP.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2011-05-28-swapmulsub.ll
2011-06-13-nsw-alloca.ll [InstCombine] Change LLVM To canonicalize toward the value type being 2014-11-25 10:09:51 +00:00
2011-09-03-Trampoline.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2011-10-07-AlignPromotion.ll
2012-3-15-or-xor-constant.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +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 Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
2012-04-23-Neon-Intrinsics.ll AArch64/ARM64: move ARM64 into AArch64's place 2014-05-24 12:50:23 +00:00
2012-04-24-vselect.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +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 TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
2012-05-28-select-hang.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +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 Allow aliases to be unnamed_addr. 2014-06-06 01:20:28 +00:00
2012-08-28-udiv_ashl.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
2012-09-17-ZeroSizedAlloca.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2012-09-24-MemcpyFromGlobalCrash.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
2012-10-25-vector-of-pointers.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
abs_abs.ll This removes TODO added in http://reviews.llvm.org/D3658 2014-06-12 14:06:00 +00:00
abs-1.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
add2.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
add3.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
add-shrink.ll Convert test to FileCheck. 2014-06-02 21:23:54 +00:00
add-sitofp.ll [InstCombine] mark ADD with nuw if no unsigned overflow 2014-06-17 00:42:07 +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 Removed extra whitespace. (Testing commit access). NFC. 2014-12-01 09:27:46 +00:00
AddOverFlow.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
addrspacecast.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +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
alias-recursion.ll [ValueTracking] Move GlobalAlias handling to be after the max depth check in computeKnownBits() 2014-12-23 11:33:41 +00:00
align-2d-gep.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
align-addr.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
align-attr.ll Make use of the align parameter attribute for all pointer arguments 2014-07-22 16:58:55 +00:00
align-external.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
aligned-altivec.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
aligned-qpx.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
alloca.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
and2.ll InstCombine: Turn (x != 0 & x <u C) into the canonical range check form (x-1 <u C-1) 2014-10-12 14:02:34 +00:00
and-compare.ll Use FileCheck instead of grep. Change by Ankur Garg. 2014-11-27 11:22:49 +00:00
and-fcmp.ll InstCombine: Check the operand types before merging fcmp ord & fcmp ord. 2013-04-12 21:56:23 +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 FileCheck instead of grep. Change by Ankur Garg. 2014-11-27 11:22:49 +00:00
and-xor-or.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
and.ll InstCombine: add more transforms 2013-07-09 07:50:59 +00:00
apint-add1.ll
apint-add2.ll
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
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
apint-call-cast-target.ll InstCombine: Bitcast call arguments from/to pointer/integer type 2015-01-06 08:41:31 +00:00
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 Convert tests to FileCheck 2013-08-28 23:04:41 +00:00
apint-shift-simplify.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
apint-shift.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
apint-shl-trunc.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
apint-sub.ll InstCombine: Fix miscompile in X % -Y -> X % Y transform 2014-10-13 22:37:51 +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
apint-zext2.ll
assume2.ll Add additional patterns for @llvm.assume in ValueTracking 2014-09-07 19:21:07 +00:00
assume-loop-align.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
assume-redundant.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
assume.ll Revert r228556: InstCombine: propagate nonNull through assume 2015-02-10 08:07:32 +00:00
atomic.ll [InstCombine] Do an about-face on how LLVM canonicalizes (cast (load 2014-10-18 06:36:22 +00:00
badmalloc.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
binop-cast.ll
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
bitcast-alias-function.ll [InstCombine] Change LLVM To canonicalize toward the value type being 2014-11-25 10:09:51 +00:00
bitcast-bigendian.ll Fix big-endian handling of integer-to-vector bitcasts in InstCombine 2013-08-12 07:26:09 +00:00
bitcast-sext-vector.ll
bitcast-store.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
bitcast-vec-canon.ll
bitcast-vec-uniform.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
bitcast-vector-fold.ll Add newlines at end of test files, no functionality change 2013-07-13 22:00:58 +00:00
bitcast.ll InstCombine: Don't allow turning vector-of-pointer loads into vector-of-integer. 2013-09-19 20:59:04 +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
blend_x86.ll Post-commit fixes for r209643 2014-05-27 16:54:33 +00:00
bswap-fold.ll [InstCombine] Minor optimization for bswap with binary ops 2014-12-04 09:44:01 +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
call-cast-target-inalloca.ll IR: Conservatively verify inalloca arguments 2014-04-30 17:22:00 +00:00
call-cast-target.ll InstCombine: Don't strip bitcasts off of callsites marked 'thunk' 2015-01-21 22:32:04 +00:00
call-intrinsics.ll
call.ll Cleanup handling of constant function casts. 2013-09-17 21:10:14 +00:00
canonicalize_branch.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
cast_ptr.ll [InstCombine] Fix a bug when combining icmp from ptrtoint 2015-02-13 04:51:26 +00:00
cast-call-combine.ll Make sure that value handle users see the transformation of an indirect call to a direct call. This is important for the CallGraph iteration. Patch by Björn Steinbrink! 2014-02-20 23:00:15 +00:00
cast-int-fcmp-eq-0.ll Convert fcmp with 0.0 from casted integers to icmp 2015-01-06 15:50:59 +00:00
cast-mul-select.ll
cast-set.ll Add CHECK-LABELs 2014-01-22 22:32:58 +00:00
cast.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
ceil.ll Allow constant folding of ceil function whenever feasible 2014-03-24 04:36:06 +00:00
compare-signs.ll InstCombine: fold (A >> C) == (B >> C) --> (A^B) < (1 << C) for constant Cs. 2013-11-16 16:00:48 +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-address-space-pointer.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
constant-fold-alias.ll Move previously dead code to handle computing the known bits of an alias 2014-10-19 09:06:56 +00:00
constant-fold-compare.ll
constant-fold-gep.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
constant-fold-math.ll Make the sqrt intrinsic return undef for a negative input. 2014-10-01 20:36:33 +00:00
copysign.ll Allow constant folding of copysign 2014-03-06 05:32:52 +00:00
cos-1.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
cos-2.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +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 IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
debuginfo.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
descale-zero.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
disable-simplify-libcalls.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
distribute.ll This patch removed duplicate code for matching patterns 2014-06-26 08:57:33 +00:00
div-shift-crash.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
div-shift.ll InstSimplify: X >> X -> 0 2013-07-09 22:01:22 +00:00
div.ll InstCombine: Propagate exact for (sdiv X, Pow2) -> (udiv X, Pow2) 2014-11-22 20:00:41 +00:00
double-float-shrink-1.ll Handle sqrt() shrinking in SimplifyLibCalls like any other call 2014-10-23 21:52:45 +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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
err-rep-cold.ll Add the cold attribute to error-reporting call sites 2013-11-17 02:06:35 +00:00
exact.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
exp2-1.ll SimplifyLibCalls: Push TLI through the exp2->ldexp transform. 2014-02-04 20:27:23 +00:00
exp2-2.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
ExtractCast.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
extractvalue.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
fabs.ll Optimize away fabs() calls when input is squared (known positive). 2014-10-14 20:43:11 +00:00
fast-math.ll InstCombine: fsub nsz 0, X ==> fsub nsz -0.0, X 2014-12-31 22:14:05 +00:00
fcmp-select.ll
fcmp-special.ll
fcmp.ll Fix fcmp + fabs instcombines when using the intrinsic 2015-01-08 20:09:34 +00:00
fdiv.ll Fix all the remaining lost-fast-math-flags bugs I've been able to find. The most important of these are cases in the generic logic for combining BinaryOperators. 2014-01-20 07:44:53 +00:00
ffs-1.ll [InstCombine] mark ADD with nuw if no unsigned overflow 2014-06-17 00:42:07 +00:00
float-shrink-compare.ll [SimplifyLibCalls] Improve double->float shrinking to consider constants 2014-12-03 21:46:33 +00:00
fmul.ll Remove unused function attribute params. 2014-10-02 21:12:04 +00:00
fneg-ext.ll Preserve fast-math flags when folding (fsub x, (fneg y)) to (fadd x, y). 2013-07-30 23:53:17 +00:00
fold-bin-operand.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
fold-calls.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
fold-fops-into-selects.ll InstCombine: call FoldOpIntoSelect for all floating binops, not just fmul 2013-07-20 07:13:13 +00:00
fold-phi.ll Minimize test case further 2014-11-04 05:17:58 +00:00
fold-sqrt-sqrtf.ll
fold-vector-select.ll Convert tests to FileCheck 2013-08-28 23:04:41 +00:00
fold-vector-zero.ll
fp-ret-bitcast.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
fpcast.ll Fix another infinite loop in InstCombine 2014-12-12 04:34:07 +00:00
fpextend_x86.ll Rein in overzealous InstCombine of fptrunc(OP(fpextend, fpextend)). 2013-11-28 21:38:05 +00:00
fpextend.ll Rein in overzealous InstCombine of fptrunc(OP(fpextend, fpextend)). 2013-11-28 21:38:05 +00:00
fprintf-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
fputs-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
fsub.ll
fwrite-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
gc.relocate.ll InstCombine: propagate deref via new addDereferenceableAttr 2015-02-14 19:37:54 +00:00
gep-addrspace.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
gep-sext.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
gepgep.ll
gepphigep.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
getelementptr.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
hoist_instr.ll
icmp-logical.ll InstCombine: Fold away tautological masked compares 2014-11-18 09:31:41 +00:00
icmp-range.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
icmp-shr.ll InstCombine: Simplify FoldICmpCstShrCst 2014-10-21 19:51:55 +00:00
icmp.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
idioms.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
insert-extract-shuffle.ll InstCombine: form shuffles from wider range of insert/extractelements 2014-03-07 10:24:44 +00:00
IntPtrCast.ll
intrinsics.ll [InstCombine] Teach how to fold a select into a cttz/ctlz with the 'is_zero_undef' flag. 2015-01-27 15:58:14 +00:00
invariant.ll
invoke.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
isascii-1.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
isdigit-1.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +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 Move EH personality type classification to Analysis/LibCallSemantics.h 2015-01-28 01:17:38 +00:00
load3.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
load-cmp.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
load-select.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
load.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
loadstore-alignment.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
loadstore-metadata.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
logical-select.ll The transform is: 2013-02-16 23:41:36 +00:00
lshr-phi.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
malloc-free-delete.ll For PR21145: recognise a builtin call to a known deallocation function even if 2015-01-15 01:00:33 +00:00
max-of-nots.ll New instcombine rule: max(~a,~b) -> ~min(a, b) 2015-02-24 00:08:41 +00:00
maxnum.ll Add minnum / maxnum intrinsics 2014-10-21 23:00:20 +00:00
mem-gep-zidx.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
memcmp-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
memcmp-2.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
memcpy_chk-1.ll [SimplifyLibCalls] Don't confuse strcpy_chk for stpcpy_chk. 2015-01-27 21:52:16 +00:00
memcpy_chk-2.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
memcpy-1.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
memcpy-2.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
memcpy-from-global.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +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 Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
memmove_chk-1.ll [SimplifyLibCalls] Don't confuse strcpy_chk for stpcpy_chk. 2015-01-27 21:52:16 +00:00
memmove_chk-2.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
memmove-1.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
memmove-2.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
memmove.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
memset2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
memset_chk-1.ll [SimplifyLibCalls] Don't confuse strcpy_chk for stpcpy_chk. 2015-01-27 21:52:16 +00:00
memset_chk-2.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
memset-1.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
memset-2.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
memset.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
merge-icmp.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
minnum.ll Fix using wrong intrinsic in test 2015-01-06 23:00:33 +00:00
mul-masked-bits.ll
mul.ll InstCombine: match can find ConstantExprs, don't assume we have a Value 2015-01-04 07:36:02 +00:00
multi-size-address-space-pointer.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +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-switch.ll Reapply: [InstCombine] Fix visitSwitchInst to use right operand types for sub cstexpr 2014-12-19 17:12:35 +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
no_cgscc_assert.ll CGSCC should not treat intrinsic calls like function calls (PR21403) 2014-11-12 18:25:47 +00:00
no-negzero.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
not-fcmp.ll Use FileCheck instead of grep. Change by Sonam. 2014-11-27 10:57:24 +00:00
not.ll InstCombine: Allow folding of xor into icmp by changing the predicate for vectors 2015-02-12 20:26:46 +00:00
nothrow.ll
nsw.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +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 Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
objsize-address-space.ll Use "weak alias" instead of "alias weak" 2014-07-30 22:51:54 +00:00
objsize.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +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
onehot_merge.ll InstCombine: Replace a hand-rolled version of isKnownToBeAPowerOfTwo with the real thing. 2014-01-19 16:48:41 +00:00
or-fcmp.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +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 Removal Of Duplicate Test Cases and Addition Of Missing Check Statements 2014-12-09 10:46:38 +00:00
or.ll InstCombine: FoldOrOfICmps harder 2014-11-28 19:58:29 +00:00
osx-names.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
overflow-mul.ll InstCombine: Don't assume that m_ZExt matches an Instruction 2014-11-01 23:46:05 +00:00
overflow.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
OverlappingInsertvalues.ll [InstCombine] Some cleanup in optimization of redundant insertvalue instructions. 2014-05-08 19:50:24 +00:00
phi-merge-gep.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
phi-select-constexpr.ll Don't use isNullValue to evaluate ConstantExpr 2013-12-06 21:48:36 +00:00
phi.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
pow-1.ll Change math intrinsic attributes from readonly to readnone. These 2014-03-06 00:18:15 +00:00
pow-2.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
pow-3.ll Adds missing TLI check for library simplification of 2013-08-19 06:55:47 +00:00
pr2645-0.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
pr2645-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
pr2996.ll
pr8547.ll Add newlines at end of test files, no functionality change 2013-07-13 22:00:58 +00:00
pr12251.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
pr12338.ll [InstCombine] Re-commit of r218721 (Optimize icmp-select-icmp sequence) 2014-11-21 23:36:44 +00:00
pr17827.ll Conservative fix for PR17827 - don't optimize a shift + and + compare sequence where the shift is logical unless the comparison is unsigned 2013-12-02 18:43:59 +00:00
pr19420.ll Revert "Revert r206045, "Fix shift by constants for vector."" 2014-04-14 21:50:37 +00:00
pr20059.ll removed duplicate testcase 2014-07-09 17:49:58 +00:00
pr20079.ll IR: Fold away compares between GV GEPs and GVs 2014-07-04 22:05:26 +00:00
pr21199.ll [InstCombine] Re-commit of r218721 (Optimize icmp-select-icmp sequence) 2014-11-21 23:36:44 +00:00
pr21210.ll [InstCombine] Re-commit of r218721 (Optimize icmp-select-icmp sequence) 2014-11-21 23:36:44 +00:00
pr21651.ll InstCombine: Don't assume DataLayout is always available 2014-11-24 07:26:20 +00:00
pr21891.ll ValueTracking: Don't recurse too deeply in computeKnownBitsFromAssume 2014-12-12 23:59:29 +00:00
PR7357.ll Move the remaining simplify-libcalls tests to instcombine, merging most of them into a single file. 2013-05-19 13:28:39 +00:00
preserve-sminmax.ll
printf-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
printf-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
ptr-int-cast.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
puts-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
r600-intrinsics.ll R600/SI: Add intrinsics for various math instructions. 2014-06-19 01:19:19 +00:00
range-check.ll InstCombine: simplify signed range checks 2014-12-03 10:39:15 +00:00
README.txt
rem.ll Add back commit r210029. 2014-06-02 22:01:04 +00:00
round.ll Allow constant folding of round function whenever feasible 2014-03-07 04:36:21 +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
select-2.ll Fix all the remaining lost-fast-math-flags bugs I've been able to find. The most important of these are cases in the generic logic for combining BinaryOperators. 2014-01-20 07:44:53 +00:00
select-cmp-br.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
select-cmp-cttz-ctlz.ll [InstCombine] Fix regression introduced at r227197. 2015-02-13 16:33:34 +00:00
select-crash.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
select-extractelement.ll Scalarize select vector arguments when extracted. 2013-11-04 20:36:06 +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-select.ll Remove a very old instcombine where we would turn sequences of selects into 2014-02-12 23:54:07 +00:00
select.ll InstCombine: Combine select sequences into a single select 2015-02-06 17:49:36 +00:00
set.ll
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 Add back commit r210029. 2014-06-02 22:01:04 +00:00
shift-sra.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
shift.ll ConstantFold, InstSimplify: undef >>a x can be either -1 or 0, choose 0 2014-12-10 21:58:15 +00:00
shufflemask-undef.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +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 icmp merging about the equivalence of bit tests and UGE/ULT with a power of 2. 2014-02-11 21:09:03 +00:00
signed-comparison.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
signext.ll [signext.ll] Removal Of Duplicate Test Cases 2014-12-02 05:29:47 +00:00
simplify-demanded-bits-pointer.ll
simplify-libcalls.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
sincospi.ll ARM64: initial backend import 2014-03-29 10:18:08 +00:00
sink_instruction.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
sitofp.ll InstCombine: fold more cases of (fp_to_u/sint (u/sint_to_fp val)) 2015-02-16 21:47:54 +00:00
sprintf-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
sqrt.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
srem1.ll
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
stack-overalign.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
stacksaverestore.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
statepoint.ll Carry facts about nullness and undef across GC relocation 2014-12-29 23:27:30 +00:00
store.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
stpcpy_chk-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
stpcpy_chk-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
stpcpy-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
stpcpy-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcat-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcat-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcat-3.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strchr-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strchr-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcmp-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcmp-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcpy_chk-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcpy_chk-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcpy_chk-64.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcpy-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcpy-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcspn-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strcspn-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strlen-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strlen-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strncat-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strncat-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strncat-3.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strncmp-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strncmp-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strncpy_chk-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strncpy_chk-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strncpy-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strncpy-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strpbrk-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strpbrk-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strrchr-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strrchr-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strspn-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strstr-1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strstr-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
strto-1.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
struct-assign-tbaa.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
sub-xor.ll InstCombine: Annotate sub with nsw when we prove it's safe 2014-08-19 23:36:30 +00:00
sub.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
toascii-1.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
trunc.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
type_pun.ll InstCombine: extract instead of shuffle when performing vector/array type punning 2015-02-25 22:30:51 +00:00
udiv_select_to_select_shift.ll
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 Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
unordered-fcmp-select.ll Bug 21610: Canonicalize min/max fcmp selects to use ordered comparisons 2014-11-24 23:15:18 +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
vec_demanded_elts.ll [InstCombine][X86] Improved folding of calls to Intrinsic::x86_sse4a_insertqi. 2014-12-11 20:44:59 +00:00
vec_extract_2elts.ll In the function InstCombiner::visitExtractElementInst() removed the limitation that extract is promoted over a cast only if the cast has only one use. 2013-04-18 19:56:44 +00:00
vec_extract_elt.ll Convert tests to FileCheck 2013-08-28 23:04:41 +00:00
vec_extract_var_elt.ll InstCombine: Don't try to use aggregate elements of ConstantExprs. 2014-01-24 19:02:37 +00:00
vec_insertelt.ll Convert tests to FileCheck 2013-08-28 23:04:41 +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_phi_extract.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
vec_sext.ll InstCombine: Modernize a bunch of cast combines. 2014-01-19 20:05:13 +00:00
vec_shuffle.ll InstCombine: Don't try to reorder shuffles where the mask is a ConstantExpr. 2014-06-24 10:38:10 +00:00
vector_gep1.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
vector_gep2.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
vector-casts.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
vector-mul.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +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
vector-type.ll Remove -O3. 2013-03-28 19:34:14 +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
vsx-unaligned.ll [PowerPC] Add vec_vsx_ld and vec_vsx_st intrinsics 2014-11-12 04:19:40 +00:00
weak-symbols.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
win-math.ll SimplifyLibCalls: When emitting an overloaded fp function check that it's available. 2013-08-31 18:19:35 +00:00
x86-crc32-demanded.ll
xor2.ll [InstCombine] Remove redundant test case. 2014-09-16 08:50:10 +00:00
xor-undef.ll
xor.ll Change the test case file to use FileCheck instead of grep. NFC. 2014-11-25 08:44:56 +00:00
zero-point-zero-add.ll
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 Add back commit r210029. 2014-06-02 22:01:04 +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 [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
zext.ll InstCombine: Modernize a bunch of cast combines. 2014-01-19 20:05:13 +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.