[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2008-02-01 Thread dave at hiauly1 dot hia dot nrc dot ca


--- Comment #19 from dave at hiauly1 dot hia dot nrc dot ca  2008-02-01 
18:23 ---
Subject: Re:  g++.dg/tree-ssa/ivopts-1.C fails

> Thus fixed.

The test needs adjustment.

Dave


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2008-02-01 Thread rguenth at gcc dot gnu dot org


--- Comment #18 from rguenth at gcc dot gnu dot org  2008-02-01 18:13 
---
Thus fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2008-02-01 Thread dave at hiauly1 dot hia dot nrc dot ca


--- Comment #17 from dave at hiauly1 dot hia dot nrc dot ca  2008-02-01 
18:08 ---
Subject: Re:  g++.dg/tree-ssa/ivopts-1.C fails

> Dave, is this test still failing on hppa?  On the branch and trunk?

It is not failing on either 4.2 or trunk.  Checked hppa-unknown-linux-gnu,
hppa2.0w-hp-hpux11.11 and hppa64-hp-hpux11.11.

Dave


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2008-02-01 Thread rguenth at gcc dot gnu dot org


--- Comment #16 from rguenth at gcc dot gnu dot org  2008-02-01 16:58 
---
Dave, is this test still failing on hppa?  On the branch and trunk?


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |WAITING


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2008-02-01 Thread jsm28 at gcc dot gnu dot org


--- Comment #15 from jsm28 at gcc dot gnu dot org  2008-02-01 16:52 ---
4.2.3 is being released now, changing milestones of open bugs to 4.2.4.


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.2.3   |4.2.4


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2007-10-09 Thread mmitchel at gcc dot gnu dot org


--- Comment #14 from mmitchel at gcc dot gnu dot org  2007-10-09 19:21 
---
Change target milestone to 4.2.3, as 4.2.2 has been released.


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.2.2   |4.2.3


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2007-07-19 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.2.1   |4.2.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2007-05-14 Thread mmitchel at gcc dot gnu dot org


--- Comment #13 from mmitchel at gcc dot gnu dot org  2007-05-14 22:26 
---
Will not be fixed in 4.2.0; retargeting at 4.2.1.


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.2.0   |4.2.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2006-09-10 Thread dave at hiauly1 dot hia dot nrc dot ca


--- Comment #12 from dave at hiauly1 dot hia dot nrc dot ca  2006-09-10 
18:39 ---
Subject: Re:  g++.dg/tree-ssa/ivopts-1.C fails

> The linux output doesn't have the -4 offset:
> 
>ldi 1,%r28
>stw %r2,-20(%r30)
> .LCFI0:
>copy %r28,%r21
>ldo 128(%r30),%r30
> .LCFI1:
>ldi 4,%r19
>stw %r28,-120(%r30)
>ldo -120(%r30),%r26
>ldi 16,%r20
> .L2:
>addl %r19,%r26,%r28
>ldo 4(%r19),%r19
>comb,<> %r20,%r19,.L2
>stw %r21,0(%r28)
>bl _Z3fooR3Foo,%r2
>nop

It seems like the code generated for the hppa-unknown-linux-gnu target
has been getting worse in each release since 4.0.0.  Here is the 4.0.0
assembler code:

stw %r2,-20(%r30)
.LCFI0:
ldi 1,%r19
ldo 128(%r30),%r30
.LCFI1:
ldo -120(%r30),%r28
ldo -104(%r30),%r20
stw %r19,0(%r28)
.L8:
ldo 4(%r28),%r28
comb,<>,n %r28,%r20,.L8
stw %r19,0(%r28)
bl _Z3fooR3Foo,%r2
ldo -120(%r30),%r26

In this code, the function prologue and loop setup are only six instructions.
The loop is three instructions.  The delay slot for the call to _Z3fooR3Foo
is filled.  The value loaded into r26 is the same as loaded into r28 before
the loop.  I would say this code is close to optimal aside from unrolling
loop completely.

Here is the code generated by Debian 4.1.1-13:

stw %r2,-20(%r30)
.LCFI0:
ldi 0,%r19
ldo 128(%r30),%r30
.LCFI1:
ldi 1,%r21
ldo -120(%r30),%r26
ldi 16,%r20
.L2:
addl %r19,%r26,%r28
ldo 4(%r19),%r19
comb,<> %r20,%r19,.L2
stw %r21,0(%r28)
bl _Z3fooR3Foo,%r2
nop

The prologue and loop setup are still six instructions.  However,
the loop is now four instructions per iteration and we iterate one
more time.  Thus, we have a significant performance regression
relative to 4.0.0 in the handling of this loop.

Possibly, this results from the compiler trying to avoid loading the
address "-120(%r30)" twice.  However, the cost for loading small offsets
is the same as doing a register copy.  A register copy is just a ldo
instruction with an offset of 0.

The 4.2.0 code is worse than the 4.1.1 code in that the prologue and
loop setup have now grown to eight instructions.  However, we are
back to three iterations.  It seems like the compiler may be trying
to avoid non-zero offsets.  I don't know why this would be.
hppa_address_cost is pretty simple.

As far as the the difference between linux and hpux goes, the main
difference is that long doubles are 64 bits on linux and 128 bits
on hpux.  This would affect the sizes of the cost arrays in expmed.c.
I'm wondering if somehow some of the values in these tables are
getting corrupted.

There's one puzzling difference in the linux and hpux tree dumps.
In the hpux dump, some variables are "long unsigned int" whereas in
the linux dump they are "unsigned int".

Dave


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2006-09-09 Thread dave at hiauly1 dot hia dot nrc dot ca


--- Comment #11 from dave at hiauly1 dot hia dot nrc dot ca  2006-09-10 
00:02 ---
Subject: Re:  g++.dg/tree-ssa/ivopts-1.C fails

> It confirms that it is the same problem as on i?86, but it doesn't tell
> why.  I don't see an obvious difference in config/pa/

Yes, it does seem to be the same problem.  The hpux assembler
output has a -4 offset:

stw %r2,-20(%r30)
L$CFI
ldi 1,%r19
ldo 128(%r30),%r30
L$CFI0001
ldo -116(%r30),%r28
ldo -100(%r30),%r20
stw %r19,-4(%r28)
L$0008:
ldo 4(%r28),%r28
comb,<>,n %r20,%r28,L$0008
stw %r19,-4(%r28)
.CALL ARGW0=GR
bl _Z3fooR3Foo,%r2
ldo -120(%r30),%r26

The linux output doesn't have the -4 offset:

   ldi 1,%r28
   stw %r2,-20(%r30)
.LCFI0:
   copy %r28,%r21
   ldo 128(%r30),%r30
.LCFI1:
   ldi 4,%r19
   stw %r28,-120(%r30)
   ldo -120(%r30),%r26
   ldi 16,%r20
.L2:
   addl %r19,%r26,%r28
   ldo 4(%r19),%r19
   comb,<> %r20,%r19,.L2
   stw %r21,0(%r28)
   bl _Z3fooR3Foo,%r2
   nop

Offhand, then hpux code appears better optimized.

Dave


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2006-09-09 Thread rguenther at suse dot de


--- Comment #10 from rguenther at suse dot de  2006-09-09 20:37 ---
Subject: Re:  g++.dg/tree-ssa/ivopts-1.C fails

On Sat, 9 Sep 2006, dave at hiauly1 dot hia dot nrc dot ca wrote:

> --- Comment #7 from dave at hiauly1 dot hia dot nrc dot ca  2006-09-09 
> 18:45 ---
> Subject: Re:  g++.dg/tree-ssa/ivopts-1.C fails
> 
> > I don't know what should be the difference between hpux and linux PA, though
> > this is an issue of IVOPTs and rtl costs.
> 
> I've the dump files for hppa-unknown-linux-gnu and hppa2.0w-hp-hpux11.11.

It confirms that it is the same problem as on i?86, but it doesn't tell
why.  I don't see an obvious difference in config/pa/

Richard.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2006-09-09 Thread dave at hiauly1 dot hia dot nrc dot ca


--- Comment #7 from dave at hiauly1 dot hia dot nrc dot ca  2006-09-09 
18:45 ---
Subject: Re:  g++.dg/tree-ssa/ivopts-1.C fails

> I don't know what should be the difference between hpux and linux PA, though
> this is an issue of IVOPTs and rtl costs.

I've the dump files for hppa-unknown-linux-gnu and hppa2.0w-hp-hpux11.11.

Dave


--- Comment #8 from dave at hiauly1 dot hia dot nrc dot ca  2006-09-09 
18:45 ---
Created an attachment (id=12213)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12213&action=view)


--- Comment #9 from dave at hiauly1 dot hia dot nrc dot ca  2006-09-09 
18:45 ---
Created an attachment (id=12214)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12214&action=view)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2006-09-09 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2006-09-09 18:34 ---
I don't know what should be the difference between hpux and linux PA, though
this is an issue of IVOPTs and rtl costs.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rguenth at gcc dot gnu dot
   ||org
 AssignedTo|rguenth at gcc dot gnu dot  |unassigned at gcc dot gnu
   |org |dot org
 Status|REOPENED|NEW


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2006-09-09 Thread danglin at gcc dot gnu dot org


--- Comment #5 from danglin at gcc dot gnu dot org  2006-09-09 18:25 ---
I would like to request that this bug to be reopened.

First, the test never failed on hppa*-*-linux*, so we now have two
XPASS's on this target.  Second, between 15 and 17 August, the second
xfail for hppa*-*-* changed to an XPASS on hppa*-*-hpux*.  Third,
there's no PR for the "-4B" offset that's still present on hppa*-*-hpux*.

PR 26726, which added the testcase, points to PR target/24669 as
the remaining issue for that issue.  This is characterized as being
a target specific problem, namely that the a more complicated addressing
mode is cheaper than a simpler mode, leading ivopts to prefer the it.
The puzzle in my mind is that there is no obvious difference between
costs for hpux and linux in the PA backend.


-- 

danglin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||danglin at gcc dot gnu dot
   ||org
 Status|RESOLVED|REOPENED
 Resolution|FIXED   |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2006-06-09 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2006-06-09 10:24 ---
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2006-05-22 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2006-05-22 09:21 ---
Subject: Bug 27707

Author: rguenth
Date: Mon May 22 09:20:46 2006
New Revision: 113972

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113972
Log:
2006-05-22  Richard Guenther  <[EMAIL PROTECTED]>

PR testsuite/27707
* g++.dg/tree-ssa/ivopts-1.C: XFAIL for hppa*-*-*.

Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.dg/tree-ssa/ivopts-1.C


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707



[Bug testsuite/27707] g++.dg/tree-ssa/ivopts-1.C fails

2006-05-22 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2006-05-22 09:20 ---
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

  Component|target  |testsuite
   Target Milestone|--- |4.2.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27707