[LV] Interleaving should not exceed estimated loop trip count.
authorCraig Topper <craig.topper@intel.com>
Mon, 28 Oct 2019 17:11:20 +0000 (10:11 -0700)
committerCraig Topper <craig.topper@intel.com>
Mon, 28 Oct 2019 17:58:22 +0000 (10:58 -0700)
commit18824d25d8aa8727d9f64f8002f2533d57627bd5
treeb53d65ebfcd2a4e0b52401e9a685ab183452ad99
parent3f345732b4f88e8d0d302470929cbe33d65a7435
[LV] Interleaving should not exceed estimated loop trip count.

Currently we may do iterleaving by more than estimated trip count
coming from the profile or computed maximum trip count. The solution is to
use "best known" trip count instead of exact one in interleaving analysis.

Patch by Evgeniy Brevnov.

Differential Revision: https://reviews.llvm.org/D67948
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/test/Transforms/LoopVectorize/X86/no_fpmath_with_hotness.ll