C optimizer problem -- does DEC have a response?

Marc Evans evans at decvaxdec.com
Tue Aug 28 20:51:49 AEST 1990


|> I mentioned the problems with PERL UNDER ULTRIX 3.1 (confirmed by at least
|> one other message in this newsgroup) and TEX UNDER 4.0 (according to
a report
|> in this group).  Your response about PERL UNDER ULTRIX 4.0 did not
convince
|> me yet that the compiler is not at fault.
|> 
|> Moveover, you write that "Perl compiled here under Ultrix 4.0 fully
|> optimized".  Well, it "compiled" here too, WITHOUT ANY ERROR
MESSAGES,
|> nothing, it merely failed some of the validation tests.  Without any
|> optimizations, it compiled yet again without any error messages, but
|> passed all the tests.  I think I can safely infer that there is a
|> SERIOUS problem with the optimizer or some other part of the mips
|> compiler.
|> 
|> Finally you mention that "There are some known limitations of the
mips c
|> compiler, including the way it deals with volatile & some non-ansi
behavior."
|> Either there are limitations, in which case the compiler should
complain if
|> these are exceeded, or else there are bugs (e.g.: different behaviors
with
|> different main memory sizes).

Who are you quoting? I know that I posted anm article about the DEC
compiler for
the MIPS architecture. I don't have a copy of the article handy, but I
intended
to say that the version of the compiler which is successful is 2.1,
which
cooresponds to the mipsco version 2.10. The *standard* version of the
compiler
shipped with ULTRIX 4.0 is 2.0. One way to determine which version you
are using
is to 'ls -l /usr/bin/cc' and see where the symbolic link points. The
way that
you get the 2.1 compiler is to order the XPG3 patches for ULTRIX 4.0,
which
should be available soon (at the very least in field test).

I will agree that the 2.0 version of the compiler has many problems when
it comes
to -O* compilation. Perl tends to find some of these problems. As far as
certain
ANSI features, yes, it does complain about the ones it doesn't know how
to
handle, such as 'const'. 'volatile' however, it does attempt to handle,
but
appears to have problems. Therefore, when building perl set the volatile
flag
in config.sh to undef and you shouldn't have any problems.

- Marc
--
========================================================================
====
Marc Evans - WB1GRH - evans at decvax.DEC.COM  | Synergytics    
(603)635-8876
      Unix and X Software Contractor        | 21 Hinds Ln, Pelham, NH
03076
========================================================================
====



More information about the Comp.unix.ultrix mailing list