LLILC

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

LLILC — альтернативний компілятор C# від компанії Microsoft, заснований на напрацюваннях проекту LLVM, що працює в поєднанні з .NET Core Runtime (CoreCLR) і призначений для складання .NET-застосунків на мові C#. Початковий код компілятора написаний на мові С ++ і поширюється під ліцензією MIT.

Використання LLVM дає можливість застосовувати компілятор для будь підтримуваної у LLVM платформи, завдяки трансляції байт-коду MSIL у платформо-незалежний формат LLVM.

Навесні 2015, на час випуску компілятора[1], надана можливість застосування LLILC як JIT-компілятор, альтернативний штатним CoreCLR JIT. JIT на базі LLILC дозволяє без створення окремих складань організувати запуск будь-яких C#-програм, що використовують класи .NET Core, на всіх платформах, для яких портований runtime CoreCLR. Повноцінна робота поки можлива тільки у Windows, а підтримка Linux і OS X перебуває на початковій стадії. У майбутньому очікується поява підтримки класичної AOT-компіляції (Ahead-of-time), яка дозволить як генерувати звичайні виконувані файли, так і забезпечувати упереджувальне складання на початковій стадії запуску програми. Розробники LLILC, крім того, мають намір зайнятися роботою з поліпшення підтримки мови C# в основній кодовій базі LLVM. Зокрема, у LLVM планується зайнятися реалізацією специфічних для C# оптимізацій, модернізувати збирач сміття і поліпшити обробку винятків.

Примітки[ред. | ред. код]

  1. LLVMdev. Announcing LLILC: An LLVM based compiler for dotnet CoreCLR. Архів оригіналу за 16 квітня 2015. Процитовано 15 квітня 2015.

Посилання[ред. | ред. код]