首页> 外文会议>Conference on object-oriented programming, systems, languages, and applications >Scalable Propagation-Based Call Graph Construction Algorithms
【24h】

Scalable Propagation-Based Call Graph Construction Algorithms

机译:基于传播的传播呼叫图构造算法

获取原文

摘要

Propagation-based call graph construction algorithms have been studied intensively in the 1990s, and differ primarily in the number of sets that are used to approximate run-time values of expressions. In practice, algorithms such as RTA that use a single set for the whole program scale well. The scalability of algorithms such as 0-CFA that use one set per expression remains doubtful. In this paper, we investigate the design space between RTA and 0-CFA. We have implemented various novel algorithms in the context of Jax, and application extractor for Java, and shown that they all scale to a 325,000-line progrma. A key property of these algorithms is that they do not analyze values on the run-time stack, which makes them efficient and easy to implement. Surprisingly, for detecting unreachable methods, the inexpensive RTA algorithm does almost as well as the seemingly more powerful algorithms. However, for determining call sites with a single target, one of our new algorithms obtains the current best tradeoff between speed and precision.
机译:基于传播的呼叫图构造算法已经在20世纪90年代集中进行了集中,并且主要在于用于近似表达式的运行时间值的集合数。在实践中,诸如RTA的算法,它适用于整个程序刻度的单个设置。算法的可扩展性如0-CFA,使用每个表达式一个集合仍然是可疑的。在本文中,我们研究了RTA和0-CFA之间的设计空间。我们在JAX的上下文中实现了各种新颖算法,以及Java的应用提取器,并显示它们全部缩放到325,000线的Progrma。这些算法的一个关键属性是它们不会分析运行时堆栈上的值,这使得它们有效且易于实现。令人惊讶的是,对于检测到无法访问的方法,廉价的RTA算法几乎以及看似更强大的算法。但是,对于用单个目标确定呼叫网站,我们的新算法之一获得了速度和精度之间的当前最佳权衡。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号