[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

akcl --- warning on sun

There are two outstanding problems both to do with suns.  I had
delayed this last release of AKCL hoping to resolve them definitively,
but they are still outstanding.

1) On all sparc stations and sun4s under OS 4.1.1 the sun C compiler
is emitting code which causes RANDOM errors in AKCL.  The only sure
fix I know at this time is to copy 3 compiler files from sun OS 4.03,
to your system and use those.  More precisely you need to create a directory
 /usr/local/lib/cc-4.03 and place in it copies of Sun release 4.03
/lib/{ccom,cg,iropt}.  I have added to the default CC specified in
h/sun4.defs the -Qpath /usr/local/lib/cc-4.03, so it will look for
them there first.  For the benefit of users at University of Texas
under our blanket Sun license, I have placed these three files on
rascal.ics.utexas.edu's ftp directory in cc-4.03.tar.Z.  For those at
other sites you either need to obtain permission from Sun to copy
these files, or restore them from your old binaries.  I do not have a
copy of sun's unbundled compiler, and do not know if the above
problems occur with it.  I would be interested in a report on that.

If you do not do this you can expect failure at RANDOM times during
the bootstrapping of the compiler.  For example lisp might fail while
trying to compile cmpnew/cmpvar.lsp with a random lisp error.  Yet if
you type make in the cmpnew directory again, it may well complete ok.
For example I compiled cmpnew/cmplam.lsp 100 times, restarting the
interpreted lisp (built during the first make pass of akcl),
identically each time.  It failed 5 times out of 100.  During the
bootstrapping the files eval.c and gbc.c are the two which are
exercised the most.  By compiling eval.c with the 4.03 compiler I was
able to compile cmplam.lsp 270 times with only 1 failure.  Still one
failure is too many.  When I compiled all files with the 4.03 compiler
I compiled cmplam.lsp 700 times (3 days), with no failures--so I
believe that compiler/code combination is ok.  I have tried on
sparcstation I,II,and 470 all with the same result.  I have tried
different disks, server and non server.  These problems do nor occur
with sun3's, hps (risc or not) ibms etc.

2) Less serious but still annoying.   If you use (user-homedir-pathname)
and then do a save-system, the resulting image if transported to another
domain will fail.   This is because in OS 4.1.1, sun's yp code, they
started keeping a secret (static) pointer to a the yp files which they
mmap into the address space.   _cleanup does not remove that pointer.
I see no way of fixing this, short of changing the yp code to cleanup
when _cleanup is called.   I now invoke yp_unbind manually, and that
at least let images start up at the same site.      These problems
will NOT appear unless you do something to refer to yellow pages
before saving the system.

Sun has been apprised of both these bugs and hopefully something can
be done.