Abstract
This paper describes RandIR, a tool for differential testing of compilers using random instances of a given intermediate representation (IR). RandIR assumes no fixed target language but instead supports extensible IR-definitions through an internal IR-independent representation of operations. This makes it particularly well suited to test embedded compilers for multi-stage programming, which is our main use case. The ideas underlying our work, however, are more generally applicable. RandIR is able to automatically simplify failing instances of a test, a technique commonly referred to as shrinking. This enables testing with large random IR samples, thus increasing the odds of detecting a buggy behavior, while still being able to simplify failing instances to human-readable code.
Author supplied keywords
Cite
CITATION STYLE
Ofenbeck, G., Rompf, T., & Püschel, M. (2016). RandIR: Differential testing for embedded compilers. In SCALA 2016 - Proceedings of the 2016 7th ACM SIGPLAN Symposium on Scala (pp. 21–30). Association for Computing Machinery, Inc. https://doi.org/10.1145/2998392.2998397
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.