摘要
在分析异常处理结构对程序依赖性分析影响的基础上,对传统的控制流图进行改进,提出了一种新的能够描述包括异常处理结构在内的函数内和函数间的C++程序的依赖性分析模型,并给出了相应的构造算法.该方法既克服了因忽略异常处理结构对程序依赖性的影响而造成分析结果不准确的不足,又有助于实现基于异常传播的程序依赖性分析的自动处理.最后,对这种依赖性分析方法在程序切片中的应用作了进一步的探讨.
Based on analyzing the effects of exception handling constructs on dependence analysis, this paper proposes a precise and efficient representation for C++ programs with exception handling constructs--improved control flow graph. It proposes a new approach to analyzing the data dependences and control de pend^nces of intra-function and inter-function in C++ programs with exception handling constructs, and an efficient algorithm is also presented. This method overcomes the limitations of the previous incorrect analysis because of failing to account for the effects of exception handling constructs, and also provides a basis for automatic dependence analysis that contains exception propagation. Finally, it discusses the application of the dependence analysis method in program slicing.
出处
《软件学报》
EI
CSCD
北大核心
2007年第4期832-841,共10页
Journal of Software
基金
SupportedbytheNationalNaturalScienceFoundationofChinaunderGrantNo.60373066(国家自然科学基金)
theNationalScienceFoundationforDistinguishedYoungScholarsofChinaunderGrantNo.60425206(国家杰出青年科学基金)
theNationalGrandFundamentalResearch973ProgramofChinaunderGrantNo.2002CB312000(国家重点基础研究发展规划(973))
theProgramforCross-CenturyOutstandingTeachersoftheMinistryofEducationofChina(国家教育部跨世纪优秀人才基金)
theHighTechnologyResearchProjectofJiangsuProvinceofChinaunderGrantNo.BG2005032(江苏省高技术研究项目)
theNaturalScienceFoundationofJiangsuProvinceofChinaunderGrantNo.BK2006094(江苏省自然科学基金)
theScienceResearchFoundationofChinaUniversityofMiningandTechnologyunderGrantNo.OD4527(中国矿业大学科学研究基金)
关键词
异常处理
程序分析
异常传播
依赖性分析
程序切片
健壮性
exception handling
program analysis
exception propagation
dependence analysis
program slicing
robustness