This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/29294] New: 4.1, 4.2 (possibly 4.0?) not finding postmodify address mode on ARM
- From: "eplondke at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 29 Sep 2006 23:37:32 -0000
- Subject: [Bug tree-optimization/29294] New: 4.1, 4.2 (possibly 4.0?) not finding postmodify address mode on ARM
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
The attached file benefits greatly from the ARM postincrement address mode.
In 4.1.1 and 4.2 20060923, we no longer get postincrement addressing mode,
but (base+4) followed by base = base+4
This leads to an increase in instruction count of 40%.
While the test is of course trivial, I see real code not benefiting from
postmodify quite often while using 4.1.1.
I'm not quite sure if it belongs in tree-optimization, but it comes out of the
expander as separate
(set (reg B) (plus (reg A) (4))
(set (reg C) (plus (reg A) (4))
which is how it ends up in the assembly....
--
Summary: 4.1, 4.2 (possibly 4.0?) not finding postmodify address
mode on ARM
Product: gcc
Version: 4.1.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: eplondke at gmail dot com
GCC host triplet: x86_64-suse-linux
GCC target triplet: arm-unknown-elf
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29294