* Re: PR22336 (was: Problem with tree-ssa-loop-ivopts.c:get_computation-cost)
@ 2005-07-12 13:48 Richard Kenner
2005-07-12 13:55 ` Zdenek Dvorak
0 siblings, 1 reply; 5+ messages in thread
From: Richard Kenner @ 2005-07-12 13:48 UTC (permalink / raw)
To: rakdver; +Cc: gcc-patches, gcc
I think the patch is fine (although of course I cannot approve it).
I, as it's author, do not. But, as I keep saying, I don't know what
the proper fix is.
The more proper fix would be to never expand such expressions from ivopts;
What are "such expressions"?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: PR22336 (was: Problem with tree-ssa-loop-ivopts.c:get_computation-cost)
2005-07-12 13:48 PR22336 (was: Problem with tree-ssa-loop-ivopts.c:get_computation-cost) Richard Kenner
@ 2005-07-12 13:55 ` Zdenek Dvorak
0 siblings, 0 replies; 5+ messages in thread
From: Zdenek Dvorak @ 2005-07-12 13:55 UTC (permalink / raw)
To: Richard Kenner; +Cc: gcc-patches, gcc
Hello,
> I think the patch is fine (although of course I cannot approve it).
>
> I, as it's author, do not. But, as I keep saying, I don't know what
> the proper fix is.
preventing record_block_change from working in this situation seems a
quite clean solution to me; of course, not expanding expressions with
TREE_BLOCK set (when determining their cost) at all would be better, but
somewhat more complicated.
> The more proper fix would be to never expand such expressions from ivopts;
>
> What are "such expressions"?
Expressions with TREE_BLOCK set; i.e. those coming from the compiled program.
Zdenek
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: PR22336 (was: Problem with tree-ssa-loop-ivopts.c:get_computation-cost)
2005-07-12 10:04 ` PR22336 (was: Problem with tree-ssa-loop-ivopts.c:get_computation-cost) Laurent GUERBY
2005-07-12 11:04 ` Zdenek Dvorak
@ 2005-07-21 22:08 ` Richard Henderson
1 sibling, 0 replies; 5+ messages in thread
From: Richard Henderson @ 2005-07-21 22:08 UTC (permalink / raw)
To: Laurent GUERBY; +Cc: gcc-patches, gcc, Richard Kenner
On Tue, Jul 12, 2005 at 12:02:46PM +0200, Laurent GUERBY wrote:
> PR tree-optimization/22336
> * function.c (record_block_change): Check for
> cfun->ib_boundaries_block.
Ok. I don't see that we're going to get anything cleaner for 4.1.
r~
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: PR22336 (was: Problem with tree-ssa-loop-ivopts.c:get_computation-cost)
2005-07-12 10:04 ` PR22336 (was: Problem with tree-ssa-loop-ivopts.c:get_computation-cost) Laurent GUERBY
@ 2005-07-12 11:04 ` Zdenek Dvorak
2005-07-21 22:08 ` Richard Henderson
1 sibling, 0 replies; 5+ messages in thread
From: Zdenek Dvorak @ 2005-07-12 11:04 UTC (permalink / raw)
To: Laurent GUERBY; +Cc: gcc-patches, gcc, Richard Kenner
Hello,
> If no one is suggesting an alternative, tested on x86 and x86_64-linux
> where it restores bootstrap (at last :), ok to commit?
I think the patch is fine (although of course I cannot approve it). The
more proper fix would be to never expand such expressions from ivopts;
I have a patch for this, but it needs more testing and benchmarking.
Zdenek
> We're down to 6 ACATS FAIL on x86_64 and 8 on x86:
>
> http://gcc.gnu.org/ml/gcc-testresults/2005-07/msg00654.html
> http://gcc.gnu.org/ml/gcc-testresults/2005-07/msg00653.html
>
> common:
> 18818: cd10002 (run) stream attributes
> 18819: cdd2a02 (run, works at -O0 everywhere) works with -O2 -fno-tree-sra
> 22333: c34007p c34007r c45282b (run) spurious discriminant CONSTRAINT_ERROR
>
> x86 only:
> 18659: c32001e c64105b c95086b (ICE x86, ppc, ia64, works on x86_64, pass everywhere at -O0) works with -O2 -fno-tree-sra
>
> x86_64 only:
> 20548: c52103x (run) segfault at runtime on x86_64 and hppa
>
> Laurent
>
> 2005-07-12 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
> Laurent GUERBY <laurent@guerby.net>
>
> PR tree-optimization/22336
> * function.c (record_block_change): Check for
> cfun->ib_boundaries_block.
>
>
> Index: function.c
> ===================================================================
> RCS file: /cvs/gcc/gcc/gcc/function.c,v
> retrieving revision 1.635
> diff -u -r1.635 function.c
> --- function.c 7 Jul 2005 21:04:31 -0000 1.635
> +++ function.c 10 Jul 2005 19:06:10 -0000
> @@ -5502,6 +5502,9 @@
> if (!block)
> return;
>
> + if(!cfun->ib_boundaries_block)
> + return;
> +
> last_block = VARRAY_TOP_TREE (cfun->ib_boundaries_block);
> VARRAY_POP (cfun->ib_boundaries_block);
> n = get_max_uid ();
>
>
> On Tue, 2005-07-05 at 10:31 +0200, Laurent GUERBY wrote:
> > This is http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22212
> > and is the problem blocking Ada bootstrap on x86_64-linux,
> > it would be great to move forward on this.
> >
> > Laurent
> >
> > On Thu, 2005-06-30 at 18:18 -0400, Richard Kenner wrote:
> > > This function generates RTL from an expression to see how many RTL insns
> > > it is. But this causes a problem compiling the Ada ACATS test cxa4006.
> > >
> > > The problem is when part of the expression has a location. In that
> > > case, record_block_change is called and that relies on
> > > cfun->ib_boundaries_block being set. But it isn't because we aren't
> > > expanding stuff "for real". A kludge would be to test that field, but
> > > what's the proper way?
> > >
> > > Also, seq_cost really should be looking at next_real_insn, not NEXT_INSN,
> > > since any notes shouldn't be counted.
> > >
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* PR22336 (was: Problem with tree-ssa-loop-ivopts.c:get_computation-cost)
2005-07-05 8:32 ` Laurent GUERBY
@ 2005-07-12 10:04 ` Laurent GUERBY
2005-07-12 11:04 ` Zdenek Dvorak
2005-07-21 22:08 ` Richard Henderson
0 siblings, 2 replies; 5+ messages in thread
From: Laurent GUERBY @ 2005-07-12 10:04 UTC (permalink / raw)
To: gcc-patches; +Cc: gcc, Richard Kenner
If no one is suggesting an alternative, tested on x86 and x86_64-linux
where it restores bootstrap (at last :), ok to commit?
We're down to 6 ACATS FAIL on x86_64 and 8 on x86:
http://gcc.gnu.org/ml/gcc-testresults/2005-07/msg00654.html
http://gcc.gnu.org/ml/gcc-testresults/2005-07/msg00653.html
common:
18818: cd10002 (run) stream attributes
18819: cdd2a02 (run, works at -O0 everywhere) works with -O2 -fno-tree-sra
22333: c34007p c34007r c45282b (run) spurious discriminant CONSTRAINT_ERROR
x86 only:
18659: c32001e c64105b c95086b (ICE x86, ppc, ia64, works on x86_64, pass everywhere at -O0) works with -O2 -fno-tree-sra
x86_64 only:
20548: c52103x (run) segfault at runtime on x86_64 and hppa
Laurent
2005-07-12 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
Laurent GUERBY <laurent@guerby.net>
PR tree-optimization/22336
* function.c (record_block_change): Check for
cfun->ib_boundaries_block.
Index: function.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/function.c,v
retrieving revision 1.635
diff -u -r1.635 function.c
--- function.c 7 Jul 2005 21:04:31 -0000 1.635
+++ function.c 10 Jul 2005 19:06:10 -0000
@@ -5502,6 +5502,9 @@
if (!block)
return;
+ if(!cfun->ib_boundaries_block)
+ return;
+
last_block = VARRAY_TOP_TREE (cfun->ib_boundaries_block);
VARRAY_POP (cfun->ib_boundaries_block);
n = get_max_uid ();
On Tue, 2005-07-05 at 10:31 +0200, Laurent GUERBY wrote:
> This is http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22212
> and is the problem blocking Ada bootstrap on x86_64-linux,
> it would be great to move forward on this.
>
> Laurent
>
> On Thu, 2005-06-30 at 18:18 -0400, Richard Kenner wrote:
> > This function generates RTL from an expression to see how many RTL insns
> > it is. But this causes a problem compiling the Ada ACATS test cxa4006.
> >
> > The problem is when part of the expression has a location. In that
> > case, record_block_change is called and that relies on
> > cfun->ib_boundaries_block being set. But it isn't because we aren't
> > expanding stuff "for real". A kludge would be to test that field, but
> > what's the proper way?
> >
> > Also, seq_cost really should be looking at next_real_insn, not NEXT_INSN,
> > since any notes shouldn't be counted.
> >
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2005-07-21 22:08 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-07-12 13:48 PR22336 (was: Problem with tree-ssa-loop-ivopts.c:get_computation-cost) Richard Kenner
2005-07-12 13:55 ` Zdenek Dvorak
-- strict thread matches above, loose matches on Subject: below --
2005-06-30 22:16 Problem with tree-ssa-loop-ivopts.c:get_computation-cost Richard Kenner
2005-07-05 8:32 ` Laurent GUERBY
2005-07-12 10:04 ` PR22336 (was: Problem with tree-ssa-loop-ivopts.c:get_computation-cost) Laurent GUERBY
2005-07-12 11:04 ` Zdenek Dvorak
2005-07-21 22:08 ` Richard Henderson
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).