Improving the Preciseness of Dependence Analysis Using Exception Analysis
Shujuan Jiang, Shengwu Zhou, Yuqin Shi, Yuanpeng Jiang
Abstract
Shujuan Jiang, Shengwu Zhou, Yuqin Shi, Yuanpeng Jiang
Abstract
Program dependence analysis is an analysis technique to identify and determine various program dependences in program source codes. It is an important approach for testing, understanding, maintaining programs. Exception handling mechanism in modern programming languages is a technology that can improve software robustness, but failures to account for the effects of exception handling mechanism in dependence analysis can result in incorrect analysis result. In this paper, we extend previous work on dependences analysis using exception analysis to analyze the dependences of C++ programs with exception handling constructs. The improved exception control flow graph we propose, IECFG, is a novel representation of C++ program's intra-functional control flow. The IECFG is more precise than traditional CFG in representing the programs with exception handling constructs. We introduce how to construct the program dependence graph (PDG) and the system dependence graph (SDG) based on the IECFG. With the help of this representation, we can obtain more precise information than most previous methods we know
OpenAlex reports 10 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Program dependence analysis is an analysis technique to identify and determine various program dependences in program source codes. It is an important approach for testing, understanding, maintaining programs. Exception handling mechanism in modern programming languages is a technology that can improve software robustness, but failures to account for the effects of exception handling mechanism in dependence analysis can result in incorrect analysis result. In this paper, we extend previous work on dependences analysis using exception analysis to analyze the dependences of C++ programs with exception handling constructs. The improved exception control flow graph we propose, IECFG, is a novel representation of C++ program's intra-functional control flow. The IECFG is more precise than traditional CFG in representing the programs with exception handling constructs. We introduce how to construct the program dependence graph (PDG) and the system dependence graph (SDG) based on the IECFG. With the help of this representation, we can obtain more precise information than most previous methods we know
Key concepts: Exception handling, Control flow analysis, Control flow graph, Computer science, Program analysis, Dependence analysis, Control flow, Static analysis