静的コード比較と動的実行に基づくCコンパイラの 最適化性能のランダムテスト
著者 北浦 幸太
URL http://hdl.handle.net/10236/00028053
2018 年度 修士論文要旨
静的コード比較と動的実行に基づく
C コンパイラの最適化性能のランダムテスト
関西学院大学大学院理工学研究科 情報科学専攻 石浦研究室 北浦 幸太
本論文では, 静的コード比較と動的実行を組み合わせたコンパイラの最適化性能のランダムテスト 手法を提案する. コンパイラ開発の課題は最適化性能の強化であるため, 単に正しいコードを生成す るだけでなく, 意図通りの最適化処理が行われているかも重要なテスト項目である. 最適化性能を対 象とした従来のランダムテストは静的コード比較を用いて不具合の検出を試みるが,コードに差分が あっても実際に実行した際に性能差があるとは限らない. 本論文の手法では, アセンブリコードに基 づく静的コード比較に実行時間の計測による動的比較を追加することにより, 検出精度の高いコンパ イラの最適化性能テスト手法で不具合を検出する. 実際に実行して, 静的コード比較で検出したプロ グラムに対して性能差を確認することにより, 不具合の検出精度を向上する. また, 不具合を残しな がら縮約を行ったプログラムに対して実行時間を計測することにより,不具合の見逃しを削減する. さらに, アセンブリコード中の不一致部分対の抽出と不一致命令の重み和の比較に基づく静的コード 比較により静的解析の精度を向上する. 本手法に基づくテストシステムを Perl 5 を用いて実装し, テストを行った結果, GCC-8.0.0 (2017年 5 月時点の最新バージョン) の最適化性能のリグレッ ションを検出した.
1