Microsoft、LLVMベースの.NET/CoreCLRコンパイラLLILCを発表
.NET FoundationがLLILC(「ライラック」と読む)という新しいプロジェクトのリリースを発表した。 このプロジェクトはもともとMicrosoftによるもので、.NET Coreのための新しいLLVMベースのネイティブコードコンパイラを提供することを目的としている。これによって「CoreCLRが移植されていてLLVMがターゲットとしているプラットフォーム上で」.NETプログラムを動かせるようになる。
このLLVMベースのコード生成アプローチは既存のCILリーダーに基づいており「プロダクション(RyuJIT)と同じ共通JITインターフェイスに対して直接動作する」。新しいCoreCLRインターフェイスをうまくサポートするには、SharpLangやLLVMSharpといったLLVM BitCodeをターゲットとする既存のオープンソースプロジェクトから始めるよりも、このアプローチの方が望ましいと見なされた。
現在、LLILCはJITコンパイラの提供にフォーカスしているが、まだ開発中だ。現在、Windowsにおいて、CoreCLRに含まれるテストの半分をコンパイルすることができ、扱えないものは「RyuJITにフォールバックする」。LinuxとOS Xにおける.NET Coreの完成度が改善された暁には、それらにもWindows実装と同等品質のLLILC実装を提供することを計画している。
LLILCのロードマップによると、Install-Time JITコンパイラが次のターゲットだ。「これは生成されたコードを、1つのアプリケーションの複数の呼び出しの間で、または1つのアセンブリセットを共有する複数のプロセスの間で共有できるようにする」。LLILCプロジェクトでは、Ahead-Of-Timeコンパイラの実装も検討している。
.NET Foundationは2014年のBuildカンファレンスでMicrosoftによって立ち上げられ、Microsoftがすでにオープンソース化している、また将来オープンソースライセンス(おそらくApache 2.0)でリリースする.NETの部分すべてを統括する役割を果たしている。
特集コンテンツ一覧
実例で学ぶGS Collections – Part 2
Donald Raab 2014年11月20日 午後8時3分
実例で学ぶGS Collections – Part 1
Donald Raab 2014年10月23日 午前2時24分
プロジェクトインセプション - 協力体制を作るミーティングの方法
James Bayer 2014年10月14日 午後7時57分
カンバンはどのように動作するか
Amr Noaman Abdel-Hamid 2014年9月7日 午後7時43分
自己組織化チームはなぜ必要か?
Sigi Kaltenecker and Peter Hundermark 2014年8月31日 午前2時2分
効果的なテストの文化を創る
Wes McClure 2014年8月31日 午前1時54分
こんにちは
コメントするには InfoQアカウントの登録 または ログイン が必要です。InfoQ に登録するとさまざまなことができます。アカウント登録をしてInfoQをお楽しみください。
あなたの意見をお聞かせください。