[Bug tree-optimization/126602] [17 Regression] error: invalid types in nop conversion with SVE fnms since r17-527-gca2920882be

"tnfchris at gcc dot gnu.org via Gcc-bugs" <[email protected]> Mon, 03 Aug 2026 11:34:06 +0000
Newsgroups gmane.comp.gcc.bugs
Message-ID <[email protected]/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D126602

Tamar Christina <tnfchris at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |ASSIGNED
            Summary|[17 Regression] error:      |[17 Regression] error:
                   |invalid types in nop        |invalid types in nop
                   |conversion with SVE fnms    |conversion with SVE fnms
                   |                            |since r17-527-gca2920882be
           Assignee|unassigned at gcc dot gnu.org      |tnfchris at gcc dot=
 gnu.org
   Last reconfirmed|                            |2026-08-03

--- Comment #1 from Tamar Christina <tnfchris at gcc dot gnu.org> ---
This is due to

Matching expression match.pd:159, gimple-match-10.cc:33
Matching expression match.pd:159, gimple-match-10.cc:33
Applying pattern match.pd:10328, gimple-match-5.cc:8685
gimple_simplified to _15 =3D (vector(8) unsigned int) a_6;
_16 =3D (vector(8) unsigned int) _13;
_17 =3D (vector(8) unsigned int) _1;
_18 =3D .FNMA (_15, _16, _17);
_3 =3D (svfloat32_t __attribute__((arm_sve_vector_bits(256)))) _18;
Generated FMA _3 =3D (svfloat32_t __attribute__((arm_sve_vector_bits(256)))=
) _18;

the condition on the pattern is wrong and allowed a float type through.

Testing a patch.=