LLVMプロジェクトは27日(米国時間)、最新バージョンである「LLVM 2.7」をリリースした。LLVM (Low Level Virtual Machine)はAppleのMac OS Xなどでも利用されているコンパイラ環境。新バージョンではデバッグやシステム最適化を行うための中間情報を埋め込むメタデータ記述の拡張や、ClangでのC++によるセルフホスティングへの対応、新ロゴの設定など、いくつかのメジャーアップデートが行われている。
LLVMは従来の高級言語からバイトコードを直接吐き出すタイプのコンパイラとは異なり、高級言語から実行直前の中間言語を生成するコンパイラ・フロントエンドと、それをJIT (Just-In-Time)形式で異なる複数のターゲットマシン上で実行するバックエンドを組み合わせた二重構造になっている点に特徴がある。これにより複数のプログラミング言語を同時にサポートできるほか、ターゲットマシンを変更することでプラットフォーム非依存のプログラミング環境を構築できるからだ。LLVMプロジェクトはAppleの一部支援を受けており、現在のMac OS XシステムはこのLLVMに深く依存している。LLVMがフロントエンドとしてObjective-Cに強くコミットしているのも、こうした理由による。
LLVM 2.7でのメジャーアップデートの1つは、LLVMのC/C++/Objective-Cのコンパイラ・フロントエンドである「Clang」の機能強化だ。ClangではC++のセルフホスティングに対応し、C++でLLVMとClangのビルドが可能になった。セルフホスティング(Self-Hosting)とは、コンパイラやOSシステムが自身をコンパイルして新バージョンへと改訂する機能ことである。ただしClangチームによれば、まだC++でのセルフホスティングはアルファ版程度の品質だという。このほかClang関係のアップデートでは、Objective-CのDarwin以外の環境でのABI (Application Binary Interface)サポート、またARMプラットフォームでのDarwinとLinuxの両環境でのABIサポートが行われている。静的ソースコード解析ツールのClang Static Analyzerも機能強化が行われているという。
LLVM 2.7のインフラストラクチャ自体のアップデートとしては、ターゲットマシンとしてXilinx FPGAのプロセッサコアであるMicroBlazeに対応したこと、そしてLLVM IR (Intermediate Representation)の「Extensible Metadata」機能をサポートしたことが挙げられる。これはソースコードにコンパイル時の補助情報を書き込む機能で、ここで記述されたメタデータはデバッグや逆アセンブル時に利用されるほか、特定プラットフォーム向けの低レベルプログラミングや最適化を実現する。このほかラベルのアドレス化やポインタを利用した間接ブランチなど、コンパイラ関連でいくつかの拡張が行われている。
このほか、コミュニティ関連でのアップデートとしては、LLVMプロジェクトのロゴが刷新されている。サイズ別に2種類のドラゴンが描かれたイメージが用意されているほか、いくつかの派生バージョンが存在する。LLVM.orgの新サーバの移行による高速化や公式Blogの開始なども行われており、プロジェクト自体が心機一転といった状態だ。
| 【特別企画】使いやすいサイトにリニューアル! 親切機能満載なG-Tuneの歩き方 [10:00 5/28] |
| 【レポート】マカフィーの世界の専門家の意識調査「サイバー防衛報告書」とセキュリティソリューション [21:15 5/25] |
| アップル、Aperture 3.2.4を公開 - バグ修正、安定性向上など [20:51 5/25] |
| 【レポート】GTC 2012 - VGXでエンタープライズ環境でのGPU需要開拓を狙うNVIDIA [20:07 5/25] |
| 上海問屋、iPhoneとほぼ同じ薄さのバッテリ内蔵ヘッドホンアンプ [19:05 5/25] |
|
【レビュー】快適なファイル共有とコミュニケーション機能を搭載した「Webhard」 [10:00 5/28] ネット |
|
【特別企画】使いやすいサイトにリニューアル! 親切機能満載なG-Tuneの歩き方 [10:00 5/28] パソコン |
|
東陽テクニカ、1G/10GbE回線対応のポータブルネットワークアナライザ [09:57 5/28] エンタープライズ |
|
TKC、夏の電力不足に備え全国3カ所に移動電源車を配備 [09:41 5/28] 経営 |
|
日本発の取り組み「Mozilla Factory」がスタート [09:30 5/28] エンタープライズ |