LLVM is a robust system, particularly well suited for developing new mid-level language-independent analyses and optimizations. |
LLVM Clangの最適化対象プロセッサにQualcommのARMベースプロセッサ「Krait」が追加された。llvmとclangの双方に変更が加えられており、プロセッサとしてKraitの追加、プロセッサモデルとしてのKraitの追加が実施されている。現在のところKraitはCortex-A9として追加されており、生成されるコードはCortex-A9を指定した場合と同じになる。
Kraitは2012年にQualcomm Scorpionプロセッサの後継機として登場したARMベースのプロセッサ。Qualcomm Snapdragon S4やSnapdragon 800、Snapdragon 600、Snapdragon 400などのシステムオンチップにおけるプロセッサコアとして使われている。アーキテクチャ的にはARM Cortex-A15に対応するものとなる。Kraitで採用されているインストラクションセットはARMv7。コアの数は2個または4個。L1キャッシュは16KBで、L2キャッシュは1MBないしは2MBとされている。
組み込み機器開発やゲーム機器開発、高性能アプライアンスやネットワークデバイスなどの開発においては扱いやすいライセンスや高速なコンパイル時間などを採用の理由としてLLVM Clangを採用する動きが増えている。ARMはそうしたプラットフォームで採用される傾向があり、LLVM Clangが対象とするプロセッサとしてKraitを追加したことはそうしたベンダにとって意味がある。