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

Sander de Smalen via Phabricator via cfe-commits cfe-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.

  rG LLVM Github Monorepo



More information about the cfe-commits mailing list