--- Comment #23 from pinskia at gcc dot gnu dot org 2007-04-18 19:21
---
(In reply to comment #22)
> and wait another years for 4.3 release. it sux.
GCC 4.3 is the one of the few compilers to do this optimization.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
--- Comment #22 from pluto at agmk dot net 2007-04-18 19:18 ---
(In reply to comment #21)
> Ha, sure not ;)
>
and wait another years for 4.3 release. it sux.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
--- Comment #21 from rguenth at gcc dot gnu dot org 2007-04-18 14:45
---
Ha, sure not ;)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
--- Comment #20 from pluto at agmk dot net 2007-04-18 13:02 ---
(In reply to comment #19)
> Fixed.
>
will it be backported to 4.2?
it improves perf. of big stl-based apps.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
--- Comment #19 from rguenth at gcc dot gnu dot org 2007-04-18 12:48
---
Fixed.
--
rguenth at gcc dot gnu dot org changed:
What|Removed |Added
Status|ASSIGNE
--- Comment #18 from rguenth at gcc dot gnu dot org 2007-04-18 12:45
---
Subject: Bug 19431
Author: rguenth
Date: Wed Apr 18 12:45:09 2007
New Revision: 123946
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=123946
Log:
2007-04-18 Richard Guenther <[EMAIL PROTECTED]>
--- Comment #17 from rguenth at gcc dot gnu dot org 2007-02-26 10:33
---
I split the issue in comment #10 to PR30965 as it is a slightly different
issue.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
--- Comment #16 from rguenth at gcc dot gnu dot org 2007-02-25 22:51
---
Created an attachment (id=13109)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13109&action=view)
patch to fix testcase in comment 10
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
--- Comment #15 from rguenth at gcc dot gnu dot org 2007-02-25 22:50
---
We start with
D.59982_3 = variable_2(D) + 4B;
__unary_op = __unary_op.65;
goto ();
:;
D.61146_10 = __unary_op._M_arg1;
D.61147_11 = __unary_op._M_arg2;
D.61093_12 = D.61146_10 + D.61147_11;
*variab
--- Comment #14 from rguenth at gcc dot gnu dot org 2007-02-25 22:23
---
Not really as this is only exposed by TER. Though I remember forwprop catching
similiar stuff before. I'll have a look.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
--- Comment #13 from pinskia at gcc dot gnu dot org 2007-02-25 22:01
---
> if (variable != variable + 8B) goto ; else goto ;
That issue was fixed just yesterday by PR 30951.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
--- Comment #12 from pluto at agmk dot net 2007-02-25 20:09 ---
(In reply to comment #11)
> Bonus points if you can make that self-contained ;)
-fdump-tree-optimized shows the same code for both variants
and there is the if-with-dereferencing :)
(...)
if (variable != variable + 8B) g
--- Comment #11 from rguenth at gcc dot gnu dot org 2007-02-25 19:52
---
Bonus points if you can make that self-contained ;)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
--- Comment #10 from pluto at agmk dot net 2007-02-25 19:00 ---
one more testcase:
#include
#include
extern void assign( long* variable, long v )
{
std::transform( variable, variable + 1, variable,
std::tr1::bind( std::plus< long >(), 0L, v ) );
}
extern void a
--- Comment #9 from rguenth at gcc dot gnu dot org 2007-02-09 14:48 ---
I have a patch^Whack.
--
rguenth at gcc dot gnu dot org changed:
What|Removed |Added
Assig
--- Comment #8 from pinskia at gcc dot gnu dot org 2007-02-09 14:46 ---
*** Bug 30738 has been marked as a duplicate of this bug. ***
--
pinskia at gcc dot gnu dot org changed:
What|Removed |Added
---
--- Comment #7 from steven at gcc dot gnu dot org 2006-12-20 09:58 ---
Maybe we can do something with this in PHIopt...
--
steven at gcc dot gnu dot org changed:
What|Removed |Added
--
--- Comment #6 from pinskia at gcc dot gnu dot org 2006-12-19 21:16 ---
*** Bug 30261 has been marked as a duplicate of this bug. ***
--
pinskia at gcc dot gnu dot org changed:
What|Removed |Added
---
--- Comment #5 from pinskia at gcc dot gnu dot org 2006-02-05 15:37 ---
I should mention this shows up with std::min/std::max like:
int main(int argc)
{
int a = std::min(8, argc*2);
return a;
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
--- Additional Comments From dberlin at gcc dot gnu dot org 2005-01-15
00:22 ---
Subject: Re: New: missed optimization with
ifs and deferencing
On Thu, 2005-01-13 at 21:38 +, pinskia at gcc dot gnu dot org wrote:
> I found this while looking into PR 8361 for missed optimiza
--
What|Removed |Added
Status|UNCONFIRMED |NEW
Ever Confirmed||1
Last reconfirmed|-00-00 00:00:00 |2005-01-
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-01-13
21:54 ---
This comes from "std::_Deque_base<_Tp, _Alloc>::_M_initialize_map" in libstdc++.
Here is the last SSA tree dump:
f (k, i1, j1)
{
int * f1;
int D.1116;
:
if (k_2 != 0) goto ; else goto ;
:;
# f1_1
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-01-13
21:43 ---
This is what I get with the mainline on ppc-darwin:
_f:
cmpwi cr7,r3,0
stw r4,28(r1)
stw r5,32(r1)
addi r3,r1,28
beq- cr7,L7
lwz r3,0(r3)
blr
L7:
--- Additional Comments From steven at gcc dot gnu dot org 2005-01-13
21:41 ---
...and of course you are going to show what you *actually* get now?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431
24 matches
Mail list logo