微軟引入LLILC,基于LLVM的.NET/CoreCLR編譯器

dgy7 9年前發布 | 6K 次閱讀 微軟

英文原文:Microsoft Introduces LLILC, LLVM-based .NET/CoreCLR Compiler

.NET 基金會宣布了名為 LLILC(發音為“lilac”)的新項目的發布。該項目最初由微軟貢獻,致力于為 .NET 核心(Core)提供新的基于 LLVM 的原生代碼編譯器,從而使“在任何 CoreCLR 能夠移植的以及 LLVM 會支持的平臺上”運行 .NET 程序成為可能。

微軟開發基于 LLVM 的代碼生成器所采用的方法,是基于現有的 CIL 閱讀器,“與生產環境中的閱讀器(RyuJIT)一樣直接針對同樣的通用 JIT 接口進行操作”。該方法被認為優于從現有的以 LLVM BitCode 為目標的開源項目著手,比如 SharpLangLLVMSharp,從而能夠更好地支持新的 CoreCLR 接口。

當前,LLILC 集中精力于提供 JIT 編譯器,不過這還尚未完成。在 Windows 上,LLILC 現在能夠編譯 CoreCLR 中一半的測試,“其余仍然要依靠 RyuJIT”。隨著在 Linux 和 OS X 上的 .NET 核心的成熟度的提高,LLILC 團隊計劃也為這些平臺提供與 Windows 的實現質量相近的 LLILC 實現。

在 LLILC 的路線圖上的下一個目標是安裝時(install-time)JIT 編譯器,這應當“允許生成的代碼可以在應用程序的多次調用間共享,或者在共享一組程序集(assembly)的多個進程間共享”。最后,LLILC 項目還將考慮提前(ahead-of-time)編譯器的實現。

.NET 基金會是微軟在 2014 Build 大會上成立的,作為“所有微軟已經開源的,以及將來會在開源協議(很可能是 Apache 2.0)下發布的所有 .NET 各部分的保護傘”。

來自: InfoQ

 本文由用戶 dgy7 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!