[PATCH] D133421: [AArch64] break non-temporal loads over 256 into 256-loads and a smaller load

Zain Jaffal via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 8 08:22:49 PDT 2022


zjaffal added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:17829
+
+  unsigned PtrOffset = 256;
+  MVT NewVT =
----------------
fhahn wrote:
> zjaffal wrote:
> > fhahn wrote:
> > > Could you add a comment here illustrating what kind of DAG nodes we create to replace the original load?
> > > 
> > > 
> > > It would also be good to document the motivation for special handling for non-temporal loads here.
> > Would the motivation for the special handling for non-temporal loads be something like: 
> > We have 256-bit non-temporal load so it might be good to utilise them when having large load instructions? 
> > We have 256-bit non-temporal load so it might be good to utilise them when having large load instructions?
> 
> Yes something like that, maybe: Try to beak up non-temporal stores into blocks of 256 bits early, so the LDNPQ can be selected.
> 
> Might be good to add this as comment for the whole function.
You can check the comments I added. I will add a comment for the whole function as well


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D133421



More information about the llvm-commits mailing list