[Top][All Lists]

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

Re: wip-rtl status

From: Andy Wingo
Subject: Re: wip-rtl status
Date: Tue, 05 Jun 2012 10:04:43 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.4 (gnu/linux)

On Mon 04 Jun 2012 23:12, address@hidden (Ludovic Courtès) writes:

> Andy Wingo <address@hidden> skribis:
>> However something like '(1 . (2 . ())) has two pairs: the tail which has
>> two immediates, and the head that has an immediate in the car but a
>> pointer in the cdr.  In that case you need to patch up the cdr to point
>> to the tail, after you load the .go (or .so?) file.
> Actually, it could typically be patched by the loader, just like what
> happens with the variables emitted by ‘SCM_IMMUTABLE_STRING’ and such, no?
> (Hmm, perhaps that’s what you meant?)

Yes, that is what I meant.  Either you emit relocations into the ELF
file, and rely on the dynamic loader to interpret them, or you compile a
procedure to do the relocations and call it as an init function.
Wip-rtl does the latter, because that way we can also do one-time
initializations like string->symbol, string->number, etc.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]