Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 04 May 1998 14:24:00 -0600
From:      Jeffrey A Law <law@hurl.cygnus.com>
To:        Joe Buck <jbuck@synopsys.com>
Cc:        pfeifer@dbai.tuwien.ac.at, freebsd-stable@FreeBSD.ORG, obrien@NUXI.com, egcs@cygnus.com
Subject:   Re: GCC 
Message-ID:  <6664.894313440@hurl.cygnus.com>
In-Reply-To: Your message of Mon, 04 May 1998 09:10:04 MDT. <199805041610.JAA18839@atrus.synopsys.com> 

next in thread | previous in thread | raw e-mail | index | archive | help

  In message <199805041610.JAA18839@atrus.synopsys.com>you write:
  > 
  > > > In production shops, I've seen a lot more places go to gcc 2.8.1
  > > > than EGCS, so I feel gcc/g++ is better tested and stable. 
  > > 
  > > Guys like Joe Buck <jbuck@synopsys.com>, author of the "FAQ for g++
  > > and libg++", happen to disagree: 
  > > 
  > >    [EGCS 1.0.x] is considerably more stable than 2.8.1 and vastly
  > >    more stable than the gcc2 snapshots [...]
  > 
  > My statement above applies to C++.  For C, I'd say gcc 2.8.1 seems fine.
I suspect egcs-1.0.x to be more stable than 2.8.1 for C code too, but
the cases where one would notice are more obscure.

For example we've fixed quite a few bugs exposed by glibc.  Most of
the bugs are probably in gcc-2.8.1.  The symptoms of those bugs are
such that folks are less likely to notice them.

An interesting exercise would be to run the testsuite from the
development tree against gcc-2.8.1 and the upcoming egcs-1.0.3
release :-)  I'd bet egcs performs better than gcc-2.7 and gcc-2.8
on most if not all significant targets.

  >  I would be very cautious
  > about shipping any C++ code that uses exceptions with 2.8.1.  Those
  > false warnings you get with -O and -Wall are due to gcc 2.8.1's faulty
  > control flow analysis, and that faulty analysis is used as the basis
  > of optimization.
Yup.  And the person in charge of gcc2 has rejected our suggestions
for fixing the inaccuracies in the cfg.

gcc2 relies on some rather fragile code to avoid incorrect code
with optimization and EH.  I'm not convinced that code will work
right with the existing gcc2 optimizations.  I know it will not
work with the additional optimizations already in egcs.

Our scheme of computing an accurate cfg works and will continue to
work as egcs continues to implement more aggressive optimizers.


  > Those of us on both lists who see the reports know that the egcs testing
  > has been more thorough that the gcc 2.8.x testing.
Absolutely.  egcs-1.0.x went through much more rigorous testing than
gcc-2.8.x.  But since the gcc2 lists are not public most folks are
not aware of how little testing went into gcc-2.8.

  > gcc -fno-exceptions for gcc 2.8.1 is probably fine.  The scandal is that
  > the story FSF has put out as to why gcc 2.8.x took so long had to do with
  > exceptions -- and they *still* haven't gotten it right.
Yup.  Sad really.


jeff

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6664.894313440>