Dan Sugalski wrote:
'Kay, now I'm confused. I thought we were talking about removing the registers from out of the interpreter structure, which'd leave us needing two pointers, one for the interpreter struct and one for the registers.

Ok, short summary of future layout of JIT regs:

item                PPC               i386
------------------------------------------------
interpreter         r13               -16(%ebp)
frame pointer       r16                %ebx

Register addressing is done relative to the frame pointer, which will be in a register. The interpreter isn't used that often inside integer JIT code, so it isn't in an register in i386 but is easily reloaded into one.

Currently the frame pointer and the interpreter are the same.

Code that branches (invoke) will reload the frame pointer from the interpreter.

leo



Reply via email to