首页    期刊浏览 2024年12月03日 星期二
登录注册

文章基本信息

  • 标题:Value Partitioning: A Lightweight Approach to Relational Static Analysis for JavaScript
  • 本地全文:下载
  • 作者:Benjamin Barslev Nielsen ; Anders Møller
  • 期刊名称:LIPIcs : Leibniz International Proceedings in Informatics
  • 电子版ISSN:1868-8969
  • 出版年度:2020
  • 卷号:166
  • 页码:1-28
  • DOI:10.4230/LIPIcs.ECOOP.2020.16
  • 出版社:Schloss Dagstuhl -- Leibniz-Zentrum fuer Informatik
  • 摘要:In static analysis of modern JavaScript libraries, relational analysis at key locations is critical to provide sound and useful results. Prior work addresses this challenge by the use of various forms of trace partitioning and syntactic patterns, which is fragile and does not scale well, or by incorporating complex backwards analysis. In this paper, we propose a new lightweight variant of trace partitioning named value partitioning that refines individual abstract values instead of entire abstract states. We describe how this approach can effectively capture important relational properties involving dynamic property accesses, functions with free variables, and predicate functions. Furthermore, we extend an existing JavaScript analyzer with value partitioning and demonstrate experimentally that it is a simple, precise, and efficient alternative to the existing approaches for analyzing widely used JavaScript libraries.
  • 关键词:JavaScript; dataflow analysis; abstract interpretation
国家哲学社会科学文献中心版权所有