[PATCH] D147451: [CodeGen] Enable AArch64 SVE FCMLA/FCADD instruction generation in ComplexDeinterleaving

mgabka via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 6 04:57:59 PDT 2023


mgabka added inline comments.


================
Comment at: llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp:23
+// deinterleaving can be represented by vector.interleave2 and
+// vectore.deinterleave2 intrinsics. Scalable vectors can be represented only by
+// these intrinsics, whereas, fixed-width vectors are recognized for both
----------------
nit: typo


================
Comment at: llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp:25
+// these intrinsics, whereas, fixed-width vectors are recognized for both
+// Shuffle operations and intrinsics.
 //
----------------
nit: probably does not need to start with capital letter, maybe using "shufflevector instruction" would be more clear


================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:24460
+bool AArch64TargetLowering::isComplexDeinterleavingSupported(
+    bool UseScalable) const {
+  if (UseScalable)
----------------
I think it could be worth to add extra run lines to the existing aarch64 tests which operate on fixed width vectors, to make sure that adding +sve does not stop generation of fcmla there. What do you think?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D147451



More information about the llvm-commits mailing list