Reini Urban > Jit-0.04 > Jit

Download:
Jit-0.04.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.04   Source   Latest Release: Jit-0.04_09

Jit the perl5 runops loop in proper execution order

It does only work yet for non-threaded simple functions! No subs, no branches.

This perl5 jitter is super-simple. The compiled optree is a linked list in memory in non-execution order, wide-spread jumps. Additionally the calls are indirect. The jitter properly aligns the run-time calls in linear linked-list "exec" order, so that the CPU can prefetch the next instructions.

The old indirect call far costs about 70 cycles, the new direct call near costs 3-5 cycles and is cached.

Speed up: TODO

Additional memory costs: TODO

syntax highlighting: