[IRCE] Handle loops with step different from 1/-1
authorMax Kazantsev <max.kazantsev@azul.com>
Fri, 4 Aug 2017 07:01:04 +0000 (07:01 +0000)
committerMax Kazantsev <max.kazantsev@azul.com>
Fri, 4 Aug 2017 07:01:04 +0000 (07:01 +0000)
commit2f6ae28152154e30aeb0c05b4a195f2dd7d2719b
treea513d5c11b92508c49f6d48f514b175215edcd8f
parent6c7a8d0b5f971fde03d98de53adc1db48120523e
[IRCE] Handle loops with step different from 1/-1

This patch generalizes IRCE to handle IV steps that are not equal to 1 or -1.

Differential Revision: https://reviews.llvm.org/D35539

llvm-svn: 310032
llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
llvm/test/Transforms/IRCE/stride_more_than_1.ll [new file with mode: 0644]