In message <[EMAIL PROTECTED]>
          Dan Sugalski <[EMAIL PROTECTED]> wrote:

> To run a program with the JIT, pass test_parrot the -j flag and watch it
> scream. Well, scream if you're on x86 Linux or BSD (I get a speedup on
> mops.pbc of 35x) but it's a darned good place to start.

It does seem to be quite impressively fast. Faster even than the
compiled version of mops on my machine...

It looks like it is going to need some work before it can work for
other instruction sets though, at least for RISC systems where the
operands are typically encoded with the opcode as part of a single
word and the range of immediate constants is often restricted.

I'm thinking it will need some way of indicating field widths and
shifts for the operands and opcode so they can be merged into an
instruction word and also some way of handling a constant pool so
that arbitrary addresses can be loaded using PC relative loads.

I suspect it is also rather questionable to call system calls
directly rather than going via their C library veneers - that is
even more true when you come to things (like socket calls) which
are system calls on some machines and functions on others.

Tom

-- 
Tom Hughes ([EMAIL PROTECTED])
http://www.compton.nu/

Reply via email to