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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|unassigned at gcc dot gnu.org      |pinskia at gcc dot 
gnu.org
             Status|NEW                         |ASSIGNED

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
So r13-6618-g0b3c630fcc4406 changed it for integral types, we won't form fma in
this case anyways.  But with a multiple of power of 2, forming an fma is
actually better.

I am going to look into this further, maybe a target hook to see if you should
form one which normally returns true for most except:
+  if (ANY_INTEGRAL_TYPE_P (type)
+      && !has_single_use (mul_result))
+    return false;

And then aarch64 has a special one for scalar integral types to allow forming
for power of 2 multiples too ...

Mine for now. But I am not sure I will get to it for GCC 16 though. Let's see.

Reply via email to