Passer à la navigation principale Passer à la recherche Passer au contenu principal

SPUR: A trace-based JIT compiler for CIL

  • Michael Bebenita
  • , Florian Brandner
  • , Manuel Fahndrich
  • , Francesco Logozzo
  • , Wolfram Schulte
  • , Nikolai Tillmann
  • , Herman Venter
  • Microsoft Research

Résultats de recherche: Contribution à un journalArticleRevue par des pairs

Résumé

Tracing just-in-time compilers (TJITs) determine frequently executed traces (hot paths and loops) in running programs and focus their optimization effort by emitting optimized machine code specialized to these traces. Prior work has established this strategy to be especially beneficial for dynamic languages such as JavaScript, where the TJIT interfaces with the interpreter and produces machine code from the JavaScript trace. This direct coupling with a JavaScript interpreter makes it difficult to harness the power of a TJIT for other components that are not written in JavaScript, e.g., the DOM implementation or the layout engine inside a browser. Furthermore, if a TJIT is tied to a particular high-level language interpreter, it is difficult to reuse it for other input languages as the optimizations are likely targeted at specific idioms of the source language. To address these issues, we designed and implemented a TJIT for Microsoft's Common Intermediate Language CIL (the target language of C#, VisualBasic, F#, and many other languages). Working on CIL enables TJIT optimizations for any program compiled to this platform. In addition, to validate that the performance gains of a TJIT for JavaScript do not depend on specific idioms of JavaScript that are lost in the translation to CIL, we provide a performance evaluation of our JavaScript runtime which translates JavaScript to CIL and then runs on top of our CIL TJIT.

langue originaleAnglais
Pages (de - à)708-725
Nombre de pages18
journalACM SIGPLAN Notices
Volume45
Numéro de publication10
Les DOIs
étatPublié - 1 oct. 2010
Modification externeOui

Empreinte digitale

Examiner les sujets de recherche de « SPUR: A trace-based JIT compiler for CIL ». Ensemble, ils forment une empreinte digitale unique.

Contient cette citation