首页> 外文OA文献 >Pointer analysis for Java programs : novel techniques and applications
【2h】

Pointer analysis for Java programs : novel techniques and applications

机译:Java程序的指针分析:新技术和应用程序

代理获取
本网站仅为用户提供外文OA文献查询和代理获取服务,本网站没有原文。下单后我们将采用程序或人工为您竭诚获取高质量的原文,但由于OA文献来源多样且变更频繁,仍可能出现获取不到、文献不完整或与标题不符等情况,如果获取不到我们将提供退款服务。请知悉。

摘要

This dissertation presents a pointer analysis for Java programs, together with several practical analysis applications. For each program point, the analysis is able to construct a points-to graph that describes how local variables and object fields point to objects. Each points-to graph also contains escape information that identifies the objects that are reachable from outside the analysis scope. Our pointer analysis can extract correct information by analyzing only parts of a whole program. First, our analysis analyzes a method without requiring information about its calling context. Instead, our analysis computes parameterized results that are later instantiated for each relevant call site. Second, our analysis correctly handles calls to unanalyzable methods (e.g., native methods). Hence, our analysis can trade precision for speed without sacrificing correctness: if the analysis of a call to a specific callee requires too much time, the analysis can treat that callee as unanalyzable. The results of our analysis enable standard program optimizations like the stack allocation of local objects. More interestingly, this dissertation explains how to extend the analysis to detect pure methods.
机译:本文提出了一种针对Java程序的指针分析,以及几种实用的分析应用程序。对于每个程序点,分析都可以构造一个点对点图形,该图形描述局部变量和对象字段如何指向对象。每个指向图表还包含转义信息,这些信息标识了从分析范围之外可以访问的对象。我们的指针分析可以通过仅分析整个程序的一部分来提取正确的信息。首先,我们的分析对一种方法进行了分析,而不需要有关其调用上下文的信息。相反,我们的分析将计算参数化的结果,然后为每个相关的呼叫站点实例化。其次,我们的分析可以正确处理对无法分析的方法(例如本机方法)的调用。因此,我们的分析可以在不牺牲准确性的情况下以速度为代价来进行精确度:如果对特定被呼叫者的呼叫分析需要太多时间,则该分析会将该被呼叫者视为无法分析。我们的分析结果可实现标准程序优化,例如本地对象的堆栈分配。更有趣的是,本文解释了如何扩展分析以检测纯方法。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号