[PATCH] D149967: [AArch64][SVE] Enable shouldFoldSelectWithIdentityConstant for SVE.

Paul Walker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 15 03:40:52 PDT 2023


paulwalker-arm accepted this revision.
paulwalker-arm added a comment.
This revision is now accepted and ready to land.

Fair enough.  It still seems a bit arbitrary but I do agree that it'll make it easier to isel without having to explicitly handle the various floating point identity values. Please don't forget about the bug fix.



================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:15324
+    unsigned BinOpcode, EVT VT) const {
+  return Subtarget->hasSVE() && VT.isScalableVector() && isTypeLegal(VT);
+}
----------------
This needs to be `hasSVEorSME` because we use the same patterns for SME.  That said, I'm wondering if it can be emitted altogether given knowing VT is a legal scalable vector should be sufficient.


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

https://reviews.llvm.org/D149967



More information about the llvm-commits mailing list