Alive2: bounded translation validation for LLVM
We designed, implemented, and deployed Alive2: a bounded translation validation tool for
the LLVM compiler's intermediate representation (IR). It limits resource consumption by, for …
the LLVM compiler's intermediate representation (IR). It limits resource consumption by, for …
Benchmarking automated GUI testing for Android against real-world bugs
For ensuring the reliability of Android apps, there has been tremendous, continuous
progress on improving automated GUI testing in the past decade. Specifically, dozens of …
progress on improving automated GUI testing in the past decade. Specifically, dozens of …
Nnsmith: Generating diverse and valid test cases for deep learning compilers
Deep-learning (DL) compilers such as TVM and TensorRT are increasingly being used to
optimize deep neural network (DNN) models to meet performance, resource utilization and …
optimize deep neural network (DNN) models to meet performance, resource utilization and …
Finding bugs in database systems via query partitioning
Logic bugs in Database Management Systems (DBMSs) are bugs that cause an incorrect
result for a given query, for example, by omitting a row that should be fetched. These bugs …
result for a given query, for example, by omitting a row that should be fetched. These bugs …
GrayC: Greybox fuzzing of compilers and analysers for C
Fuzzing of compilers and code analysers has led to a large number of bugs being found and
fixed in widely-used frameworks such as LLVM, GCC and Frama-C. Most such fuzzing …
fixed in widely-used frameworks such as LLVM, GCC and Frama-C. Most such fuzzing …
Defect Categorization in Compilers: A Multi-vocal Literature Review
Context: Compilers are the fundamental tools for software development. Thus, compiler
defects can disrupt development productivity and propagate errors into developer-written …
defects can disrupt development productivity and propagate errors into developer-written …
An empirical study of optimization bugs in GCC and LLVM
Z Zhou, Z Ren, G Gao, H Jiang - Journal of Systems and Software, 2021 - Elsevier
Optimizations are the fundamental component of compilers. Bugs in optimizations have
significant impacts, and can cause unintended application behavior and disasters …
significant impacts, and can cause unintended application behavior and disasters …
Llm-based code generation method for golang compiler testing
Q Gu - Proceedings of the 31st ACM Joint European Software …, 2023 - dl.acm.org
Modern optimizing compilers are among the most complex software systems humans build.
One way to identify subtle compiler bugs is fuzzing. Both the quantity and the quality of …
One way to identify subtle compiler bugs is fuzzing. Both the quantity and the quality of …
Boosting compiler testing via compiler optimization exploration
Compilers are a kind of important software, and similar to the quality assurance of other
software, compiler testing is one of the most widely-used ways of guaranteeing their quality …
software, compiler testing is one of the most widely-used ways of guaranteeing their quality …
Compiler test-program generation via memoized configuration search
To ensure compilers' quality, compiler testing has received more and more attention, and
test-program generation is the core task. In recent years, some approaches have been …
test-program generation is the core task. In recent years, some approaches have been …