[Bug tree-optimization/126465] [16/17 Regression] Wrong code with IFN_COND_FMA folding on SVE
ktkachov at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jul 29 10:20:41 GMT 2026
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126465
--- Comment #5 from ktkachov at gcc dot gnu.org ---
(In reply to ktkachov from comment #4)
> (In reply to Drea Pinski from comment #1)
> > r16-6508-g772b847d99d5e3 .
> >
> >
> > (simplify
> > (negate (fmas@3 @4 @0 @1 @2 @5))
> > (if (!HONOR_SIGN_DEPENDENT_ROUNDING (type) && single_use (@3))
> > (IFN_COND_FNMS @4 @0 @1 @2 @5))))
> >
> >
> > The negate also applies to the other non-fma part while afterwards it does
> > not.
> >
> > (simplify
> > (negate (IFN_FMS@3 @4 @0 @1 @2 @5))
> > (if (!HONOR_SIGN_DEPENDENT_ROUNDING (type) && single_use (@3))
> > (IFN_COND_FNMA @4 @0 @1 @2 @5)))
> >
>
> More worryingly, why is IFN_FMS taking 4 here when it is a ternary IFN and
> how come genmatch didn't catch it?
"taking 4 operands" I meant to say
More information about the Gcc-bugs
mailing list