https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80481

Vladimir Makarov <vmakarov at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |vmakarov at gcc dot gnu.org

--- Comment #2 from Vladimir Makarov <vmakarov at gcc dot gnu.org> ---
  I've started to work on this.  The problem is not in LRA.  It is driven by
IRA decision which assigns different registers to pseudos should be the same in
fma_fnmadd_v16sf.  This results in generation of the additional move insns.

  IRA is driven by many heuristics which sometimes contradict each other and
for this particular case the result is not good.  I'll try to find what
heuristics are responsible for this.  As heuristics affect the generated code
performance, the fix might take a lot of time because besides patch creation
the fix will need a performance evaluation probably on a few targets.

Reply via email to