This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/33699] [4.3/4.4/4.5/4.6 regression] missing optimization on const addr area store
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 4 Mar 2011 12:13:03 +0000
- Subject: [Bug middle-end/33699] [4.3/4.4/4.5/4.6 regression] missing optimization on const addr area store
- Auto-submitted: auto-generated
- References: <bug-33699-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33699
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target|mips*-* powerpc*-*-* |mips*-* powerpc*-*-*
| |x86_64-*-*
Last reconfirmed|2010-03-12 23:56:39 |2011-03-04 23:56:39
Known to fail| |4.6.0
--- Comment #11 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-03-04 12:12:27 UTC ---
Even on x86 it's smaller to not replicate 0xDEAD and to use
offset addressing, like
0000000000000000 <f>:
0: b8 d0 fe 00 00 mov $0xfed0,%eax
5: bb ad de 00 00 mov $0xdead,%ebx
a: 89 18 mov %ebx,(%rax)
c: 89 58 08 mov %ebx,0x8(%rax)
f: 89 58 10 mov %ebx,0x10(%rax)
12: 89 58 18 mov %ebx,0x18(%rax)
15: c3 retq
instead of the generated
0: c7 04 25 d0 fe 00 00 movl $0xdead,0xfed0
7: ad de 00 00
b: c7 04 25 d8 fe 00 00 movl $0xdead,0xfed8
12: ad de 00 00
16: c7 04 25 e0 fe 00 00 movl $0xdead,0xfee0
1d: ad de 00 00
21: c7 04 25 e8 fe 00 00 movl $0xdead,0xfee8
28: ad de 00 00
2c: c3 retq