[PATCH] D129623: [AArch64][SVE] Fold fadda(ptrue, x, select(mask, y, -0.0)) into fadda(mask, x, y)

Paul Walker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 13 16:39:43 PDT 2022


paulwalker-arm added inline comments.


================
Comment at: llvm/lib/Target/AArch64/SVEInstrFormats.td:5129-5134
+  def : SVE_3_Op_Pat_Pred_FPSelMinusZero<nxv2f32, op, nxv2i1, nxv2f32, nxv2f32, f32,
+                                                            !cast<Instruction>(NAME # _S)>;
+  def : SVE_3_Op_Pat_Pred_FPSelMinusZero<nxv4f32, op, nxv4i1, nxv4f32, nxv4f32, f32,
+                                                            !cast<Instruction>(NAME # _S)>;
+  def : SVE_3_Op_Pat_Pred_FPSelMinusZero<nxv2f64, op, nxv2i1, nxv2f64, nxv2f64, f64,
+                                                            !cast<Instruction>(NAME # _D)>;
----------------
It is possible to change `AArch64fadda_p` into a PatFrags to remove the need for these? See `AArch64bic_node` and `AArch64bic`.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D129623



More information about the llvm-commits mailing list