LLVM is a robust system, particularly well suited for developing new mid-level language-independent analyses and optimizations. |
LLVMプロジェクトは3月13日(米国時間)、「LLVM 4.0.0 Release Notes|LLVM 4 documentation」において、LLVMの最新版となる「LLVM 4.0.0」の公開を伝えた。このバージョンからは新しいバージョン番号スキームが適用され、6カ月後に公開される次のバージョンは「LLVM 5.0.0」となり、さらに6カ月後には「LLVM 6.0.0」が公開されることになる。
「LLVM 4.0.0」における主な変更点は次のとおり。
- ThinLTO(-flto=thin)の改善。デバッグオプションとともに使われた場合にビルド時間とバイナリサイズの面で大幅な改善が期待できる
- コルーチン機能の実験的導入(-enable-coroutines)
- Regcallの追加(__regcall)とVectorcall(__vectorcall)の機能拡張
- ARMターゲットのサポート改善
- AVRターゲットのサポート改善
- MIPSターゲットのサポート改善
今回のリリース以降、基本的にバージョン番号の2つ目の値は常に0になるとされている。「4.0」といった2桁の番号ではなく「4.0.0」のように3桁のバージョン番号スキームを維持する理由は従来のコードとの互換性を保つためだと説明がある。パッチリリースは3番目の数字が使われるため、「4.0.0」に対するパッチリリースは「4.0.1」「4.0.2」……といった番号で実施されることになる。