Pourquoi est-llvm considérés comme impropres à la mise en œuvre d'un JIT?

De nombreux langages dynamiques en œuvre (ou si vous voulez mettre en œuvre) un Compilateur JIT afin d'accélérer leurs délais d'exécution. Inévitablement, quelqu'un de la galerie d'arachide demande pourquoi ils n'utilisent pas de LLVM. La réponse est souvent, "LLVM est impropre à la construction d'une ÉQUIPE." (Par Exemple, Armin Rigo commentaire ici.)

Pourquoi est-LLVM Impropres à la construction d'un JIT?

Note: je sais LLVM a sa propre ÉQUIPE. Si LLVM utilisé pour être impropre, mais il est maintenant adapté, merci de dire ce qui a changé. Je ne parle pas de l'exécution du Bytecode LLVM sur la LLVM JIT, je suis en train de parler à l'aide de la LLVM bibliothèques pour mettre en oeuvre JIT pour un langage dynamique.

  • Hmm... stackoverflow.com/questions/4077396/llvm-jit-speed-up-choices/... dit que la réponse est "parce que c'est trop lent".
  • -1 LLVM n'est pas considéré comme impropre à la mise en œuvre d'un JIT.
  • Bien Jon, j'ai plusieurs bonnes réponses ci-dessous. Peut-être que vous pouvez en écrire un sur votre I-mise en œuvre-un-JIT-avec-LLVM-et-il-était-une expérience extraordinaire?
  • Pour mon prochain tour, je vais vous dire le Chef de Fer comment faire des gaufres. (sent soi-même.)
  • S'ok. A de pire sur cette autre question, où j'ai obtenu 4 downvotes en dépit d'être le seul répondeur pour avoir écrit plusieurs à faible latence pour les applications commerciales dans les langages fonctionnels! stackoverflow.com/a/4479114/13924