Linux向けデバッグやプロファイラツール群「Valgrind-3.12.0」が公開

 動的解析ツール構築のためのフレームワーク「Valgrind」開発チームは10月24日、「Valgrind-3.12.0」を公開した。メモリ監視機能の強化などが行われている。

 Valgrindは多数のメモリ管理とスレッドのバグを自動的に検出し、プログラムをプロファイリングするツールを集めたフレームワーク。メモリエラー検出やスレッドエラー検出、キャッシュとブランチ検出プロファイラ、コールグラフ生成キャッシュ、ブランチ予測プロファイラ、ヒーププロファイラなどのツールを備え、Linux(x86、AMD64、ARM、ARM64、PPC32、PPC64、PPC64LE、S390X、MIPS32、MIPS64など)、Solaris(x86、AMD64)、Android(ARM、ARM64、x86、MIPS32)、Darwin/Mac OS X 10.10(X86、AMD64)などをサポートする。

 Valgrind-3.12.0は、2005年に初めて公開されたValgrind 3.0系の最新安定版。Memcheckで、メタmempoolのサポートが加わり、カスタムアロケーターを記述できるようになった。他のメモリブロックの割り当てなどに利用できる。また、必要な場合にスタックポインタ下のメモリアクセスを無視する「–ignore-range-below-sp」オプションが加わった。関連する「–workaround-gcc296-bugs=yes」が非推奨となり、代わりに「–ignore-range-below-sp=1024-1」の利用を薦めている。ツール関連ではDRD、DHATも強化した。

 このほか圧縮されたdebuginfoセクションの読み込み、GDBサーバーモニタリングなども強化し、バグも多数修正された。

 プラットフォームではPOWER ISA 3.0の対応が加わり、MIPS、ARM64でのv8暗号化やCRC命令セットも対応した。Mac OS 10.12(Sierra)の初期サポートも加わった。また、32ビットのx86命令セットもサポートするものの、ユーザーに対しては64ビット(amd64またはx86_64)に移行するよう呼びかけている。

 Valgrind-3.12.0はプロジェクトのWebサイトより入手できる。ライセンスはGPLv2。

Valgrind
http://valgrind.org