2016 Fiscal Year Final Research Report
Random testing of compilers based on precise computation of expected values and symbolic execution of generated codes
Project/Area Number |
25330073
|
Research Category |
Grant-in-Aid for Scientific Research (C)
|
Allocation Type | Multi-year Fund |
Section | 一般 |
Research Field |
Computer system
|
Research Institution | Kwansei Gakuin University |
Principal Investigator |
|
Project Period (FY) |
2013-04-01 – 2017-03-31
|
Keywords | コンパイラ / ランダムテスト / テストスイート / 等価変換 / 不具合検出 / 最適化機会抽出 / Orange4 / CF3 |
Outline of Final Research Achievements |
This project has conducted researches on new methods for random testing of C compilers. Three challenges in compiler random testing are 1) how to tell the valid outputs of randomly generated programs, 2) how to avoid generating programs with undefined behavior, and 3) how to minimize the error programs to help developers to track down the bugs. We have developed two strategies to overcome these difficulties. One is to compute expected behavior during test program generation and to avoid generating undefined behavior, the other is to generate random programs by equivalence program transformations from trivial seed programs whose behavior is well known. We have also developed methods to detect insufficient optimization by random programs, methods to test LLVM and Java compilers and their back-ends, and a test suite dedicated to test arithmetic optimization of C compilers.
|
Free Research Field |
情報処理
|