* [Bug c++/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
@ 2004-02-06 7:46 ` tjw at omnigroup dot com
2004-02-06 7:50 ` [Bug c++/14042] C++ abstraction penalty is high in simple Altivec cases tjw at omnigroup dot com
` (19 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: tjw at omnigroup dot com @ 2004-02-06 7:46 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From tjw at omnigroup dot com 2004-02-06 07:46 -------
Created an attachment (id=5689)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=5689&action=view)
Test case
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug c++/14042] C++ abstraction penalty is high in simple Altivec cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
2004-02-06 7:46 ` [Bug c++/14042] " tjw at omnigroup dot com
@ 2004-02-06 7:50 ` tjw at omnigroup dot com
2004-02-06 7:53 ` tjw at omnigroup dot com
` (18 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: tjw at omnigroup dot com @ 2004-02-06 7:50 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From tjw at omnigroup dot com 2004-02-06 07:49 -------
I forgot to mention that the compile line was:
$PREFIX/bin/g++ -mdynamic-no-pic -fno-exceptions -O3 -maltivec -fstrict-aliasing obj.cpp -S
-o obj-34.s
Also, I did try this with scalar instead of vector values and the extraneous load/stores are NOT
present, so this does look to be related to Altivec somehow.
--
What |Removed |Added
----------------------------------------------------------------------------
Summary|C++ abstraction penalty is |C++ abstraction penalty is
|high in simple cases |high in simple Altivec cases
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug c++/14042] C++ abstraction penalty is high in simple Altivec cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
2004-02-06 7:46 ` [Bug c++/14042] " tjw at omnigroup dot com
2004-02-06 7:50 ` [Bug c++/14042] C++ abstraction penalty is high in simple Altivec cases tjw at omnigroup dot com
@ 2004-02-06 7:53 ` tjw at omnigroup dot com
2004-02-06 8:00 ` [Bug optimization/14042] C++ abstraction penalty is high in simple cases pinskia at gcc dot gnu dot org
` (17 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: tjw at omnigroup dot com @ 2004-02-06 7:53 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |pessimizes-code
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (2 preceding siblings ...)
2004-02-06 7:53 ` tjw at omnigroup dot com
@ 2004-02-06 8:00 ` pinskia at gcc dot gnu dot org
2004-02-06 15:05 ` segher at kernel dot crashing dot org
` (16 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-02-06 8:00 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-02-06 08:00 -------
Confirmed, it is not just altivec which has this problem, for most cases this is fixed on the tree-ssa but
this is not for some reason:
Cannot scalarize variable s1 because it must live in memory
Cannot scalarize variable s2 because it must live in memory
Cannot scalarize variable MT.1660 because it must live in memory
For some reason:
this_26 = &s1;
T.1644_27 = this_26->p1;
T.1645_28 = this_26->p2;
is not translated before sra which causes it not to be optimized on the tree-ssa.
Here is the inner loop on the tree-ssa, it is worse than before:
L21:
addi r10,r1,-144
vaddfp v1,v9,v10
lvx v0,r10,r0
lvx v13,r10,r2
vaddfp v12,v13,v0
stvx v1,r10,r11
vmaddfp v9,v1,v9,v10
vsubfp v10,v1,v10
vsubfp v11,v12,v0
stvx v12,r10,r9
vmaddfp v13,v12,v13,v0
stvx v11,r10,r0
stvx v13,r10,r2
bdnz L21
--
What |Removed |Added
----------------------------------------------------------------------------
Severity|normal |enhancement
Status|UNCONFIRMED |NEW
Component|c++ |optimization
Ever Confirmed| |1
Known to fail| |tree-ssa
Last reconfirmed|0000-00-00 00:00:00 |2004-02-06 08:00:55
date| |
Summary|C++ abstraction penalty is |C++ abstraction penalty is
|high in simple Altivec cases|high in simple cases
Target Milestone|--- |tree-ssa
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (3 preceding siblings ...)
2004-02-06 8:00 ` [Bug optimization/14042] C++ abstraction penalty is high in simple cases pinskia at gcc dot gnu dot org
@ 2004-02-06 15:05 ` segher at kernel dot crashing dot org
2004-02-06 16:57 ` tjw at omnigroup dot com
` (15 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: segher at kernel dot crashing dot org @ 2004-02-06 15:05 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From segher at kernel dot crashing dot org 2004-02-06 15:05 -------
There is no way the compiler can tell that s1 and s2
are not actually the same object.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (4 preceding siblings ...)
2004-02-06 15:05 ` segher at kernel dot crashing dot org
@ 2004-02-06 16:57 ` tjw at omnigroup dot com
2004-02-09 10:52 ` segher at kernel dot crashing dot org
` (14 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: tjw at omnigroup dot com @ 2004-02-06 16:57 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From tjw at omnigroup dot com 2004-02-06 16:57 -------
s1 and s2 are different objects since they are on the stack. 'inS1' and 'inS2' could be the same
object since they are passed by reference, but that is immaterial here since they are copied into the
stack allocated objects and then written over with the results after the loop. That is, inside the
loop, only stack allocated objects are used and it should be easy to prove that they are not the
same object.
Maybe you are saying that the compiler doesn't currently keep track of whether they are different
objects?
Also, I believe this bug persists if you change the signature to:
void iterate_bad(State inS1, State inS2, unsigned int n)
... and what is even more interesting is that even though the function doesn't produce any useful
work once that is done (assuming inlining takes effect) and the whole function could be replaced by
a 'blr', it isn't (I think I only tried this on 3.4, YMMV on tree-ssa).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (5 preceding siblings ...)
2004-02-06 16:57 ` tjw at omnigroup dot com
@ 2004-02-09 10:52 ` segher at kernel dot crashing dot org
2004-02-09 19:08 ` pinskia at gcc dot gnu dot org
` (13 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: segher at kernel dot crashing dot org @ 2004-02-09 10:52 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From segher at kernel dot crashing dot org 2004-02-09 10:52 -------
Erm, yeah. Need more coffee. Or learn C++. I'll take the coffee ;-)
Maybe the compiler decided it doesn't need the temporaries s1, s2
and uses insP1,2 directly? I can't really tell from the code, without
seeing the loop setup etc.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (6 preceding siblings ...)
2004-02-09 10:52 ` segher at kernel dot crashing dot org
@ 2004-02-09 19:08 ` pinskia at gcc dot gnu dot org
2004-02-20 2:54 ` dberlin at gcc dot gnu dot org
` (12 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-02-09 19:08 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-02-09 19:08 -------
Just a note here for Segher, the structs should be copied before the loop and copied
back after the loop so aliasing problems and such should not matter at all and gcc should
optimize this code which it does for the scaler version but not on the tree level which will
help the vector version.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (7 preceding siblings ...)
2004-02-09 19:08 ` pinskia at gcc dot gnu dot org
@ 2004-02-20 2:54 ` dberlin at gcc dot gnu dot org
2004-02-20 2:56 ` dberlin at gcc dot gnu dot org
` (11 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: dberlin at gcc dot gnu dot org @ 2004-02-20 2:54 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dberlin at gcc dot gnu dot org 2004-02-20 02:54 -------
tree-ssa has one memcpy call on the C version,
The whole inner loop looks like:
L7:
vmaddfp v13,v11,v1,v12
vsubfp v0,v11,v12
vaddfp v1,v1,v12
vaddfp v11,v13,v0
vsubfp v12,v1,v0
vmaddfp v1,v1,v13,v0
bdnz L7
L6:
IE best it can do.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (8 preceding siblings ...)
2004-02-20 2:54 ` dberlin at gcc dot gnu dot org
@ 2004-02-20 2:56 ` dberlin at gcc dot gnu dot org
2004-03-03 5:52 ` pinskia at gcc dot gnu dot org
` (10 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: dberlin at gcc dot gnu dot org @ 2004-02-20 2:56 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dberlin at gcc dot gnu dot org 2004-02-20 02:56 -------
I should note that it generates such good code because it scalarizes the structures on tree-ssa on the C
version, but not on the C++ version.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (9 preceding siblings ...)
2004-02-20 2:56 ` dberlin at gcc dot gnu dot org
@ 2004-03-03 5:52 ` pinskia at gcc dot gnu dot org
2004-03-06 4:00 ` tjw at omnigroup dot com
` (9 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-03-03 5:52 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-03-03 05:52 -------
This is now fixed on the tree-ssa so suspending.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |SUSPENDED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (10 preceding siblings ...)
2004-03-03 5:52 ` pinskia at gcc dot gnu dot org
@ 2004-03-06 4:00 ` tjw at omnigroup dot com
2004-03-06 4:08 ` pinskia at gcc dot gnu dot org
` (8 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: tjw at omnigroup dot com @ 2004-03-06 4:00 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From tjw at omnigroup dot com 2004-03-06 04:00 -------
This still doesn't produce the same code as the C version. I now get:
L11:
vaddfp v0,v11,v13
addi r2,r2,1
vaddfp v1,v10,v12
cmplw cr7,r2,r5
vmaddfp v8,v0,v11,v13
vmaddfp v6,v1,v10,v12
vsubfp v9,v0,v13
vsubfp v7,v1,v12
vor v11,v8,v8
vor v10,v6,v6
vor v13,v9,v9
vor v12,v7,v7
blt+ cr7,L11
note the extra useless copies at the end of the loop.
If you'd like me to enter a new bug on this (since the title is now incorrect, I guess), just let me know.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|SUSPENDED |NEW
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (11 preceding siblings ...)
2004-03-06 4:00 ` tjw at omnigroup dot com
@ 2004-03-06 4:08 ` pinskia at gcc dot gnu dot org
2004-05-13 20:25 ` [Bug tree-optimization/14042] " pinskia at gcc dot gnu dot org
` (7 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-03-06 4:08 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-03-06 04:08 -------
Yes please file a new bug, the bug is that the register allocator sucks in GCC as of right now, with
-fnew-ra (an experimental register allocator) gives:
L11:
addi r2,r2,1
vaddfp v1,v11,v13
vaddfp v0,v12,v10
cmplw cr7,r2,r9
vmaddfp v11,v1,v11,v13
vmaddfp v12,v0,v12,v10
vsubfp v13,v1,v13
vsubfp v10,v0,v10
blt+ cr7,L11
--
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |SUSPENDED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug tree-optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (12 preceding siblings ...)
2004-03-06 4:08 ` pinskia at gcc dot gnu dot org
@ 2004-05-13 20:25 ` pinskia at gcc dot gnu dot org
2004-05-16 23:46 ` tjw at omnigroup dot com
` (6 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-05-13 20:25 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-05-13 11:37 -------
Fixed for 3.5.0 by the merge of the tree-ssa.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|SUSPENDED |RESOLVED
Component|rtl-optimization |tree-optimization
Resolution| |FIXED
Target Milestone|tree-ssa |3.5.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug tree-optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (13 preceding siblings ...)
2004-05-13 20:25 ` [Bug tree-optimization/14042] " pinskia at gcc dot gnu dot org
@ 2004-05-16 23:46 ` tjw at omnigroup dot com
2004-05-16 23:59 ` pinskia at gcc dot gnu dot org
` (5 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: tjw at omnigroup dot com @ 2004-05-16 23:46 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From tjw at omnigroup dot com 2004-05-15 23:23 -------
This actually looks worse now. Taking the original obj.cpp file and compiling with a fresh checkout of
mainline after the merge of tree-ssa, I get the following for iterate_ok:
L4:
vaddfp v0,v13,v1
addi r9,r1,-96
vmaddfp v13,v0,v13,v1
stvx v0,r9,r0
vsubfp v1,v0,v1
bdnz L4
Note that this used to have no memory operations in the inner loop and now it looks like its
repetitively storing the same vector to the stack.
Then, for iterate_bad I get:
L16:
addi r10,r1,-144
vaddfp v1,v9,v10
lvx v0,r10,r0
lvx v13,r10,r2
vaddfp v12,v13,v0
stvx v1,r10,r11
vmaddfp v9,v1,v9,v10
vsubfp v10,v1,v10
vsubfp v11,v12,v0
stvx v12,r10,r9
vmaddfp v13,v12,v13,v0
stvx v11,r10,r0
stvx v13,r10,r2
bdnz L16
This is still chock full of unneeded memory operations.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|FIXED |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug tree-optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (14 preceding siblings ...)
2004-05-16 23:46 ` tjw at omnigroup dot com
@ 2004-05-16 23:59 ` pinskia at gcc dot gnu dot org
2004-05-17 13:30 ` pinskia at gcc dot gnu dot org
` (4 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-05-16 23:59 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-05-15 23:39 -------
Confirmed, will be fixed by my cast pass which I will be submitting soon.
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |pinskia at gcc dot gnu dot
|dot org |org
Status|REOPENED |ASSIGNED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug tree-optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (15 preceding siblings ...)
2004-05-16 23:59 ` pinskia at gcc dot gnu dot org
@ 2004-05-17 13:30 ` pinskia at gcc dot gnu dot org
2004-05-27 8:02 ` pinskia at gcc dot gnu dot org
` (3 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-05-17 13:30 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-05-16 23:25 -------
Simple patch here which fixes the bug: <http://gcc.gnu.org/ml/gcc-patches/2004-05/
msg00991.html>.
--
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |patch
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug tree-optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (16 preceding siblings ...)
2004-05-17 13:30 ` pinskia at gcc dot gnu dot org
@ 2004-05-27 8:02 ` pinskia at gcc dot gnu dot org
2004-06-02 4:41 ` pinskia at gcc dot gnu dot org
` (2 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-05-27 8:02 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|3.5.0 |---
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug tree-optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (17 preceding siblings ...)
2004-05-27 8:02 ` pinskia at gcc dot gnu dot org
@ 2004-06-02 4:41 ` pinskia at gcc dot gnu dot org
2004-06-02 18:57 ` cvs-commit at gcc dot gnu dot org
2004-06-02 18:57 ` pinskia at gcc dot gnu dot org
20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-06-02 4:41 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-06-02 04:41 -------
Much newer and simpler patch: <http://gcc.gnu.org/ml/gcc-patches/2004-06/msg00087.html>.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug tree-optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (18 preceding siblings ...)
2004-06-02 4:41 ` pinskia at gcc dot gnu dot org
@ 2004-06-02 18:57 ` cvs-commit at gcc dot gnu dot org
2004-06-02 18:57 ` pinskia at gcc dot gnu dot org
20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-06-02 18:57 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2004-06-02 18:56 -------
Subject: Bug 14042
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: pinskia@gcc.gnu.org 2004-06-02 18:56:54
Modified files:
gcc : ChangeLog tree-ssa.c
gcc/testsuite : ChangeLog
Added files:
gcc/testsuite/g++.dg/tree-ssa: ssa-cast-1.C ssa-sra-1.C
ssa-sra-2.C
Log message:
2004-06-02 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-optimization/14736
* g++.dg/tree-ssa/ssa-cast-1.C: New Test.
PR tree-optimization/14042
* g++.dg/tree-ssa/ssa-sra-1.C: New Test.
PR tree-optimization/14729
* g++.dg/tree-ssa/ssa-sra-2.C: New Test.
2004-06-02 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-optimization/14042
PR tree-optimization/14729
PR tree-optimization/14736
* tree-ssa.c: Check the type which the pointer points to
instead of the pointer types.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.3822&r2=2.3823
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa.c.diff?cvsroot=gcc&r1=2.3&r2=2.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.3804&r2=1.3805
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/tree-ssa/ssa-cast-1.C.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/tree-ssa/ssa-sra-1.C.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/tree-ssa/ssa-sra-2.C.diff?cvsroot=gcc&r1=NONE&r2=1.1
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug tree-optimization/14042] C++ abstraction penalty is high in simple cases
2004-02-06 7:45 [Bug c++/14042] New: C++ abstraction penalty is high in simple cases tjw at omnigroup dot com
` (19 preceding siblings ...)
2004-06-02 18:57 ` cvs-commit at gcc dot gnu dot org
@ 2004-06-02 18:57 ` pinskia at gcc dot gnu dot org
20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-06-02 18:57 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-06-02 18:57 -------
Fixed now on the mainline.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
Target Milestone|--- |3.5.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14042
^ permalink raw reply [flat|nested] 22+ messages in thread