On Tue, 24 Jun 2025, Richard Biener wrote:
> On Tue, Jun 24, 2025 at 1:18 PM Alexander Monakov <amona...@ispras.ru> wrote: > > > > > > On Fri, May 23, 2025 at 2:31 PM Alexander Monakov <amona...@ispras.ru> > > > > wrote: > > > > > > > > > > In PR 105965 we accepted a request to form FMA instructions when the > > > > > source code is using a narrow generic vector that contains just one > > > > > element, corresponding to V1SF or V1DF mode, while the backend does > > > > > not > > > > > expand fma patterns for such modes. > > > > > > > > > > For this to work under -ffp-contract=on, we either need to modify > > > > > backends, or emulate such degenerate-vector FMA via scalar FMA in > > > > > tree-vect-generic. Do the latter. > > > > > > > > Can you instead apply the lowering during gimplification? That is > > > > because > > > > having an unsupported internal-function in the IL the user could not > > > > have > > > > emitted directly is somewhat bad. I thought the vector lowering could > > > > be generalized for more single-argument internal functions but then no > > > > such unsupported calls should exist in the first place. > > > > > > Sure, like below? Not fully tested yet. > > > > Ping — now bootstrapped and regtested. > > LGTM. Thanks! Any thoughts on the other patch in the thread, about flipping -ffp-contract from =fast to =on? Alexander