@inproceedings{e802311ca1da45b39c5ba2dcdf949c0d,
title = "Causal Distance-Metric-Based Assistance for Debugging after Compiler Fuzzing",
abstract = "Measuring the distance between two program executions is a fundamental problem in dynamic analysis of software, and useful in many test generation and debugging algorithms. This paper proposes a metric for measuring distance between executions, and specializes it to an important application: determining similarity of failing test cases for the purpose of automated fault identification and localization in debugging based on automatically generated compiler tests. The metric is based on a causal concept of distance where executions are similar to the degree that changes in the program itself, introduced by mutation, cause similar changes in the correctness of the executions. Specifically, if two failing test cases (for the original compiler) become successful due to the same mutant, they are more likely to be due to the same fault. We evaluate our metric using more than 50 faults and 2,800 test cases for two widely-used real-world compilers, and demonstrate improvements over state-of-the-art methods for fault identification and localization.",
keywords = "Compiler testing, Debugging, Distance metrics, Fault identification, Fault localization, Mutation analysis",
author = "Josie Holmes and Alex Groce",
note = "Publisher Copyright: {\textcopyright} 2018 IEEE.; 29th IEEE International Symposium on Software Reliability Engineering, ISSRE 2018 ; Conference date: 15-10-2018 Through 18-10-2018",
year = "2018",
month = nov,
day = "16",
doi = "10.1109/ISSRE.2018.00027",
language = "English (US)",
series = "Proceedings - International Symposium on Software Reliability Engineering, ISSRE",
publisher = "IEEE Computer Society",
pages = "166--177",
editor = "Sudipto Ghosh and Bojan Cukic and Robin Poston and Roberto Natella and Nuno Laranjeiro",
booktitle = "Proceedings - 29th IEEE International Symposium on Software Reliability Engineering, ISSRE 2018",
}