LibJIT
Libjit — библиотека для JIT-компиляции, позволяет компилировать фрагменты байт-кода в машинный код во время исполнения программ.
libJIT | |
---|---|
Тип | Библиотека для JIT-компиляции |
Разработчик | Открытое программное обеспечение |
Операционная система | Кроссплатформенное программное обеспечение |
Последняя версия | 0.1.2 (12 декабря 2008) |
Лицензия | GNU LGPL |
Сайт | gnu.org/software/libjit/ |
Первоначально создана Ризом Везерли и Норбертом Боллоу для Фонда свободного программного обеспечения в рамках проекта DotGNU. Позже Libjit разрабатывался Кириллом Кононенко, Клаусом Трейчелом, Алексеем Демаковым. Дизайн библиотеки Libjit содержит обширный набор средств, которые заботятся о процессе компиляции во время выполнения программы, не связывая программиста с языком или специфическими особенностями байт-кода. В отличие от других систем, таких как JVM, .NET и Parrot, LibJIT — это фундамент для создания большого числа виртуальных машин, динамических скриптовых языков. LibJIT является менее функциональным аналогом LLVM. Большая часть работы над компилятором на лету касается арифметики, преобразования типов, записи и чтения из памяти, циклов, проведения анализа графа потока данных, распределения регистров и генерации выполняемого машинного кода. Только очень малая часть работы касается языковых специфических особенностей. Цель проекта LibJIT состоит в том, чтобы обеспечить набор средств компиляции на лету, не связывая программиста с языковыми специфическими особенностями.
Проект LibJIT развивался с 2004[1] по 2008 год.
См. также
Примечания
- Eli Bendersky. Some thoughts on LLVM vs. libjit (англ.) (15 января 2014). — «libjit's first release was in April 2004, as part of the now-defunct DotGNU project.». Дата обращения: 15 декабря 2015.
Литература
- Just-In-Time Compiler Library. Документация, Klaus Treichel, May, 11 2008
- Материалы научных сессий и конференций, libjit-linear-scan-register-allocator 2009-2010
- libJIT Linear Scan (англ.) (недоступная ссылка — история ). — страница проекта LibJIT Linear Scan. Дата обращения: 18 апреля 2009. (недоступная ссылка)
- Дискуссия «libjit vs LLVM» между Rhys Weatherley (Libjit) и Chris Lattner (LLVM) в списке рассылки dotgnu-libjit, 27 May 2004
- ILDJIT - альтернативный JIT для CIL
- Aleksey Demakov’s projects: LibJIT (англ.)
- Сайт проекта DotGNU
- HornetsEye website
- «DotGNU Southern-Summer of Code» - сообщения в списке рассылки dotgnu-pnet о начале проектов Portable.NET JIT compiler и Libjit
- TRUMPF-Laser
- DotGNU befreit .NET aus seiner Abhängigkeit, Elektroniknet: Embedded Systems (недоступная ссылка с 15-12-2015 [2267 дней])
- HornetsEye web page on JIT compilation
- Libjit developers mail list
- Libjit mailing list archive from 3th February 2005. «The grants»
- .NET Developer’s Journal Mono Releases Version 1.2, DECEMBER 24, 2006
- Getting started with libjit - part 1, Part 2, Part 3 2013-2014