Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-15 Thread Mike Stump

On May 15, 2007, at 2:03 PM, J.C. Pizarro wrote:

2007/5/12, Mike Stump <[EMAIL PROTECTED]> wrote:

On May 11, 2007, at 3:36 PM, J.C. Pizarro wrote:
> On 5/12/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:
>> PR 31797: An infinite loop in the compiler while building RTEMS.
>
> 1. Can you localize its last output that stops in its internal
> infinite loop?
> 2. Or, is there an infinite outputting in the console?

Did you read the referenced bug report?  I suspect not.  If not,
please consider that you consume $100 for each email you post here
and ask yourself, have I donated $100 worth of code to the project
recently to pay for the cost of the email.  If not, consider not
posting the email or donating some more code to pay for it.


Are you a president?


Sure.

You are mistaken, i have my freedom of expression. I am free like  
any person.


Really?  So, do you think you're free to talk about how to bake  
brownies on this list?


Watch the google video linked to from slashdot a little while ago  
about code development in open source projects:


  http://developers.slashdot.org/article.pl?sid=07/03/12/1449201

and see what role you play, then see what role the people that tell  
you your posts are off-topic play and try and guess what role I  
play.  Ask yourself, what direct benefit to the project does your  
contribution have?  This list is for people that want to contribute  
code to gcc and for those that want to help and enable people that  
want to contribute code to gcc.  My response to you I think is fairly  
off-topic for the list and is why I didn't include the whole list on  
that response, and I think your response above is off-topic as well.


Let me repeat once more, please, stop posting off-topic posts to this  
list.  This list is not open to off-topic posts.  If you want to talk  
about the appropriateness of posting things to this list, you can  
talk about that on [EMAIL PROTECTED] if you'd like.


Thank you for your consideration in this matter.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-15 Thread J.C. Pizarro

2007/5/12, Mike Stump <[EMAIL PROTECTED]> wrote:

On May 11, 2007, at 3:36 PM, J.C. Pizarro wrote:
> On 5/12/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:
>> PR 31797: An infinite loop in the compiler while building RTEMS.
>
> 1. Can you localize its last output that stops in its internal
> infinite loop?
> 2. Or, is there an infinite outputting in the console?

Did you read the referenced bug report?  I suspect not.  If not,
please consider that you consume $100 for each email you post here
and ask yourself, have I donated $100 worth of code to the project
recently to pay for the cost of the email.  If not, consider not
posting the email or donating some more code to pay for it.



Are you a president?

You are mistaken, i have my freedom of expression. I am free like any person.

I'm not a spammer.

With the current tools (e.g. bugzilla, mail searcher, ..), if you can not
localize the problem's origin then  the problem will persist in the future.

Is this due to bad A.I.? Poor agent of semantic network?


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-14 Thread Richard Guenther

On 5/14/07, Serge Belyshev <[EMAIL PROTECTED]> wrote:

"Richard Guenther" <[EMAIL PROTECTED]> writes:

> It was a patch to enable more optimization.  Reverting it should be as safe
> or unsafe as exchanging forwprop and dce passes.  And I have no idea
> as how to quantify safeness of either ;)
>
> I'd say we better analyze what goes wrong (as the problem is possibly
> latent on the mainline) and fix it properly.  If we paper over it we will not
> fix it at all.
>

I vote for reverting that change (r111639) on the branch before release.
We would gain nothing by having bug 30252, however latent,
uncovered in a released compiler.


The patch only changes the heuristic where we create SFTs for.  The bug is in
handling aliasing with SFTs.  So you'll fix this particluar case --
but I have no idea
on what other testcases you re-expose the bug.  So I'd rather stay with a few
now known cases than shipping with other unknown ones (it maybe glibc which
we miscompile after reverting the change).

Richard.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-14 Thread Serge Belyshev
"Richard Guenther" <[EMAIL PROTECTED]> writes:

> It was a patch to enable more optimization.  Reverting it should be as safe
> or unsafe as exchanging forwprop and dce passes.  And I have no idea
> as how to quantify safeness of either ;)
>
> I'd say we better analyze what goes wrong (as the problem is possibly
> latent on the mainline) and fix it properly.  If we paper over it we will not
> fix it at all.
>

I vote for reverting that change (r111639) on the branch before release.
We would gain nothing by having bug 30252, however latent,
uncovered in a released compiler.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-14 Thread Richard Guenther

On 5/14/07, Jason Merrill <[EMAIL PROTECTED]> wrote:

Mark Mitchell wrote:

> I agree in principle -- much better the bugs we know than the ones we
> don't.  But, IIUC, the patch we'd be reverting is from March, 2006,
> which means that there's potentially a lot more that depends on it.  In
> that sense, I don't even feel confident that reverting the change is a
> conservative move, likely to lead to less optimal code, but not wrong
> code.  Are you?  (That's a serious question; not a rhetorical one.)

That's a fair question; I don't know anything about the patch or the bug
it was intended to fix.  Richard would know better.


It was a patch to enable more optimization.  Reverting it should be as safe
or unsafe as exchanging forwprop and dce passes.  And I have no idea
as how to quantify safeness of either ;)

I'd say we better analyze what goes wrong (as the problem is possibly
latent on the mainline) and fix it properly.  If we paper over it we will not
fix it at all.

Richard.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Jason Merrill

Mark Mitchell wrote:


I agree in principle -- much better the bugs we know than the ones we
don't.  But, IIUC, the patch we'd be reverting is from March, 2006,
which means that there's potentially a lot more that depends on it.  In
that sense, I don't even feel confident that reverting the change is a
conservative move, likely to lead to less optimal code, but not wrong
code.  Are you?  (That's a serious question; not a rhetorical one.)


That's a fair question; I don't know anything about the patch or the bug 
it was intended to fix.  Richard would know better.


Jason



Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Mark Mitchell
Jason Merrill wrote:
> Mark Mitchell wrote:
>> I'm concerned about either of the other approaches, in that we don't
>> fully understand why they work, so we can't really be confident we're
>> not just pushing the bug around.
> 
> Yes.  But I would assert that pushing the bug back to where it was in
> previous releases is better because it's not a regression.

I agree in principle -- much better the bugs we know than the ones we
don't.  But, IIUC, the patch we'd be reverting is from March, 2006,
which means that there's potentially a lot more that depends on it.  In
that sense, I don't even feel confident that reverting the change is a
conservative move, likely to lead to less optimal code, but not wrong
code.  Are you?  (That's a serious question; not a rhetorical one.)

Thanks,

-- 
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Jason Merrill

Mark Mitchell wrote:

I'm concerned about either of the other approaches, in that we don't
fully understand why they work, so we can't really be confident we're
not just pushing the bug around.


Yes.  But I would assert that pushing the bug back to where it was in 
previous releases is better because it's not a regression.


Jason



Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Mark Mitchell
Jason Merrill wrote:
> Mark Mitchell wrote:
>> No, I don't think we know.  There's speculation in the PR trail, but
>> that's it.  I'd appreciate it if you were able to investigate further,
>> but I think I'd best just accept that this will not be fixed for 4.2.0.
> 
> Or revert the patch that revealed the bug, or apply Richard Guenther's
> other patch to work around it?

Sorry, your message *just* crossed:

  http://gcc.gnu.org/ml/gcc/2007-05/msg00329.html

in which I declared failure. :-)

However, the release isn't really released until it's on the FTP sites,
of course, so there's still time to talk me into a different course of
action.

I'm concerned about either of the other approaches, in that we don't
fully understand why they work, so we can't really be confident we're
not just pushing the bug around.

Thanks,

-- 
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Jason Merrill

Mark Mitchell wrote:

No, I don't think we know.  There's speculation in the PR trail, but
that's it.  I'd appreciate it if you were able to investigate further,
but I think I'd best just accept that this will not be fixed for 4.2.0.


Or revert the patch that revealed the bug, or apply Richard Guenther's 
other patch to work around it?


Jason



Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Mark Mitchell
Kenneth Hoste wrote:

> I admit this is not a blocking bug, but it seems fairly (very) easy to
> solve... I still have to figure out how the patch submission framework
> works (never contributed to an open-source project before), so I didn't
> get around to solve it myself.
> 
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31586
> 
> Maybe someone could solve this, so it is solved in GCC 4.2 and others?

Yes, this would be an easy bug to fix, and it would be good to do so,
but I don't think this is likely before 4.2.0.

Thanks,

-- 
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Richard Guenther

On 5/13/07, Daniel Berlin <[EMAIL PROTECTED]> wrote:

On 5/11/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:
> Daniel Berlin wrote:
> > On 5/11/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:
> >> Every time I think we're almost there with this release, I seem to
> >> manage to get stuck. :-(  However, we're very close: the only PRs that
> >> I'm waiting for are:
> >>
> >> PR 31797: An infinite loop in the compiler while building RTEMS.
> >> Daniel, I see you've been commenting on this; are you working on the
> >> fix?  If so, do you have an ETA?
> >
> > It's not actually a PRE bug, andrew is right.
> > None of the statements accessing volatile variables end up with
> > has_volatile_ops set on them, which is what is really causing the
> > problem.
>
> Thanks -- but that doesn't answer my questions. :-)  Seriously, what I'm
> trying to figure out is whether you (or someone) is working on fixing
> this, so I can get a sense of the tradeoffs between releasing and
> waiting for a fix.

It means we have to figure out what is breaking it first :)
I believe richard guenther has taken it over.


Yes, it's fixed.

Richard.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Daniel Berlin

On 5/11/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:

Daniel Berlin wrote:
> On 5/11/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:
>> Every time I think we're almost there with this release, I seem to
>> manage to get stuck. :-(  However, we're very close: the only PRs that
>> I'm waiting for are:
>>
>> PR 31797: An infinite loop in the compiler while building RTEMS.
>> Daniel, I see you've been commenting on this; are you working on the
>> fix?  If so, do you have an ETA?
>
> It's not actually a PRE bug, andrew is right.
> None of the statements accessing volatile variables end up with
> has_volatile_ops set on them, which is what is really causing the
> problem.

Thanks -- but that doesn't answer my questions. :-)  Seriously, what I'm
trying to figure out is whether you (or someone) is working on fixing
this, so I can get a sense of the tradeoffs between releasing and
waiting for a fix.


It means we have to figure out what is breaking it first :)
I believe richard guenther has taken it over.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Mark Mitchell
Jason Merrill wrote:
> Mark Mitchell wrote:
>> PR 30252: Wrong code generation, perhaps due to the C++ front end's
>> representation for base classes.  Jason, are you actively investigating
>> this one?
> 
> I haven't been; I've been working on the forced unwind stuff, and
> looking at the rvalue refs patch.  If you want I can work on this first,
> but I doubt that the patch would be safe enough for the release branch.

Yes, that's a good point.

> Also, has someone actually verified that this is something that would be
> fixed by the bases-as-fields work?

No, I don't think we know.  There's speculation in the PR trail, but
that's it.  I'd appreciate it if you were able to investigate further,
but I think I'd best just accept that this will not be fixed for 4.2.0.

Thanks,

-- 
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Richard Guenther

On 5/13/07, Jason Merrill <[EMAIL PROTECTED]> wrote:

Mark Mitchell wrote:
> PR 30252: Wrong code generation, perhaps due to the C++ front end's
> representation for base classes.  Jason, are you actively investigating
> this one?

I haven't been; I've been working on the forced unwind stuff, and
looking at the rvalue refs patch.  If you want I can work on this first,
but I doubt that the patch would be safe enough for the release branch.

Also, has someone actually verified that this is something that would be
fixed by the bases-as-fields work?


Possibly not.  See the audit trail of the PR.  But, we can work around the
problem by (bootstrapped and tested on x86_64-unknown-linux-gnu):

Index: passes.c
===
--- passes.c(revision 124635)
+++ passes.c(working copy)
@@ -498,8 +498,8 @@ init_optimization_passes (void)
  /* Initial scalar cleanups.  */
  NEXT_PASS (pass_ccp);
  NEXT_PASS (pass_fre);
-  NEXT_PASS (pass_dce);
  NEXT_PASS (pass_forwprop);
+  NEXT_PASS (pass_dce);
  NEXT_PASS (pass_copy_prop);
  NEXT_PASS (pass_merge_phi);
  NEXT_PASS (pass_vrp);

though the base on which I would say this patch is safe is contradicted
by the fact that it does fix (ok, work around) a regression ;)  The underlying
problem looks like an alias problem or a frontend problem leading to the
alias problem, but I'm out of fu here and Sunday asks for some other things
to do.

Richard.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-13 Thread Joseph S. Myers
On Sun, 13 May 2007, Paul Jarc wrote:

> > Maybe there could be something like --with-libc=/some/path that
> > would automatically generate the correct Makefiles; that would be an
> > enhancement.
> 
> Yes, although a more general enhancement would be to let the user add
> arbitrary flags to LDFLAGS_FOR_TARGET.

You can add --sysroot=, and the supported way to have libc in an unusual 
location is to build as a cross compiler and use --with-sysroot / 
--with-build-sysroot.

-- 
Joseph S. Myers
[EMAIL PROTECTED]


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-12 Thread Paul Jarc
Joe Buck <[EMAIL PROTECTED]> wrote:
> But this was never a documented, supported way of doing things;
> nothing that involves hand-editing could be.

Fair enough, as far as my particular case is concerned.  But something
new in 4.2 is inserting "-Xcompiler" between "-Xlinker" and the
following argument.  It may be that this insertion can be triggered in
other ways that don't involve hand-editing, which would make it
definitely a bug.  So this is not known to be a bug, but also not
known to not be a bug.

> Maybe there could be something like --with-libc=/some/path that
> would automatically generate the correct Makefiles; that would be an
> enhancement.

Yes, although a more general enhancement would be to let the user add
arbitrary flags to LDFLAGS_FOR_TARGET.


paul


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-12 Thread Joe Buck
On Sat, May 12, 2007 at 02:42:22AM -0400, Paul Jarc wrote:
> Joe Buck <[EMAIL PROTECTED]> wrote:
> > I don't even think this qualifies as a bug.  It's basically an
> > enhancement request, to have a clean way of supporting glibc in
> > an unusual place.
> 
> It works in previous versions going back to 2.95.3, so I'd think it
> would be a bug, and a regression.  But since this is such a rare
> circumstance, I wouldn't expect it to be a release-blocker.  I brought
> it up only in the hope that it might be transparent to someone and
> fixed before the release, but I certainly understand if it isn't.

I disagree; you had a procedure to hand-edit the Makefile, and something
changed so your procedure no longer works.  But this was never a
documented, supported way of doing things; nothing that involves
hand-editing could be.  Maybe there could be something like
--with-libc=/some/path that would automatically generate the correct
Makefiles; that would be an enhancement.



Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-12 Thread Bill Wendling

On May 12, 2007, at 6:32 AM, Andrew Pinski wrote:


On 5/11/07, Bill Wendling <[EMAIL PROTECTED]> wrote:

This one was just filed against 4.2.0:

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

It is causing LLVM (at least) to fail to build. Do you think it's
worth adding to the list?


You know the regression is not on the 4.2 branch and only the trunk.
I think Geoff applied the patch which caused the regression to your
local 4.2 tree.
So this is NOT a blocker for 4.2, only 4.3 when get around to fixing
those regressions.


Okay. Thanks, for checking on this! :-)

-bw



Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-12 Thread Jason Merrill

Mark Mitchell wrote:

PR 30252: Wrong code generation, perhaps due to the C++ front end's
representation for base classes.  Jason, are you actively investigating
this one?


I haven't been; I've been working on the forced unwind stuff, and 
looking at the rvalue refs patch.  If you want I can work on this first, 
but I doubt that the patch would be safe enough for the release branch.


Also, has someone actually verified that this is something that would be 
fixed by the bases-as-fields work?


Jason


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-12 Thread Richard Guenther

On 5/12/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:

Daniel Berlin wrote:
> On 5/11/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:
>> Every time I think we're almost there with this release, I seem to
>> manage to get stuck. :-(  However, we're very close: the only PRs that
>> I'm waiting for are:
>>
>> PR 31797: An infinite loop in the compiler while building RTEMS.
>> Daniel, I see you've been commenting on this; are you working on the
>> fix?  If so, do you have an ETA?
>
> It's not actually a PRE bug, andrew is right.
> None of the statements accessing volatile variables end up with
> has_volatile_ops set on them, which is what is really causing the
> problem.

Thanks -- but that doesn't answer my questions. :-)  Seriously, what I'm
trying to figure out is whether you (or someone) is working on fixing
this, so I can get a sense of the tradeoffs between releasing and
waiting for a fix.


I have two fixes and am currently testing one.

Richard.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-12 Thread Gerald Pfeifer
On Sat, 12 May 2007, Benjamin Kosnik wrote:
> Whoops. It looks like this:
> http://gcc.gnu.org/ml/gcc-patches/2007-04/msg00449.html
> http://gcc.gnu.org/ml/gcc-patches/2007-04/msg00476.html
> 
> never got checked in to the 4.2 changes document.

Indeed.  I took Jason's excellent description and committed it as a
patch now:

  http://gcc.gnu.org/ml/gcc-patches/2007-05/msg00827.html

Gerald


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-12 Thread Joel Sherrill

Mark Mitchell wrote:

Steven Bosscher wrote:
  

On 5/12/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:


PR 31797: An infinite loop in the compiler while building RTEMS.
Daniel, I see you've been commenting on this; are you working on the
fix?  If so, do you have an ETA?
  

Why are you waiting for this one? RTEMS is not a primary or secondary
platform.  So there is no reason to wait with the release because of
this PR, according to the release criteria (xf.
http://gcc.gnu.org/gcc-4.2/criteria.html).



I'm not particularly interested in it because of its RTEMS-ness.
Rather, I'm interested in it because it's a new case of the compiler
failing to correctly process valid code, not present in previous
versions of GCC.  The test case is not RTEMS-specific; it's a problem
that looks like it could equally well apply to lots of other code out
there making use of volatile storage.

  
I thought Ralf had managed to reproduce the failure with the reduced 
test case
on all targets he had tried.  The code is in an RTEMS device driver but 
since
it involves volatile, it is possible that this code occur in any OS or 
device driver.


--joel




Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-12 Thread Benjamin Kosnik

>> Names in anonymous namespaces had external linkage for a long time in
>> G++.  Did they have internal linkage in 4.1, or was that introduced  
>> (in
>> theory) for 4.2?

>It was introduced in 4.2.

Whoops. It looks like this:
http://gcc.gnu.org/ml/gcc-patches/2007-04/msg00449.html
http://gcc.gnu.org/ml/gcc-patches/2007-04/msg00476.html

never got checked in to the 4.2 changes document.

-benjamin


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-12 Thread Andrew Pinski

On 5/11/07, Bill Wendling <[EMAIL PROTECTED]> wrote:

This one was just filed against 4.2.0:

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

It is causing LLVM (at least) to fail to build. Do you think it's
worth adding to the list?


You know the regression is not on the 4.2 branch and only the trunk.
I think Geoff applied the patch which caused the regression to your
local 4.2 tree.
So this is NOT a blocker for 4.2, only 4.3 when get around to fixing
those regressions.

Thanks,
Andrew Pinski


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-12 Thread Kenneth Hoste


On 12 May 2007, at 00:02, Mark Mitchell wrote:


Every time I think we're almost there with this release, I seem to
manage to get stuck. :-(  However, we're very close: the only PRs that
I'm waiting for are:



I admit this is not a blocking bug, but it seems fairly (very) easy  
to solve... I still have to figure out how the patch submission  
framework works (never contributed to an open-source project before),  
so I didn't get around to solve it myself.


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

Maybe someone could solve this, so it is solved in GCC 4.2 and others?

K.

--

Computer Science is no more about computers than astronomy is about  
telescopes. (E. W. Dijkstra)


Kenneth Hoste
ELIS - Ghent University
email: [EMAIL PROTECTED]
blog: http://www.elis.ugent.be/~kehoste/blog
website: http://www.elis.ugent.be/~kehoste




Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Paul Jarc
Joe Buck <[EMAIL PROTECTED]> wrote:
> I don't even think this qualifies as a bug.  It's basically an
> enhancement request, to have a clean way of supporting glibc in
> an unusual place.

It works in previous versions going back to 2.95.3, so I'd think it
would be a bug, and a regression.  But since this is such a rare
circumstance, I wouldn't expect it to be a release-blocker.  I brought
it up only in the hope that it might be transparent to someone and
fixed before the release, but I certainly understand if it isn't.


paul


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Joe Buck
On Sat, May 12, 2007 at 12:32:25AM -0400, Paul Jarc wrote:
> Sorry to bring this up so late, but I just tried building the last
> 4.2.0 prerelease and hit what seems to be a build bug:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31906

I don't even think this qualifies as a bug.  It's basically an
enhancement request, to have a clean way of supporting glibc in
an unusual place.  You tried a hand-edit, and it didn't work as
expected, and you filed a bug.  Now you're bringing it up in a
thread about release-blocking bugs?


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Paul Jarc
Sorry to bring this up so late, but I just tried building the last
4.2.0 prerelease and hit what seems to be a build bug:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31906


paul


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Mark Mitchell
Daniel Berlin wrote:
> On 5/11/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:
>> Every time I think we're almost there with this release, I seem to
>> manage to get stuck. :-(  However, we're very close: the only PRs that
>> I'm waiting for are:
>>
>> PR 31797: An infinite loop in the compiler while building RTEMS.
>> Daniel, I see you've been commenting on this; are you working on the
>> fix?  If so, do you have an ETA?
> 
> It's not actually a PRE bug, andrew is right.
> None of the statements accessing volatile variables end up with
> has_volatile_ops set on them, which is what is really causing the
> problem.

Thanks -- but that doesn't answer my questions. :-)  Seriously, what I'm
trying to figure out is whether you (or someone) is working on fixing
this, so I can get a sense of the tradeoffs between releasing and
waiting for a fix.

Thanks,

-- 
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Daniel Berlin

On 5/11/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:

Every time I think we're almost there with this release, I seem to
manage to get stuck. :-(  However, we're very close: the only PRs that
I'm waiting for are:

PR 31797: An infinite loop in the compiler while building RTEMS.
Daniel, I see you've been commenting on this; are you working on the
fix?  If so, do you have an ETA?


It's not actually a PRE bug, andrew is right.
None of the statements accessing volatile variables end up with
has_volatile_ops set on them, which is what is really causing the
problem.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Chris Lattner


On May 11, 2007, at 5:28 PM, Mark Mitchell wrote:


Bill Wendling wrote:

Andrew Pinski wasn't able to reproduce the link error on Linux,  
and I've

only seen it on Darwin. However, as Chris Lattner pointed out, this
indicates a fairly serious problem (which shows up even on the Linux
build) in that the symbols aren't getting internal linkage  
(they're in
an anonymous namespace, so should). It could impact performance on  
large

systems quite a bit. Certainly during linking.


Names in anonymous namespaces had external linkage for a long time in
G++.  Did they have internal linkage in 4.1, or was that introduced  
(in

theory) for 4.2?


It was introduced in 4.2.  Also, this bug may be specific to typeinfo  
objects - other symbols seem to be ok.


-Chris


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Joe Buck
On Fri, May 11, 2007 at 05:21:01PM -0700, Bill Wendling wrote:
> On May 11, 2007, at 5:15 PM, Mark Mitchell wrote:
> >Bill Wendling wrote:
> >>This one was just filed against 4.2.0:
> >>
> >>   http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31903
> >>
> >>It is causing LLVM (at least) to fail to build. Do you think it's  
> >>worth
> >>adding to the list?
> >
> >Does it show up anywhere other than Darwin?  On the basis of Darwin
> >alone, I would not further hold up the release.  That is not to say  
> >that
> >I would not consider a patch to fix it, of course.
> >
> Andrew Pinski wasn't able to reproduce the link error on Linux, and  
> I've only seen it on Darwin. However, as Chris Lattner pointed out,  
> this indicates a fairly serious problem (which shows up even on the  
> Linux build) in that the symbols aren't getting internal linkage  
> (they're in an anonymous namespace, so should). It could impact  
> performance on large systems quite a bit. Certainly during linking.

Shipping FSF releases already have that problem.  Just try
---
namespace {
int foo = 0;
}

int bar = foo;
---
and look at the output with 4.1.2.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Mark Mitchell
Bill Wendling wrote:

> Andrew Pinski wasn't able to reproduce the link error on Linux, and I've
> only seen it on Darwin. However, as Chris Lattner pointed out, this
> indicates a fairly serious problem (which shows up even on the Linux
> build) in that the symbols aren't getting internal linkage (they're in
> an anonymous namespace, so should). It could impact performance on large
> systems quite a bit. Certainly during linking.

Names in anonymous namespaces had external linkage for a long time in
G++.  Did they have internal linkage in 4.1, or was that introduced (in
theory) for 4.2?

-- 
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Bill Wendling

On May 11, 2007, at 5:15 PM, Mark Mitchell wrote:

Bill Wendling wrote:

This one was just filed against 4.2.0:

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

It is causing LLVM (at least) to fail to build. Do you think it's  
worth

adding to the list?


Does it show up anywhere other than Darwin?  On the basis of Darwin
alone, I would not further hold up the release.  That is not to say  
that

I would not consider a patch to fix it, of course.

Andrew Pinski wasn't able to reproduce the link error on Linux, and  
I've only seen it on Darwin. However, as Chris Lattner pointed out,  
this indicates a fairly serious problem (which shows up even on the  
Linux build) in that the symbols aren't getting internal linkage  
(they're in an anonymous namespace, so should). It could impact  
performance on large systems quite a bit. Certainly during linking.


-bw


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Mark Mitchell
Bill Wendling wrote:

> This one was just filed against 4.2.0:
> 
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31903
> 
> It is causing LLVM (at least) to fail to build. Do you think it's worth
> adding to the list?

Does it show up anywhere other than Darwin?  On the basis of Darwin
alone, I would not further hold up the release.  That is not to say that
I would not consider a patch to fix it, of course.

-- 
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Bill Wendling

On May 11, 2007, at 3:02 PM, Mark Mitchell wrote:


Every time I think we're almost there with this release, I seem to
manage to get stuck. :-(  However, we're very close: the only PRs that
I'm waiting for are:

PR 30252: Wrong code generation, perhaps due to the C++ front end's
representation for base classes.  Jason, are you actively  
investigating

this one?

PR 31797: An infinite loop in the compiler while building RTEMS.
Daniel, I see you've been commenting on this; are you working on the
fix?  If so, do you have an ETA?

Please let me know the status of these soon.  If we can't fix 'em,  
I'll

just proceed with what we've got.


Hi Mark,

This one was just filed against 4.2.0:

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

It is causing LLVM (at least) to fail to build. Do you think it's  
worth adding to the list?


-bw



Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread J.C. Pizarro

On 5/12/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:

PR 31797: An infinite loop in the compiler while building RTEMS.


1. Can you localize its last output that stops in its internal infinite loop?
2. Or, is there an infinite outputting in the console?


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Mark Mitchell
Steven Bosscher wrote:
> On 5/12/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:
>> PR 31797: An infinite loop in the compiler while building RTEMS.
>> Daniel, I see you've been commenting on this; are you working on the
>> fix?  If so, do you have an ETA?
> 
> Why are you waiting for this one? RTEMS is not a primary or secondary
> platform.  So there is no reason to wait with the release because of
> this PR, according to the release criteria (xf.
> http://gcc.gnu.org/gcc-4.2/criteria.html).

I'm not particularly interested in it because of its RTEMS-ness.
Rather, I'm interested in it because it's a new case of the compiler
failing to correctly process valid code, not present in previous
versions of GCC.  The test case is not RTEMS-specific; it's a problem
that looks like it could equally well apply to lots of other code out
there making use of volatile storage.

-- 
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Joe Buck
On Sat, May 12, 2007 at 12:05:49AM +0200, Steven Bosscher wrote:
> On 5/12/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:
> >PR 31797: An infinite loop in the compiler while building RTEMS.
> >Daniel, I see you've been commenting on this; are you working on the
> >fix?  If so, do you have an ETA?
> 
> Why are you waiting for this one? RTEMS is not a primary or secondary
> platform.  So there is no reason to wait with the release because of
> this PR, according to the release criteria (xf.
> http://gcc.gnu.org/gcc-4.2/criteria.html).

As long as there are other blockers (e.g. 30252), I see no reason why
RTEMS shouldn't have a chance to fix bootstrap.  If there were no other
blockers, then there would be an issue.


Re: GCC 4.2.0 Status Report (2007-05-11)

2007-05-11 Thread Steven Bosscher

On 5/12/07, Mark Mitchell <[EMAIL PROTECTED]> wrote:

PR 31797: An infinite loop in the compiler while building RTEMS.
Daniel, I see you've been commenting on this; are you working on the
fix?  If so, do you have an ETA?


Why are you waiting for this one? RTEMS is not a primary or secondary
platform.  So there is no reason to wait with the release because of
this PR, according to the release criteria (xf.
http://gcc.gnu.org/gcc-4.2/criteria.html).

Gr.
Steven