libJIT | |
---|---|
Tip de | Bibliotecă pentru compilarea JIT |
Dezvoltator | software open source |
Sistem de operare | Software multiplatformă |
ultima versiune | 0.1.2 (12 decembrie 2008) |
Licență | GNU LGPL |
Site-ul web | gnu.org/software/libjit/ |
Libjit este o bibliotecă de compilare JIT care vă permite să compilați fragmente de bytecode în codul mașinii în timpul rulării.
Creat inițial de Reese Weatherly și Norbert Bollow pentru Free Software Foundation în cadrul proiectului DotGNU . Mai târziu, Libjit a fost dezvoltat de Kirill Kononenko, Klaus Treychel, Alexey Demakov. Designul bibliotecii Libjit conține un set bogat de facilități care se ocupă de procesul de compilare în timpul execuției, fără a lega programatorul de specificul limbajului sau al codului de octeți. Spre deosebire de alte sisteme precum JVM , .NET și Parrot , LibJIT este baza pentru crearea unui număr mare de mașini virtuale, limbaje de scripting dinamice. LibJIT este o contrapartidă mai puțin funcțională la LLVM . O mare parte din munca de compilare on-the-fly se referă la aritmetică, conversie de tip, citire și scriere din memorie, bucle, analiză grafică a fluxului de date, alocare de registre și generare de cod de mașină executabil. Doar o foarte mică parte a lucrării tratează specificul limbii. Scopul proiectului LibJIT este de a oferi un set de instrumente de compilare din mers fără a lega programatorul de specificul limbii.
Proiectul LibJIT s-a dezvoltat din 2004 [1] până în 2008.