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

--- Comment #78 from Kazumoto Kojima <kkojima at gcc dot gnu.org> ---
Created attachment 33813
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=33813&action=edit
a trial patch for the issue c#76

With it, the generated code for c#76 test case looks similar with
the one with non LRA compiler. The total code size regression for
CSiBE is reduced to 0.43%.
The patch introduces a new targetm function legitimize_address_display.
I've tested it on arm thumb with adding a similar new targetm function
to arm.c.  There is only one CSiBE test of which code size is changed
from 400 to 396 at -Os and there are no size changes at -O2 on thumb.
Although arm thumb is better than SH about those base+display addressing
because of 8-bit display for stack pointer register and no R0-ness,
it's a bit surprising to me.

Reply via email to