This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/70048] [6 Regression][AArch64] Inefficient local array addressing
- From: "rth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 07 Mar 2016 21:27:36 +0000
- Subject: [Bug target/70048] [6 Regression][AArch64] Inefficient local array addressing
- Auto-submitted: auto-generated
- References: <bug-70048-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70048
Richard Henderson <rth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #37886|0 |1
is obsolete| |
--- Comment #10 from Richard Henderson <rth at gcc dot gnu.org> ---
Created attachment 37890
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37890&action=edit
second patch
Still going through full testing, but I wanted to post this
before the end of the day.
This update includes a virt_or_elim_regno_p, as discussed in #c7/#c8.
It also updates aarch64_legitimize_address to treat R0+R1+C as a special
case of R0+(R1*S)+C. All of the arguments wrt scaling apply to unscaled
indices as well.
As a minor point, doing some of the expansion in a slightly different
order results in less garbage rtl being generated in the process.