The C programming language
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Symbolic execution and program testing
Communications of the ACM
CUTE: a concolic unit testing engine for C
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
A Test Data Generation Tool for Unit Testing of C Programs
QSIC '06 Proceedings of the Sixth International Conference on Quality Software
Program analysis as constraint solving
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
The road not taken: Estimating path execution frequency statically
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Volume Computation for Boolean Combination of Linear Arithmetic Constraints
CADE-22 Proceedings of the 22nd International Conference on Automated Deduction
Probabilistic symbolic execution
Proceedings of the 2012 International Symposium on Software Testing and Analysis
Performance estimation using symbolic data
Theories of Programming and Formal Methods
Hi-index | 0.00 |
We propose to combine symbolic execution with volume computation to compute the exact execution frequency of program paths and branches. Given a path, we use symbolic execution to obtain the path condition which is a set of constraints; then we use volume computation to obtain the size of the solution space for the constraints. With such a methodology and supporting tools, we can decide which paths in a program are executed more often than the others. We can also generate certain test cases that are related to the execution frequency, e.g., those covering cold paths.