binary compatibility ABI

Bryce McKinlay bryce@mckinlay.net.nz
Thu Sep 11 02:34:00 GMT 2003


On Wednesday, Sep 10, 2003, at 23:56 Pacific/Auckland, Andrew Haley 
wrote:
>> The method (ie otables/address tables) that a piece of client code
>> uses to resolve the location of a target field *is* an internal
>> issue, between the client code and the runtime - ie it has nothing
>> to do with the target code.
>> But what if the target code *is* the runtime? That's the commonest
> case.

What I mean is, this is an ABI issue only in the sense of how the 
client (caller) code and libgcj's runtime class linker interract, not 
in how two peices of client code (caller and target) interact. So, in 
theory we could implement a new dispatch technique in a future compiler 
and runtime, while easily retaining support in the runtime for code 
compiled with the existing technique. We could have a version field in 
the classes metadata block to support this kind of thing.
Of course there are some basic concepts that are fixed at the ABI 
level, for example "member fields can be found at some offset from the 
object pointer", but these are fundamental enough that I can't really 
imagine them changing.
Regards
Bryce.


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /