【24h】

Calling Context Abstraction with Shapes

机译:使用形状调用上下文抽象

获取原文

摘要

Interprocedural program analysis is often performed by computing procedure summaries. While possible, computing adequate summaries is difficult, particularly in the presence of recursive procedures. In this paper, we propose a complementary framework for interprocedural analysis based on a direct abstraction of the calling context. Specifically, our approach exploits the inductive structure of a calling context by treating it directly as a stack of activation records. We then build an abstraction based on separation logic with inductive definitions. A key element of this abstract domain is the use of parameters to refine the meaning of such call stack summaries and thus express relations across activation records and with the heap. In essence, we define an abstract interpretation-based analysis framework for recursive programs that permits a fluid per call site abstraction of the call stack-much like how shape analyzers enable a fluid per program point abstraction of the heap.
机译:通过计算程序摘要通常进行移植过程计划分析。虽然可能,计算足够的摘要是困难的,特别是在存在递归程序的情况下。在本文中,我们提出了一种基于呼叫上下文的直接抽象的复议性分析互补框架。具体地,我们的方法通过直接作为激活记录来利用呼叫上下文的归纳结构。然后,我们基于具有归纳定义的分离逻辑构建抽象。这个抽象域的一个关键元素是使用参数来改进此类呼叫堆栈摘要的含义,从而表达跨激活记录和堆的关系。从本质上讲,我们为递归程序定义了一种基于抽象的分析框架,该递归程序允许呼叫堆栈的每个呼叫站点抽象的流体 - 非常类似的形状分析仪为每个程序点抽取堆的液体启用流体。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号