This patch is part of a proof of concept for vectorising a loop using
scalable vectors. The patch is shared for reference and there is no
expectation for this patch to land in the current form.
Some of the changes include:
- Change VFRange to use ElementCount for Start, End.
- Change buildVPlans to take an ElementCount
- Change buildVPlansWithVPRecipes to take an ElementCount
- Change LoopVectorizationCostModel::computeMaxVF to take an ElementCount.
- Change LoopVectorizationCostModel::computeFeasibleMaxVF to return an ElementCount.
This patch is NFC for fixed-width vectors.