Re: Problem with the special live analyzer in global alloc

2005-09-23 Thread Daniel Berlin
On Fri, 2005-09-23 at 15:50 +0200, Andreas Krebbel wrote: > Hello, > > I've opened a bugzilla for this: #24034 Just as an FYI, Kenny and I have replaced the global liveness analyzer with one from df.c, and removed the need for make_accurate_live_analysis (ie df.c now does the partial avail livene

Re: Problem with the special live analyzer in global alloc

2005-09-23 Thread Andreas Krebbel
Hello, I've opened a bugzilla for this: #24034 Bye, -Andreas-

Re: Problem with the special live analyzer in global alloc

2005-08-24 Thread Daniel Berlin
On Wed, 2005-08-24 at 08:47 -0500, Peter Bergner wrote: > On Wed, 2005-08-24 at 00:07 -0400, Daniel Berlin wrote: > > I imagine if you have 300k bb's or 1.5 million live pseudos to consider, > > it probably makes a real difference, but that's not *too* common in our > > supported languages (30k bb'

Re: Problem with the special live analyzer in global alloc

2005-08-24 Thread Peter Bergner
On Wed, 2005-08-24 at 00:07 -0400, Daniel Berlin wrote: > I imagine if you have 300k bb's or 1.5 million live pseudos to consider, > it probably makes a real difference, but that's not *too* common in our > supported languages (30k bb's/150k pseudos is probably the practical > upper limit of what w

Re: Problem with the special live analyzer in global alloc

2005-08-23 Thread Daniel Berlin
On Tue, 2005-08-23 at 22:10 -0500, Peter Bergner wrote: > On Tue, 2005-08-23 at 21:26 +0200, Bernd Schmidt wrote: > > As Jim points out, we may have to do that for IA64 anyway, so we could > > consider doing it on all targets. Dan is correct that this can > > introduce new code that won't be eli

Re: Problem with the special live analyzer in global alloc

2005-08-23 Thread Peter Bergner
On Tue, 2005-08-23 at 21:26 +0200, Bernd Schmidt wrote: > As Jim points out, we may have to do that for IA64 anyway, so we could > consider doing it on all targets. Dan is correct that this can > introduce new code that won't be eliminated. One question is how often > this is going to occur in

Re: Problem with the special live analyzer in global alloc

2005-08-23 Thread Bernd Schmidt
Steven Bosscher wrote: On Tuesday 23 August 2005 17:06, Bernd Schmidt wrote: The idea is to put the initialization insns only on the paths where the register will be uninitialized. int foo (int n) { int a; while (--n) a = n; return a; } Not knowing n, how can you be sure whether

Re: Problem with the special live analyzer in global alloc

2005-08-23 Thread James E Wilson
On Tue, 2005-08-23 at 07:44, Bernd Schmidt wrote: > Jim Wilson once suggested we should just emit insns to make sure every > register is initialized and be done with it - problem solved. I had > started to work on that, if people think it's a good idea I can dig that > stuff out again. I'd lik

Re: Problem with the special live analyzer in global alloc

2005-08-23 Thread Daniel Berlin
On Tue, 2005-08-23 at 17:06 +0200, Bernd Schmidt wrote: > Daniel Berlin wrote: > > > If you make them all defined, then it's going to be live where it wasn't > > before, even though it's not really *used* over those paths. > > The idea is to put the initialization insns only on the paths where th

Re: Problem with the special live analyzer in global alloc

2005-08-23 Thread Steven Bosscher
On Tuesday 23 August 2005 17:06, Bernd Schmidt wrote: > The idea is to put the initialization insns only on the paths where the > register will be uninitialized. int foo (int n) { int a; while (--n) a = n; return a; } Not knowing n, how can you be sure whether "a" is uninitialized for

Re: Problem with the special live analyzer in global alloc

2005-08-23 Thread Bernd Schmidt
Daniel Berlin wrote: If you make them all defined, then it's going to be live where it wasn't before, even though it's not really *used* over those paths. The idea is to put the initialization insns only on the paths where the register will be uninitialized. Bernd

Re: Problem with the special live analyzer in global alloc

2005-08-23 Thread Daniel Berlin
On Tue, 2005-08-23 at 16:44 +0200, Bernd Schmidt wrote: > Andreas Krebbel wrote: > > > Ok I understand that implementing the special lifeness analyzers in global > > alloc > > using the df.c framework would ease reusing it somewhere else. But my > > question > > was more basic. > > So do you agr

Re: Problem with the special live analyzer in global alloc

2005-08-23 Thread Bernd Schmidt
Andreas Krebbel wrote: Ok I understand that implementing the special lifeness analyzers in global alloc using the df.c framework would ease reusing it somewhere else. But my question was more basic. So do you agree that using one lifeness analyzer for checking what an optimizer step has done bas

Re: Problem with the special live analyzer in global alloc

2005-08-23 Thread Andreas Krebbel
Hello, sorry for the late answer. > Vlad promised to update it to use df.c once it wasn't "1% slower", which > would make it easily reusable elsewhere, but never did. > Of course, you could reuse it without that, but then someone will > invariably come along and mess with it. Ok I understand tha

Re: Problem with the special live analyzer in global alloc

2005-08-16 Thread Daniel Berlin
> As already stated I think that the usage of different algorithms for > calculating live info causes the problem. Is there a reason that the > live analysis used by global alloc isn't used everywhere? Vlad promised to update it to use df.c once it wasn't "1% slower", which would make it easily re

Problem with the special live analyzer in global alloc

2005-08-16 Thread Andreas Krebbel
Hello, the 920501-4.c testcase currently fails on s390x with a "fatal error: internal consistency failure" in reg rename. The example uses an uninitialized variable. Normal live analysis consideres this variable to be live over all basic blocks. But global alloc uses a special liveness checker co