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.
Ah, OK. That make sense. (Which is probably a clue that it's time to go lie down, but that's a separate issue)
In that case I won't worry about it, and I think I know what I'd like to do with the interpreter, the register frame, and the register backing stack. I'll muddle it about some and see where it goes.
--
Dan
--------------------------------------it's like this-------------------
Dan Sugalski even samurai
[EMAIL PROTECTED] have teddy bears and even
teddy bears get drunk
