Luke Lau 2a1716dec5 [LegalizeTypes][VP] Widen load/store of fixed length vectors to VP ops
If we have a load/store with an illegal fixed length vector result type that
needs widened, e.g. `x:v6i32 = load p`
Instead of just widening it to: `x:v8i32 = load p`
We can widen it to the equivalent VP operation and set the EVL to the
exact number of elements needed: `x:v8i32 = vp_load a, b, mask=true, evl=6`
Provided that the target supports vp_load/vp_store on the widened type.

Scalable vectors are already widened this way where possible, so this
largely reuses the same logic.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D148713
2023-06-12 10:21:04 +01:00
..
2021-08-04 12:45:18 -07:00
2023-03-29 20:55:51 +01:00
2023-03-21 18:52:05 -07:00
2023-03-21 18:52:05 -07:00
2023-03-23 12:32:25 +00:00