llvm-6502/lib/Transforms
Sanjoy Das 49afc9109e Fix crashes in IRCE caused by mismatched types
There are places where the inductive range check elimination pass
depends on two llvm::Values or llvm::SCEVs to be of the same
llvm::Type when they do not need to be. This patch relaxes those
restrictions (by bailing out of the optimization if the types
mismatch), and adds test cases to trigger those paths.

These issues were found by bootstrapping clang with IRCE running in
the -O3 pass ordering.

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



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226793 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-22 08:29:18 +00:00
..
Hello
InstCombine [PM] Rename InstCombine.h to InstCombineInternal.h in preparation for 2015-01-22 05:25:13 +00:00
Instrumentation [msan] Update origin for the entire destination range on memory store. 2015-01-21 13:21:31 +00:00
IPO [PM] Lift the analyses into the interface for 2015-01-19 03:03:39 +00:00
ObjCARC IR: Split Metadata from Value 2014-12-09 18:38:53 +00:00
Scalar Fix crashes in IRCE caused by mismatched types 2015-01-22 08:29:18 +00:00
Utils DebugInfo: Use distinct inlinedAt MDLocations to avoid separate inlined calls being coalesced 2015-01-21 22:57:29 +00:00
Vectorize SLPVectorizer: add a second limit for the number of alias checks. 2015-01-22 08:20:51 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile