llvm/lib/Transforms/InstCombine
Tim Northover 0415b1810b InstCombine: allow unmasked icmps to be combined with logical ops
"(icmp op i8 A, B)" is equivalent to "(icmp op i8 (A & 0xff), B)" as a
degenerate case. Allowing this as a "masked" comparison when analysing "(icmp)
&/| (icmp)" allows us to combine them in more cases.

rdar://problem/7625728

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189931 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-04 11:57:17 +00:00
..
CMakeLists.txt Tidy up a bit. No functional change. 2013-04-05 21:20:12 +00:00
InstCombine.h Teach InstCombine visitGetElementPtr about address spaces 2013-08-19 22:17:40 +00:00
InstCombineAddSub.cpp Preserve fast-math flags when folding (fsub x, (fneg y)) to (fadd x, y). 2013-07-30 23:53:17 +00:00
InstCombineAndOrXor.cpp InstCombine: allow unmasked icmps to be combined with logical ops 2013-09-04 11:57:17 +00:00
InstCombineCalls.cpp Change behavior of calling bitcasted alias functions. 2013-07-30 20:45:05 +00:00
InstCombineCasts.cpp Teach InstCombine about address spaces 2013-08-21 19:53:10 +00:00
InstCombineCompares.cpp Teach InstCombine about address spaces 2013-08-21 19:53:10 +00:00
InstCombineLoadStoreAlloca.cpp Teach InstCombineLoadCast about address spaces. 2013-09-03 21:05:48 +00:00
InstCombineMulDivRem.cpp Correct case of m_UIToFp to m_UIToFP to match instruction name, add m_SIToFP for consistency. 2013-07-26 17:55:00 +00:00
InstCombinePHI.cpp Tidy up a bit. No functional change. 2013-04-05 21:20:12 +00:00
InstCombineSelect.cpp InstCombine: Also turn selects fed by an and into arithmetic when the types don't match. 2013-06-29 21:17:04 +00:00
InstCombineShifts.cpp Revert r174152. The shift amount may overflow and in that case this transformation is illegal. 2013-02-01 07:59:33 +00:00
InstCombineSimplifyDemanded.cpp InstCombine: Check for zero shift amounts before subtracting one causing integer overflow. 2013-08-30 14:35:35 +00:00
InstCombineVectorOps.cpp Fix typo. 2013-08-28 22:17:26 +00:00
InstCombineWorklist.h Use pop_back_val() instead of both back() and pop_back(). 2013-08-19 22:47:55 +00:00
InstructionCombining.cpp Teach InstCombine visitGetElementPtr about address spaces 2013-08-19 22:17:40 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00