llvm-project/llvm/lib/Transforms
Haicheng Wu d60ae33d29 [CVP] Convert an SDiv to a UDiv if both operands are known to be nonnegative
The motivating example is this

for (j = n; j > 1; j = i) {
   i = j / 2;
}

The signed division is safely to be changed to an unsigned division (j is known
to be larger than 1 from the loop guard) and later turned into a single shift
without considering the sign bit.

llvm-svn: 263406
2016-03-14 03:24:28 +00:00
..
Hello Remove autoconf support 2016-01-26 21:29:08 +00:00
IPO Remove PreserveNames template parameter from IRBuilder 2016-03-13 21:05:13 +00:00
InstCombine Remove PreserveNames template parameter from IRBuilder 2016-03-13 21:05:13 +00:00
Instrumentation Remove PreserveNames template parameter from IRBuilder 2016-03-13 21:05:13 +00:00
ObjCARC ADT: Remove == and != comparisons between ilist iterators and pointers 2016-02-21 20:39:50 +00:00
Scalar [CVP] Convert an SDiv to a UDiv if both operands are known to be nonnegative 2016-03-14 03:24:28 +00:00
Utils Remove PreserveNames template parameter from IRBuilder 2016-03-13 21:05:13 +00:00
Vectorize Remove PreserveNames template parameter from IRBuilder 2016-03-13 21:05:13 +00:00
CMakeLists.txt
LLVMBuild.txt