Profiled my JIT Rust aarch64 emulator:
- Around 7-8% of time is spent executing translated guest code
- #cranelift codegen takes 45.7% of time
- its register allocator, regalloc, takes an additional 19%
- Basic runtime logic such as MMU virtual address translation takes only 2% (with TLB caching)
This results in taking almost 40 seconds to boot to Linux prompt. QEMU takes a few seconds.
Replacing the JIT is tempting...
