Type-sensitive control-flow analysis

Type-sensitive control-flow analysis
复制标题

类型敏感的控制流分析

DOI:
10.1145/1159876.1159888
复制
发表时间:
2006
期刊:
Higher-Order and Symbolic Computation
影响因子:
--
通讯作者:
John H. Reppy
John H. Reppy
中科院分区:
--
文献类型:
--
作者:
John H. Reppy

文献摘要

被引文献

相似文献

高阶类型语言(例如ML)为数据和类型抽象提供了强有力的支持。尽管这种抽象通常被视为成本成本的性能,但在某些情况下,它可能会提供更具积极进取的计划优化的机会。具体而言,我们可以利用类型抽象保证表示独立性的事实,这使编译器可以专业化数据表示。本文描述了支持这种优化的第一步。即使用程序类型信息来计算更精确的结果的控制流分析。我们将算法作为Serrano版本的0-CFA的扩展,并表明它尊重类型。我们还讨论了分析的应用,并通过分析实现了优化的示例,而这种分析使用正常CFA是不可能的。
Higher-order typed languages, such as ML, provide strong support for data and type abstraction. While such abstraction is often viewed as costing performance, there are situations where it may provide opportunities for more aggressive program optimization. Specifically, we can exploit the fact that type abstraction guarantees representation independence, which allows the compiler to specialize data representations. This paper describes a first step in supporting such optimizations; namely a control-flow analysis that uses the program's type information to compute more precise results. We present our algorithm as an extension of Serrano's version of 0-CFA and we show that it respects types. We also discuss applications of the analysis with examples of optimizations enabled by the analysis that would not be possible using normal CFA.