This is an archive of the discontinued LLVM Phabricator instance.

[LV] Add a UsePredicatedEpilogue epilog vectorization scheme option
Needs ReviewPublic

Authored by dmgreen on Mar 13 2023, 4:58 AM.

Details

Summary

This attempt to add a UsePredicatedEpilogue option for allowing unpredicated vector bodies with a predicated remainder. This involves creating vplans both with and without predication, and allowing unpredicated plans in the loop body with predicated plans in the remainder.

The preferPredicateOverEpilogue TTI hook has been changed to getPreferredVectorPredication, so that targets can opt into different PreferPredicateTy for the given loop. Some of the comments have been reworded to hopefully improve them and match how they are used.

Diff Detail