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

--- Comment #23 from Bill Pringlemeir <bpringlemeir at gmail dot com> ---
(In reply to Bill Pringlemeir from comment #22)
> The good ARM assembler uses the 'mla' instruction which is a 'multiply and
> accumulate'.  Since this is not recognized, the multiply result needs a
> temporary register to do the add with and I think this cause the extra
> registers.  I believe you should look to see why the 'mla' is not matched. 
> I don't know if the x86 has an op-code like this.

Er, I see.  The 'mla' comes as a result of seeing that the array index
calculations can be reused.  Sorry for the noise.

Reply via email to