|Backpatch? email@example.com (Nikos Diamantopoulos) (1995-06-25)|
|Re: Backpatch? firstname.lastname@example.org (1995-06-30)|
|Re: Backpatch? email@example.com (1995-07-01)|
|Re: Backpatch? IanC@gibside.demon.co.uk (Ian Cull) (1995-07-05)|
|Re: Backpatch? firstname.lastname@example.org (1995-07-13)|
|Re: Backpatch? email@example.com (1995-07-19)|
|Re: Backpatch? firstname.lastname@example.org (1995-07-20)|
|Re: Backpatch? email@example.com (1995-07-20)|
|From:||Ian Cull <IanC@gibside.demon.co.uk>|
|Date:||Wed, 5 Jul 1995 18:17:10 GMT|
firstname.lastname@example.org "Lowell Boggs" writes:
> I used to work with an assembler that used back patching for symbol
> names. The technique worked like this:
>[keep link list per symbol in the object code]
I once wrote a compiler & assembler in (ZX Spectrum) Basic - the compiler
output assembler source code, then the assembler converted it to M/C.
It did *exactly* this trick to resolve forward references - it was a big
advantage because of the memory storage savings (the ZX Spectrum had only
48K RAM, including the screen).
When the variable is unknown, its 'value' points to the linked list of
places where it is referenced; as soon as its value is known, the linked
list is resolved, and then the variable has its proper value ...
It works fine for "simple" machine code - complex opcodes would be difficult
Ian Cull, Gateshead, UK
Return to the
Search the comp.compilers archives again.