volatile isn't necessary, but it's there

Barnacle Wes wes at obie.UUCP
Mon Apr 11 05:15:54 AEST 1988


In article <7794 at alice.UUCP> dmr at alice.UUCP writes:
>Has anyone else noticed that a lot of the more peculiar things that X3J11
>has added (volatile, and especially noalias) are there for the
>benefit of compiler writers and benchmarkers, and not for the user?

I read a column a few weeks ago that commented on the dangers of
creeping "benchmarkism" (my phrase).  It was either P.J. Plaugher's
column in Computer Language, or Stan Kelly-Bootle's column in Unix
Review.  The author stated that many of the current MS-DOS compiler
implementors have become so obsessed with benchmark times, their
compilers have become almost unusable.

It seems the compilers are now doing things like unrolling loops with
constant bounds, and generating in-line code for what are supposed to
be library routines, like strcpy and memcpy.  This makes for much
faster benchmarks, but makes large (source) programs generate such
large object files that they no longer fit in the target systems'
memory space.
-- 
    /\              -  "Against Stupidity,  -    {backbones}!
   /\/\  .    /\    -  The Gods Themselves  -  utah-cs!utah-gr!
  /    \/ \/\/  \   -   Contend in Vain."   -  uplherc!sp7040!
 / U i n T e c h \  -       Schiller        -     obie!wes



More information about the Comp.lang.c mailing list