[PATCH] D111846: [LV] Drop NUW/NSW flags from scalarized instructions that need predication

Roger Ferrer Ibanez via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 18 04:17:23 PDT 2021


rogfer01 added a comment.

Thanks @dcaballe for the patch.  A bit surprising that we didn't notice this earlier but I guess masking does not get used that often.

I think it makes sense to get rid of `nuw` and `nsw` if we are explicitly scalarising something out of its (scalar) predicate.

I understand that alternatives like extending `LoopVectorizationCostModel::isScalarWithPredication` or `VPRecipeBuilder::handleReplication` would be worse. They'd entail the loop to be costed higher or have an extra branch inside the vector loop that we do not seem to need, right?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111846/new/

https://reviews.llvm.org/D111846



More information about the llvm-commits mailing list