[comp.lang.clu] Clu Linker Arcana

scc@cl.cam.ac.uk (Stephen Crawley) (06/30/88)

Here's an obscure question for someone who understands the workings
of the Clu runtime system ... (any gurus at MIT listening?)

The VAX and 68000 versions of the Clu linker (at Cambridge at least)
have an #option called "jcl_size" which takes an integer value.  When
this option is given, the linker sets a constant (jclsize) in the 
program image.  The VAX _start routine seems to use the value of 
jclsize to influence the start address for the Clu heap.  

Though I think I understand what the assembler code is doing I can't 
work out WHY any of this is necessary.  Is this jcl_size stuff a left 
over from a bygone age?  Or is there a genuine reason (and perhaps
our copy of the code is broken ...).  Whatever, our copies of the 
.xload files for the compiler and assembler specify "#jcl_size:1024" !

I ask this because I am in the middle of reworking this area (so
that we can run CClu on both Ultrix and Amoeba), and I am sorely
tempted to remove the code.  (It is either that or rewrite it not
to use a VAX LOCC instruction)

Any advice on this would be greatly appreciated.

-- Steve

JANET:	scc@uk.ac.cam.cl
ARPA:	scc%cl.cam.ac.uk@nss.ucl.ac.uk
UUCP:	scc@cam-cl.UUCP		(or ...!mcvax!ukc!cam-cl!scc )