当前位置: X-MOL 学术Theory Pract. Log. Program. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Incremental and Modular Context-sensitive Analysis
Theory and Practice of Logic Programming ( IF 1.4 ) Pub Date : 2021-01-19 , DOI: 10.1017/s1471068420000496
ISABEL GARCIA-CONTRERAS , JOSÉ F. MORALES , MANUEL V. HERMENEGILDO

Context-sensitive global analysis of large code bases can be expensive, which can make its use impractical during software development. However, there are many situations in which modifications are small and isolated within a few components, and it is desirable to reuse as much as possible previous analysis results. This has been achieved to date through incremental global analysis fixpoint algorithms that achieve cost reductions at fine levels of granularity, such as changes in program lines. However, these fine-grained techniques are neither directly applicable to modular programs nor are they designed to take advantage of modular structures. This paper describes, implements, and evaluates an algorithm that performs efficient context-sensitive analysis incrementally on modular partitions of programs. The experimental results show that the proposed modular algorithm shows significant improvements, in both time and memory consumption, when compared to existing non-modular, fine-grain incremental analysis techniques. Furthermore, thanks to the proposed intermodular propagation of analysis information, our algorithm also outperforms traditional modular analysis even when analyzing from scratch.

中文翻译:

增量和模块化上下文相关分析

对大型代码库进行上下文相关的全局分析可能会很昂贵,这使得它在软件开发过程中的使用变得不切实际。但是,在许多情况下,修改很小并且在几个组件中是孤立的,因此希望尽可能多地重用以前的分析结果。迄今为止,这是通过增量全局分析固定点算法实现的,该算法可以在精细的粒度级别上降低成本,例如程序行的更改。然而,这些细粒度的技术既不能直接应用于模块化程序,也不是为了利用模块化结构而设计的。本文描述、实现和评估一种算法,该算法在程序的模块化分区上逐步执行高效的上下文敏感分析。实验结果表明,与现有的非模块化、细粒度增量分析技术相比,所提出的模块化算法在时间和内存消耗方面都有显着改进。此外,由于所提出的分析信息的模块间传播,即使从头开始分析,我们的算法也优于传统的模块分析。
更新日期:2021-01-19
down
wechat
bug