public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
@ 2003-06-09 15:29 ` pinskia@physics.uc.edu
2003-11-05 7:25 ` pinskia at gcc dot gnu dot org
` (17 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia@physics.uc.edu @ 2003-06-09 15:29 UTC (permalink / raw)
To: gcc-bugs
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
pinskia@physics.uc.edu changed:
What |Removed |Added
----------------------------------------------------------------------------
Severity|major |enhancement
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
2003-06-09 15:29 ` [Bug optimization/8781] Pessimization of functional-style code pinskia@physics.uc.edu
@ 2003-11-05 7:25 ` pinskia at gcc dot gnu dot org
2003-12-01 4:01 ` pinskia at gcc dot gnu dot org
` (16 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2003-11-05 7:25 UTC (permalink / raw)
To: gcc-bugs
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed|2003-08-03 17:52:55 |2003-11-05 07:25:04
date| |
Target Milestone|--- |tree-ssa
------- Additional Comments From pinskia at gcc dot gnu dot org 2003-11-05 07:25 -------
The problem is that GCC does puts objects on the stack too soon, maybe be able to fix
this on the tree-ssa branch.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
2003-06-09 15:29 ` [Bug optimization/8781] Pessimization of functional-style code pinskia@physics.uc.edu
2003-11-05 7:25 ` pinskia at gcc dot gnu dot org
@ 2003-12-01 4:01 ` pinskia at gcc dot gnu dot org
2003-12-01 4:20 ` dberlin at gcc dot gnu dot org
` (15 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2003-12-01 4:01 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2003-12-01 04:01 -------
SRA did not help this either.
--
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed|2003-11-05 07:25:04 |2003-12-01 04:01:24
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (2 preceding siblings ...)
2003-12-01 4:01 ` pinskia at gcc dot gnu dot org
@ 2003-12-01 4:20 ` dberlin at gcc dot gnu dot org
2004-01-20 16:54 ` pinskia at gcc dot gnu dot org
` (14 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: dberlin at gcc dot gnu dot org @ 2003-12-01 4:20 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dberlin at gcc dot gnu dot org 2003-12-01 04:20 -------
This seems more related to references and aliasing than anything else.
Try changing const predicate &pred to const predicate pred, and you'll get:
.globl _Z1xv
.type _Z1xv, @function
_Z1xv:
pushl %ebp
movl %esp, %ebp
subl $8, %esp
call _Z1fv
leave
ret
.size _Z1xv, .-_Z1xv
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (3 preceding siblings ...)
2003-12-01 4:20 ` dberlin at gcc dot gnu dot org
@ 2004-01-20 16:54 ` pinskia at gcc dot gnu dot org
2004-03-03 5:14 ` pinskia at gcc dot gnu dot org
` (13 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-01-20 16:54 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-01-20 16:54 -------
The problem for the tree-ssa is being discused here: <http://gcc.gnu.org/ml/gcc/2004-01/
msg01419.html>.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (4 preceding siblings ...)
2004-01-20 16:54 ` pinskia at gcc dot gnu dot org
@ 2004-03-03 5:14 ` pinskia at gcc dot gnu dot org
2004-03-03 5:46 ` pinskia at gcc dot gnu dot org
` (12 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-03-03 5:14 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-03-03 05:14 -------
I think this is caused by the C++ Front-end, I will look to see my patch to stop lowering
fixes this bug (I think it does).
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |pinskia at gcc dot gnu dot
| |org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (5 preceding siblings ...)
2004-03-03 5:14 ` pinskia at gcc dot gnu dot org
@ 2004-03-03 5:46 ` pinskia at gcc dot gnu dot org
2004-03-08 7:37 ` pinskia at gcc dot gnu dot org
` (11 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-03-03 5:46 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-03-03 05:46 -------
Actually it is not caused by the front-end but it is almost fixed on the tree-ssa now:
pred<D1940> = f;
pred<D1947>.pred = &pred<D1940>;
pred<D1954>.pred = &pred<D1947>;
pred<D1961>.pred = &pred<D1954>;
pred<D1968>.pred = &pred<D1961>;
pred<D1975>.pred = &pred<D1968>;
pred<D1982>.pred = &pred<D1975>;
pred<D1989>.pred = &pred<D1982>;
pred<D1996>.pred = &pred<D1989>;
<D2053> = f ();
Now all we have to do is remove the stores and this would be fixed.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (6 preceding siblings ...)
2004-03-03 5:46 ` pinskia at gcc dot gnu dot org
@ 2004-03-08 7:37 ` pinskia at gcc dot gnu dot org
2004-05-24 6:46 ` [Bug tree-optimization/8781] " pinskia at gcc dot gnu dot org
` (10 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-03-08 7:37 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-03-08 07:37 -------
Looks like I was using a different sources for this because it is not fixed at all.
--
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed|2003-12-17 01:40:02 |2004-03-08 07:37:49
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (7 preceding siblings ...)
2004-03-08 7:37 ` pinskia at gcc dot gnu dot org
@ 2004-05-24 6:46 ` pinskia at gcc dot gnu dot org
2004-05-24 11:08 ` pinskia at gcc dot gnu dot org
` (9 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-05-24 6:46 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-05-23 23:30 -------
Mine, the problem now is there is an extra cast which is wrong, I have a patch to fix this but I need to
convence everyone is correct as the types are the same really.
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |pinskia at gcc dot gnu dot
|dot org |org
Status|NEW |ASSIGNED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (8 preceding siblings ...)
2004-05-24 6:46 ` [Bug tree-optimization/8781] " pinskia at gcc dot gnu dot org
@ 2004-05-24 11:08 ` pinskia at gcc dot gnu dot org
2004-06-02 4:45 ` pinskia at gcc dot gnu dot org
` (8 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-05-24 11:08 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Component|rtl-optimization |tree-optimization
Target Milestone|3.5.0 |---
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (9 preceding siblings ...)
2004-05-24 11:08 ` pinskia at gcc dot gnu dot org
@ 2004-06-02 4:45 ` pinskia at gcc dot gnu dot org
2004-08-23 5:24 ` pinskia at gcc dot gnu dot org
` (7 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-06-02 4:45 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-06-02 04:45 -------
Much newer and simpler patch: <http://gcc.gnu.org/ml/gcc-patches/2004-06/msg00087.html> for
at least the cast problem. But that just gets back to the problem in comment #7. Which I refer to the
lowering problem.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of functional-style code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (10 preceding siblings ...)
2004-06-02 4:45 ` pinskia at gcc dot gnu dot org
@ 2004-08-23 5:24 ` pinskia at gcc dot gnu dot org
2004-08-25 1:57 ` [Bug tree-optimization/8781] Pessimization of C++ (functional) code giovannibajo at libero dot it
` (6 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-08-23 5:24 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-08-23 05:24 -------
Not mine anymore, it is an aliasing issue:
# V_MUST_DEF <pred<D2020>_54>;
pred<D2020> = f<D1558>;
....
# pred<D2024>_97 = V_MAY_DEF <pred<D2024>_72>;
# pred<D2028>_98 = V_MAY_DEF <pred<D2028>_69>;
# pred<D2032>_99 = V_MAY_DEF <pred<D2032>_66>;
# pred<D2036>_100 = V_MAY_DEF <pred<D2036>_63>;
# pred<D2040>_101 = V_MAY_DEF <pred<D2040>_60>;
# pred<D2044>_102 = V_MAY_DEF <pred<D2044>_57>;
# pred<D2048>_103 = V_MAY_DEF <pred<D2048>_49>;
# TMT.31<D2104>_50 = V_MAY_DEF <TMT.31<D2104>_52>;
# TMT.32<D2105>_46 = V_MAY_DEF <TMT.32<D2105>_48>;
# TMT.33<D2106>_42 = V_MAY_DEF <TMT.33<D2106>_44>;
# TMT.34<D2107>_38 = V_MAY_DEF <TMT.34<D2107>_40>;
# TMT.35<D2108>_41 = V_MAY_DEF <TMT.35<D2108>_39>;
# TMT.36<D2109>_47 = V_MAY_DEF <TMT.36<D2109>_45>;
# TMT.37<D2110>_53 = V_MAY_DEF <TMT.37<D2110>_51>;
# TMT.38<D2111>_59 = V_MAY_DEF <TMT.38<D2111>_58>;
# TMT.39<D2112>_62 = V_MAY_DEF <TMT.39<D2112>_61>;
# VUSE <pred<D2020>_54>;
T.26<D2098> = f ();
I wonder if we should not figure out something about function calls again or something else is going
wrong.
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|pinskia at gcc dot gnu dot |unassigned at gcc dot gnu
|org |dot org
Status|ASSIGNED |NEW
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of C++ (functional) code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (11 preceding siblings ...)
2004-08-23 5:24 ` pinskia at gcc dot gnu dot org
@ 2004-08-25 1:57 ` giovannibajo at libero dot it
2004-08-25 13:45 ` dnovillo at gcc dot gnu dot org
` (5 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: giovannibajo at libero dot it @ 2004-08-25 1:57 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From giovannibajo at libero dot it 2004-08-25 01:57 -------
Diego, this is not a regression, but it would be kind to get a quick analysys
of what is going wrong and/or spot enhancement opportunities in alias analysys.
Can you allocate a little time to investigate?
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |dnovillo at gcc dot gnu dot
| |org
Summary|Pessimization of functional-|Pessimization of C++
|style code |(functional) code
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of C++ (functional) code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (12 preceding siblings ...)
2004-08-25 1:57 ` [Bug tree-optimization/8781] Pessimization of C++ (functional) code giovannibajo at libero dot it
@ 2004-08-25 13:45 ` dnovillo at gcc dot gnu dot org
2004-08-25 13:58 ` Diego Novillo
2004-08-25 13:58 ` dnovillo at redhat dot com
` (4 subsequent siblings)
18 siblings, 1 reply; 20+ messages in thread
From: dnovillo at gcc dot gnu dot org @ 2004-08-25 13:45 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dnovillo at gcc dot gnu dot org 2004-08-25 13:45 -------
(In reply to comment #12)
> Diego, this is not a regression, but it would be kind to get a quick analysys
> of what is going wrong and/or spot enhancement opportunities in alias analysys.
> Can you allocate a little time to investigate?
>
The most likely problem is that alias analysis is being tricked into thinking
that &pred escapes because it is being squirreled away into 'pred.pred = &pred'.
Since we don't keep structures in SSA form, we immediately give up on addresses
that are stored inside a structure. Alias analysis sees the store and says 'oh,
I don't know where else that may go so I will just assume that it escapes'.
There's a FIXME in tree-ssa-alias.c precisely because of this.
Implementing a full-fledge escape analysis framework would probably cure this.
There may also be in-between solutions to achieve some of the lower hanging fruit.
Diego.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [Bug tree-optimization/8781] Pessimization of C++ (functional) code
2004-08-25 13:45 ` dnovillo at gcc dot gnu dot org
@ 2004-08-25 13:58 ` Diego Novillo
0 siblings, 0 replies; 20+ messages in thread
From: Diego Novillo @ 2004-08-25 13:58 UTC (permalink / raw)
To: gcc-bugzilla; +Cc: gcc-bugs
On Wed, 2004-08-25 at 09:45, dnovillo at gcc dot gnu dot org wrote:
> Implementing a full-fledge escape analysis framework would probably cure this.
> There may also be in-between solutions to achieve some of the lower hanging fruit.
>
I forgot to add. Daniel's field-sensitive aliasing and/or the
interprocedural PTA may get this correctly.
Diego.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of C++ (functional) code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (13 preceding siblings ...)
2004-08-25 13:45 ` dnovillo at gcc dot gnu dot org
@ 2004-08-25 13:58 ` dnovillo at redhat dot com
2004-11-24 6:28 ` pinskia at gcc dot gnu dot org
` (3 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: dnovillo at redhat dot com @ 2004-08-25 13:58 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dnovillo at redhat dot com 2004-08-25 13:58 -------
Subject: Re: Pessimization of C++ (functional)
code
On Wed, 2004-08-25 at 09:45, dnovillo at gcc dot gnu dot org wrote:
> Implementing a full-fledge escape analysis framework would probably cure this.
> There may also be in-between solutions to achieve some of the lower hanging fruit.
>
I forgot to add. Daniel's field-sensitive aliasing and/or the
interprocedural PTA may get this correctly.
Diego.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of C++ (functional) code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (14 preceding siblings ...)
2004-08-25 13:58 ` dnovillo at redhat dot com
@ 2004-11-24 6:28 ` pinskia at gcc dot gnu dot org
2005-08-03 2:50 ` pinskia at gcc dot gnu dot org
` (2 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-11-24 6:28 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-11-24 06:28 -------
The problem here is:
# predD.1714_2 = V_MUST_DEF <predD.1714_1>;
predD.1714 = fD.1555;
# predD.1718_36 = V_MAY_DEF <predD.1718_9>;
predD.1718.predD.1583 = &predD.1714;
# predD.1714_41 = V_MAY_DEF <predD.1714_2>;
# predD.1718_42 = V_MAY_DEF <predD.1718_36>; <-- Notice this, this is because we had took its
address at one point
# TMT.1D.1744_45 = V_MAY_DEF <TMT.1D.1744_31>;
# TMT.2D.1745_25 = V_MAY_DEF <TMT.2D.1745_30>;
# TMT.3D.1746_27 = V_MAY_DEF <TMT.3D.1746_28>;
# TMT.4D.1747_33 = V_MAY_DEF <TMT.4D.1747_26>;
D.1738_32 = f ();
--
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |alias
Last reconfirmed|2004-03-08 07:37:49 |2004-11-24 06:28:26
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of C++ (functional) code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (15 preceding siblings ...)
2004-11-24 6:28 ` pinskia at gcc dot gnu dot org
@ 2005-08-03 2:50 ` pinskia at gcc dot gnu dot org
2005-08-03 3:03 ` pinskia at gcc dot gnu dot org
2005-08-03 3:35 ` pinskia at gcc dot gnu dot org
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-08-03 2:50 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-03 02:50 -------
hmm, why are things being marked as call clobered when their addresses don't escape at all.
Mostly:
D.1928_31, is dereferenced, its value escapes, points-to anything
which is the variable for the function call, that does not make sense at all.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of C++ (functional) code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (16 preceding siblings ...)
2005-08-03 2:50 ` pinskia at gcc dot gnu dot org
@ 2005-08-03 3:03 ` pinskia at gcc dot gnu dot org
2005-08-03 3:35 ` pinskia at gcc dot gnu dot org
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-08-03 3:03 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-03 03:03 -------
The real problem can be seen with:
int f(void);
int h(void);
int g(int a)
{
int (*ff)(void) = f;
int (**g)(void);
g = &ff;
(*g)();
h();
(*g)();
}
we mark the value which we calling as escaping:
D.1289_5, is dereferenced, its value escapes, points-to anything
D.1289_6, is dereferenced, its value escapes, points-to anything
that is wrong.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug tree-optimization/8781] Pessimization of C++ (functional) code
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
` (17 preceding siblings ...)
2005-08-03 3:03 ` pinskia at gcc dot gnu dot org
@ 2005-08-03 3:35 ` pinskia at gcc dot gnu dot org
18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-08-03 3:35 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-03 03:35 -------
Even though comment #17 is correct, it is not the full story (I have a fix for the issue in comment #17).
The real problem is that we don't consider function decls as constants so consider stuff we should not
as call clobbered as there no way the address of the function can change.
This seems like a big defect in the current tree-ssa aliasing.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8781
^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2005-08-03 3:35 UTC | newest]
Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20021202022601.8781.wesslen@users.sourceforge.net>
2003-06-09 15:29 ` [Bug optimization/8781] Pessimization of functional-style code pinskia@physics.uc.edu
2003-11-05 7:25 ` pinskia at gcc dot gnu dot org
2003-12-01 4:01 ` pinskia at gcc dot gnu dot org
2003-12-01 4:20 ` dberlin at gcc dot gnu dot org
2004-01-20 16:54 ` pinskia at gcc dot gnu dot org
2004-03-03 5:14 ` pinskia at gcc dot gnu dot org
2004-03-03 5:46 ` pinskia at gcc dot gnu dot org
2004-03-08 7:37 ` pinskia at gcc dot gnu dot org
2004-05-24 6:46 ` [Bug tree-optimization/8781] " pinskia at gcc dot gnu dot org
2004-05-24 11:08 ` pinskia at gcc dot gnu dot org
2004-06-02 4:45 ` pinskia at gcc dot gnu dot org
2004-08-23 5:24 ` pinskia at gcc dot gnu dot org
2004-08-25 1:57 ` [Bug tree-optimization/8781] Pessimization of C++ (functional) code giovannibajo at libero dot it
2004-08-25 13:45 ` dnovillo at gcc dot gnu dot org
2004-08-25 13:58 ` Diego Novillo
2004-08-25 13:58 ` dnovillo at redhat dot com
2004-11-24 6:28 ` pinskia at gcc dot gnu dot org
2005-08-03 2:50 ` pinskia at gcc dot gnu dot org
2005-08-03 3:03 ` pinskia at gcc dot gnu dot org
2005-08-03 3:35 ` pinskia at gcc dot gnu dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).