separate assembly

Stephen Weeks sweeks@intertrust.com
Fri, 11 Aug 2000 16:36:23 -0700 (PDT)


> I've got the assembler time
> of a self compile down to 60 seconds (on a 200MHz PPro!) 

Excellent.  We'll see a 5 minute self compile (on a fast machine) yet.

> This causes one minor problem.  Originally, I had only made the labels for
> gcReturns and entries global (since those are what might appear on the
> stack, so they need to be global in order to resolve with their
> counterparts in the C-stub file that sets up the frame layouts), and
> everything else local.  However, with separate files, I needed to make all
> labels global so that they resolve at link time. 

Hmmm.  I would like to understand an example of what other labels need to be
global.  I would think that gcReturns and entries is enough.  Can you send a CPS 
program and chunkification that causes problems?

> That seems kind of bad,
> since now there are tons of labels in the namespace, but I haven't seen
> any clashes with libraries yet.

Maybe the right thing is for you to change all the names to L_????, or somesuch, 
to avoid name clashes?

> Ideally, I'd like to make everything global, do the assembly
> and the incremental link, then patch that object file so that only
> gcReturns and entries are global, and everything else is local.

Hmmm, could the patch happen after linking with the C stub?  Then nothing is
global other than the library routines.