[LLVMdev] GSoC 2011: Fast JIT Code Generation for x86-64

Óscar Fuentes ofv at wanadoo.es
Tue Apr 5 12:41:35 PDT 2011

Jim Grosbach <grosbach at apple.com> writes:

>> To me, increasing coverage of the FastISel seemed more involved than
>> directly emitting opcodes to memory, with a lesser outlook on
>> reducing overhead.
> That seems extremely unlikely. You'd be effectively re-implementing
> both fast-isel and the MC binary emitter layers, and it sounds like a
> new register allocator as well.
> What Eric is suggesting is instead locating which IR constructs are
> not being handled by fast-isel and are causing problems (i.e., are
> being frequently encountered in your code-base) and implementing
> fast-isel handling for them. That will remove the selectiondag
> overhead that you've identified as the primary compile-time problem.

At some point on the past someone was kind enough to add fast-isel for
some instructions frequently emitted by my compiler, hoping that that
would speed up JITting. The results were dissapointing (negligible,
IIRC). Either fast-isel does not make much of a difference or the main
inefficiency is elsewhere.

More information about the llvm-dev mailing list