At 05:02 PM 10/25/00 +0100, Nicholas Clark wrote:
>On Wed, Oct 25, 2000 at 11:45:54AM -0400, Chaim Frenkel wrote:
> > I vaguly can see a TIL that uses machine code linkage (real machine code
> > jumps) that perhaps could use relative addressing as not needing
> > relocation. But I'm not sure that all architectures support long enough
> > relative jumps/calls.
>
>Specific example where you can't:
>on ARM, the branch instructions (B and BL) are PC relative, but only have
>a 24 bit offset field. The address space is (now) 32 bit, so there's parts
>you can't reach without either calculating addresses (in another register)
>and MOVing them to the PC, or loading the PC from a branch table in memory.

I think the Alphas can be the same, though I vaguely remember the offset 
being something like 32 bits. I'm not sure we'd trip over either, but the 
possibility does exist.

No matter what we do we're going to have fixup sections of some sort in the 
shared code that gets loaded in. There's no real way around that.

                                        Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                      teddy bears get drunk

Reply via email to