Turn floating point IVs into integer IVs where possible.
authorDevang Patel <dpatel@apple.com>
Mon, 3 Nov 2008 18:32:19 +0000 (18:32 +0000)
committerDevang Patel <dpatel@apple.com>
Mon, 3 Nov 2008 18:32:19 +0000 (18:32 +0000)
commit58d43d4a41b21085c063bdd21a2abb68056e2a6f
treedd922f06e11232bcc76f9501a809473504e55c57
parent8f092252d3fe75064abe330e0e6f75e213f4ac06
Turn floating point IVs into integer IVs where possible.
This allows SCEV users to effectively calculate trip count.
LSR later on transforms back integer IVs to floating point IVs
later on to avoid int-to-float casts inside the loop.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58625 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/IndVarSimplify.cpp
test/Transforms/IndVarsSimplify/2008-11-03-Floating.ll [new file with mode: 0644]