[PATCH] D99355: Implementation of intrinsic and SDNode definitions for VP load, store, gather, scatter.

Simon Moll via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 29 05:01:11 PDT 2021


simoll added a comment.

In D99355#2653260 <https://reviews.llvm.org/D99355#2653260>, @vkmr wrote:

> Thanks Hussain for this patch!
>  For now I have a couple of minor comments, I will take a deeper look later.
> Also, I don't quite understand yet how VP handles (or plans to handle) specifying alignment parameter. Does it need VPBuilder (not to be confused with VPlan VPBuilder!) for that? Would it make sense to add the Alignment parameter to VP load/store/scatter/gather intrinsics (much like their masked counterparts) for now, unless there is already a way to specify that?

We should use the `align(N)` attribute on pointers to convey the alignment. That's what we do in the LLVM for SX-Aurora stack (https://github.com/sx-aurora-dev/llvm-project/blob/683f41073689262a8a493cce7caba13bbccea56c/llvm/test/CodeGen/VE/Packed/vp_load_packed.ll#L80) . I'd say that the alignment parameter in the pre-existing `masked.load/store` simply predates that attribute.
And yes, setting alignment is something that the `VPBuilder` or what's-it-called-after-bikeshedding would take care of for you.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D99355



More information about the llvm-commits mailing list