Почему llvm считается неподходящим для реализации JIT?

Многие динамические языки реализуют (или хотят реализовать) JIT-компилятор, чтобы ускорить время их выполнения. Неизбежно кто-нибудь из арахисовой галереи спросит, почему они не используют LLVM. Часто ответ таков: «LLVM не подходит для построения JIT». (Например, комментарий Армина Риго здесь. )

Почему LLVM не подходит для построения JIT?

Примечание: я знаю, что LLVM имеет свою собственную JIT. Если раньше LLVM не подходил, а теперь подходит, скажите, что изменилось. Я не говорю о запуске байт-кода LLVM на LLVM JIT, я говорю об использовании библиотек LLVM для реализации JIT для динамического языка.

57
задан Sean McMillan 5 March 2012 в 21:05
поделиться