3.9 Article Proceedings Paper

Test-Case Reduction for C Compiler Bugs

期刊

ACM SIGPLAN NOTICES
卷 47, 期 6, 页码 335-345

出版社

ASSOC COMPUTING MACHINERY
DOI: 10.1145/2345156.2254104

关键词

compiler testing; compiler defect; automated testing; random testing; bug reporting; test-case minimization

资金

  1. DARPA's Computer Science Study Group
  2. ANR-funded U3CAT project
  3. NSA contract [H98230-10-C-0294]

向作者/读者索取更多资源

To report a compiler bug, one must often find a small test case that triggers the bug. The existing approach to automated test-case reduction, delta debugging, works by removing substrings of the original input; the result is a concatenation of substrings that delta cannot remove. We have found this approach less than ideal for reducing C programs because it typically yields test cases that are too large or even invalid (relying on undefined behavior). To obtain small and valid test cases consistently, we designed and implemented three new, domain-specific test-case reducers. The best of these is based on a novel framework in which a generic fixpoint computation invokes modular transformations that perform reduction operations. This reducer produces outputs that are, on average, more than 25 times smaller than those produced by our other reducers or by the existing reducer that is most commonly used by compiler developers. We conclude that effective program reduction requires more than straightforward delta debugging.

作者

我是这篇论文的作者
点击您的名字以认领此论文并将其添加到您的个人资料中。

评论

主要评分

3.9
评分不足

次要评分

新颖性
-
重要性
-
科学严谨性
-
评价这篇论文

推荐

暂无数据
暂无数据