This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: powerpc & unaligned block moves with fp registers


> I agree with this, actually, but the group seems to be moving more in 
> the
> direction of not supporting anything nonstandard (strict aliasing, which
> broke lots of existing code including gcc itself, springs to mind).


A couple of points here.

First the standard is a means to an end, not an end in itself. The end is to 
provide a useful compiler. A compiler that meets the standard but is not
useful is a dubious artifact. So arguing from the standard is always a
tricky business. Certainly we don't want to do seriously inefficient
things to accomodate "bad" code, but we have to be careful to make sure
that we are talking about serious inefficiency.

Compiler writers always tend to be too optimistic about the benefits of
particular optimizations.

For example, strict aliasing, just how important is this. As compiler
writers, we would tend to believe it was critical, but do we really have
data that supports this. The only measurement we did in Ada was on the
compiler itself. GNAT runs 1% slower if compiled with no strict aliasing.
Since strict aliasing results in a number of unexpected behaviors in
Ada code (all cases where the standard does not require the expected 
behavior, but this does not chnage the expectations :-)

Richard reacts that the compiler is non-typical (our discussion was about
whether strict aliasing should be the default in GNAT). Fine, I am willing
to believe that is the case, but still it would be nice to have some real
customer programs that show the supposed huge benefits of strict aliasing!



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]