Affiliation:
1. Seoul National University, Seoul, Korea
Abstract
In this article, we present a general method for achieving global static analyzers that are precise and sound, yet also scalable. Our method, on top of the abstract interpretation framework, is a general sparse analysis technique that supports relational as well as nonrelational semantics properties for various programming languages. Analysis designers first use the abstract interpretation framework to have a global and correct static analyzer whose scalability is unattended. Upon this underlying sound static analyzer, analysis designers add our generalized sparse analysis techniques to improve its scalability while preserving the precision of the underlying analysis. Our method prescribes what to prove to guarantee that the resulting sparse version should preserve the precision of the underlying analyzer.
We formally present our framework and show that existing sparse analyses are all restricted instances of our framework. In addition, we show more semantically elaborate design examples of sparse nonrelational and relational static analyses. We then present their implementation results that scale to globally analyze up to one million lines of C programs. We also show a set of implementation techniques that turn out to be critical to economically support the sparse analysis process.
Funder
Ministry of Science, ICT and Future Planning
Publisher
Association for Computing Machinery (ACM)
Cited by
20 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Precise Sparse Abstract Execution via Cross-Domain Interaction;Proceedings of the IEEE/ACM 46th International Conference on Software Engineering;2024-04-12
2. Research on the Quality of Automotive Electronic Software Based on Code Checking;2023 5th International Conference on Artificial Intelligence and Computer Applications (ICAICA);2023-11-28
3. Clustered Relational Thread-Modular Abstract Interpretation with Local Traces;Programming Languages and Systems;2023
4. Hierarchical Analysis of Loops With Relaxed Abstract Transformers;IEEE Transactions on Reliability;2020-03
5. Deterministic parallel fixpoint computation;Proceedings of the ACM on Programming Languages;2020-01