Back to Search Start Over

Slicing unconditional jumps with unnecessary control dependencies

Authors :
Sergio Pérez
Josep Silva
Carlos Galindo
Source :
Logic-Based Program Synthesis and Transformation ISBN: 9783030684457, LOPSTR, RiuNet. Repositorio Institucional de la Universitat Politécnica de Valéncia, instname
Publication Year :
2021
Publisher :
Springer-Verlag, 2021.

Abstract

[EN] Program slicing is an analysis technique that has a wide range of applications, ranging from compilers to clone detection software, and that has been applied to practically all programming languages. Most program slicing techniques are based on a widely extended program representation, the System Dependence Graph (SDG). However, in the presence of unconditional jumps, there exist some situations where most SDG-based slicing techniques are not as accurate as possible, including more code than strictly necessary. In this paper, we identify one of these scenarios, pointing out the cause of the inaccuracy, and describing the initial solution to the problem proposed in the literature, together with an extension, which solves the problem completely. These solutions modify both the SDG generation and the slicing algorithm. Additionally, we propose an alternative solution, that solves the problem by modifying only the SDG generation, leaving the slicing algorithm untouched.<br />This work has been partially supported by the EU (FEDER) and the Spanish MCI/AEI under grants TIN2016-76843-C4-1-R and PID2019-104735RB-C41, by the Generalitat Valenciana under grant Prometeo/2019/098 (DeepTrust), and by TAILOR, a project funded by EU Horizon 2020 research and innovation programme under GA No 952215

Details

Language :
English
ISBN :
978-3-030-68445-7
ISBNs :
9783030684457
Database :
OpenAIRE
Journal :
Logic-Based Program Synthesis and Transformation ISBN: 9783030684457, LOPSTR, RiuNet. Repositorio Institucional de la Universitat Politécnica de Valéncia, instname
Accession number :
edsair.doi.dedup.....0feaa344ad7cff272a6d42341eacbbeb