Back to Search Start Over

Slicing unconditional jumps with unnecessary control dependencies

Publication Year :
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.

Details

Database :
OAIster
Notes :
Universitat Politècnica de València. Departamento de Sistemas Informáticos y Computación - Departament de Sistemes Informàtics i Computació, GENERALITAT VALENCIANA, AGENCIA ESTATAL DE INVESTIGACION, European Regional Development Fund, COMISION DE LAS COMUNIDADES EUROPEA, Galindo-Jiménez, Carlos Santiago, Pérez-Rubio, Sergio, Silva, Josep
Publication Type :
Electronic Resource
Accession number :
edsoai.on1334345624
Document Type :
Electronic Resource