[llvm] [AArch64] Use +0.0 for accumulator for FMUL -> BFMLAL lowering in more cases (PR #174423)

Sander de Smalen via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 21 08:23:50 PST 2026


================
@@ -7734,7 +7734,9 @@ SDValue AArch64TargetLowering::LowerFMUL(SDValue Op, SelectionDAG &DAG) const {
                                     : Intrinsic::aarch64_neon_bfmlalt);
 
   EVT AccVT = UseSVEBFMLAL ? MVT::nxv4f32 : MVT::v4f32;
-  SDValue Zero = DAG.getNeutralElement(ISD::FADD, DL, AccVT, Op->getFlags());
+  bool IgnoreZeroSign =
+      Op->getFlags().hasNoSignedZeros() || DAG.canIgnoreSignBitOfZero(Op);
----------------
sdesmalen-arm wrote:

Fine with me, makes sense to do a follow-up patch as there's indeed a few more uses that need fixing up.

https://github.com/llvm/llvm-project/pull/174423


More information about the llvm-commits mailing list