Brent 'Dax' Royal-Gordon <brentdax@xxxxxxxxx> wrote:
> ... We could probably do something very clever to abstract it,
> like load all the constants into a reserved, dynamically-sized set of
> registers starting at [INSP]32.
That doesn't work. Registers are accessed per interpreter/thread and now
per subroutine (with the frame pointer). Constants are always the same
(modulo initialization/fixup phase) during program execution.
> A scheme like this would allow us to consolidate the constant and
> register variants of all the ops,
I'd like to, but the meaning of these 2 kinds is too different. Have a
look at JIT code:
fldl 0x87652468 # get number from const_table
stpl 0x88(%ebx) # store it in Parrot reg N1
mov 4(%ebx), %eax # get I1
leo
|
Try Searching:
servers, voip, java, networking, microsoft ...
|
|
|
|