|
Re: Q: newsub opcodes: msg#00646lang.perl.perl6.internals
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 |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: Mostly a Perl task for the interested: 00646, Leopold Toetsch |
|---|---|
| Next by Date: | [CVS ci] PMC constants 2: 00646, Leopold Toetsch |
| Previous by Thread: | Re: Q: newsub opcodesi: 00646, Brent 'Dax' Royal-Gordon |
| Next by Thread: | Mostly a Perl task for the interested: 00646, Leopold Toetsch |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |