@inproceedings{dafe5c172a3c47c5b42bc0ad36d8e351,
title = "Relocatable addressing model for symbolic execution",
abstract = "Symbolic execution (SE) is a widely used program analysis technique. Existing SE engines model the memory space by associating memory objects with concrete addresses, where the representation of each allocated object is determined during its allocation. We present a novel addressing model where the underlying representation of an allocated object can be dynamically modified even after its allocation, by using symbolic addresses rather than concrete ones. We demonstrate the benefits of our model in two application scenarios: dynamic inter- and intra-object partitioning. In the former, we show how the recently proposed segmented memory model can be improved by dynamically merging several object representations into a single one, rather than doing that a-priori using static pointer analysis. In the latter, we show how the cost of solving array theory constraints can be reduced by splitting the representations of large objects into multiple smaller ones. Our preliminary results show that our approach can significantly improve the overall effectiveness of the symbolic exploration.",
keywords = "Addressing model, Memory partitioning, Symbolic execution",
author = "David Trabish and Noam Rinetzky",
note = "Publisher Copyright: {\textcopyright} 2020 ACM.; 29th ACM SIGSOFT International Symposium on Software Testing and Analysis, ISSTA 2020 ; Conference date: 18-07-2020 Through 22-07-2020",
year = "2020",
month = jul,
day = "18",
doi = "https://doi.org/10.1145/3395363.3397363",
language = "الإنجليزيّة",
series = "ISSTA 2020 - Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis",
pages = "51--62",
editor = "Sarfraz Khurshid and Pasareanu, {Corina S.}",
booktitle = "ISSTA 2020 - Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis",
}