Now with MVE being added, we can add the vector addressing modes for it. These are generally imm7 multiplied by the size of the type being loaded/stored.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
llvm/lib/Target/ARM/ARMISelLowering.cpp | ||
---|---|---|
13305 ↗ | (On Diff #203394) | I think it would be cleaner to exit early for floats without support, like we do currently at the start of the function. Then we can have a single switch statement here. |
llvm/lib/Target/ARM/ARMISelLowering.cpp | ||
---|---|---|
13305 ↗ | (On Diff #203394) | OK. yeah. I see what you mean. That sounds like a good idea. |
Comment Actions
Cleanup and added mve (nofp) to the tests.
Worth noting that I'm pretty sure we do have sensible vector load instructions for floats without mve.fp (they are the same as integer loads). We don't generate them at the moment, and this more accurately models the mess that we do create (i.e. it's expensive).