[PATCH] D119319: [AArch64] Emit TBAA metadata for SVE load/store intrinsics

Sander de Smalen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 11 00:18:07 PST 2022


sdesmalen added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp:888
   if (isAllActivePredicate(Pred)) {
-    Builder.CreateStore(VecOp, VecPtr);
+    auto *Store = Builder.CreateStore(VecOp, VecPtr);
+    Store->copyMetadata(II);
----------------
paulwalker-arm wrote:
> If I'm nit picking you use `auto` here but then choose the explicit return type (i.e. `CallInst`) for the MaskedStore local. Is there a reason for this or just muscle memory?
> Is there a reason for this or just muscle memory?
I initially assumed the IRBuilder's result was a `Value*` because that's what most of its methods return, so wrote `auto *Store = cast<Storeinst>(Builder.CreateStore(...))`. When I realised it wasn't required, I remove the cast, but not the `auto`. I changed the code for LD1 after fixing ST1, hence the inconsistency.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D119319



More information about the llvm-commits mailing list