Reinforcing Random Testing of Arithmetic Optimization of C Compilers by Scaling up Size and Number of Expressions
-
- Nagai Eriko
- Kwansei Gakuin University
-
- Hashimoto Atsushi
- Kwansei Gakuin University
-
- Ishiura Nagisa
- Kwansei Gakuin University
抄録
This paper presents an enhanced method of testing validity of arithmetic optimization of C compilers using randomly generated programs. Its bug detection capability is improved over an existing method by 1) generating longer arithmetic expressions and 2) accommodating multiple expressions in test programs. Undefined behavior in long expressions is successfully eliminated by modifying problematic subexpressions during computation of expected values for the expressions. A new method for including floating point operations into compiler random testing is also proposed. Furthermore, an efficient method for minimizing error inducing test programs is presented, which utilizes binary search. Experimental results show that a random test system based on our method has higher bug detection capability than existing methods; it has detected more bugs than previous method in earlier versions of GCCs and has revealed new bugs in the latest versions of GCCs and LLVMs.
収録刊行物
-
- IPSJ Transactions on System LSI Design Methodology
-
IPSJ Transactions on System LSI Design Methodology 7 (0), 91-100, 2014
一般社団法人 情報処理学会
- Tweet
詳細情報 詳細情報について
-
- CRID
- 1390282680269470208
-
- NII論文ID
- 130004679062
-
- ISSN
- 18826687
-
- 本文言語コード
- en
-
- データソース種別
-
- JaLC
- Crossref
- CiNii Articles
- KAKEN
-
- 抄録ライセンスフラグ
- 使用不可