--- Comment #7 from zippel at gcc dot gnu dot org 2008-04-01 17:53 ---
Actually for the PCH issue there is a fix:
http://gcc.gnu.org/ml/gcc-patches/2007-09/msg01607.html
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25343
--- Comment #3 from zippel at gcc dot gnu dot org 2007-09-07 14:00 ---
This now fixed on trunk with r128191/r128208.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13021
--- Comment #19 from zippel at gcc dot gnu dot org 2007-07-20 17:06 ---
There is another small source example inbetween, which is used to produce all
code examples following it. :)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32698
--- Comment #17 from zippel at gcc dot gnu dot org 2007-07-20 16:21 ---
Which claim?
It's exactly the third code example in comment #13
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32698
--- Comment #15 from zippel at gcc dot gnu dot org 2007-07-20 11:58 ---
In the examples I used -fomit-frame-pointer.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32698
--- Comment #13 from zippel at gcc dot gnu dot org 2007-07-19 18:27 ---
The initial test case is part of the missed optimization. For example current
stable Debian gcc (4.1.2 20061115) produces code like this:
movl4(%esp), %eax
movl8(%esp), %edx
leal
--- Comment #11 from zippel at gcc dot gnu dot org 2007-07-18 12:56 ---
This bug is not fixed yet.
Current gcc still generates:
return (*(p + (i + 2) * 4) + *(p + (i + 1) * 4)) + *(p + (i + 3) * 4);
1. it still fails to extract the common expression at tree level.
2. it generates
--- Comment #8 from zippel at gcc dot gnu dot org 2007-07-09 17:42 ---
(In reply to comment #7)
> On the backend side we have the fwprop pass which is supposed to do
> addressing mode selection and the backend which is supposed to provide
> accurate costs for them.
Let
--- Comment #6 from zippel at gcc dot gnu dot org 2007-07-09 15:27 ---
(In reply to comment #5)
> as you suggest creates worse assembly (look at the extra shift)
>
> foo:
> pushl %ebp
> movl%esp, %ebp
> movl12(%ebp), %ecx
>
--- Comment #4 from zippel at gcc dot gnu dot org 2007-07-09 14:40 ---
IMHO something like this should be generated:
p2 = p + (i * 4);
return (*(p2 + 4) + *(p2 + 8) + *(p2 + 12));
Right now not even the (i*4) expression is removed from the last instruction
anymore.
--
http
ficient pointer expression
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: zippel at gcc dot gnu dot org
G
ation
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: zippel at gcc dot gnu dot org
GCC host triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32553
12 matches
Mail list logo