Анонсирован новый релиз LLVM 2.4 (Low Level Virtual Machine), - GCC совместимого инструментария (компиляторы, оптимизаторы и генераторы кода), компилирующего Си/С++ программы в промежуточный байткод RISC подобных виртуальных инструкций (низкоуровневая виртуальная машина с многоуровневой системой оптимизации).
Наиболее интересное применение LLVM - создание JIT (Just-in-time compilation) компиляторов, транслирующих платформонезависимый псевдокод в машинные инструкции непосредственно в момент выполнения программы. Например, одновременно с LLVM 2.4 выпущен первый релиз субпроекта VMKit, представляющего собой реализацию виртуальных машин JVM и CLI VM (.NET) средствами Just-In-Time компилятора LLVM. Также присутствуют такие интересные проекты, как JIT компилятор для PHP, средство для компиляции кода на языке Си в вид пригодный для выполнения в виртуальной машине Adobe Flash.
В новой версии значительно увеличена скорость компиляции (на 30% по сравнению с прошлым релизом), улучшена генерация кода в различных ситуациях, добавлена поддержка микропроцессоров PIC16. В LLVM IR (IR - промежуточное представление инструкций) добавлена поддержка возврата множественных значений, что позволяет использовать в функциях структуры и массивы.
|