A correspondence between continuation passing style and static single assignment form

A correspondence between continuation passing style and static single assignment form
复制标题

连续传递风格与静态单一赋值形式之间的对应关系

DOI:
10.1145/202529.202532
复制
发表时间:
1995
影响因子:
4.2
通讯作者:
R. Kelsey
R. Kelsey
中科院分区:
材料科学1区
文献类型:
--
作者:
R. Kelsey

文献摘要

被引文献

相似文献

我们定义的语法转换连续传递风格(CPS)的程序转换为静态单赋值形式(SSA),反之亦然。有些CPS程序不能转换为SSA,但这些程序不是通过通常的CPS转换生成的。CPS→SSA转换对于编译函数式程序特别有用。许多通常需要流分析的优化可以直接在功能CPS程序上执行,方法是将它们视为SSA程序。我们还提出了一个简单的程序转换,合并CPS程序在一起,这样做大大增加了SSA流信息的范围。这种转换对于分析表示为递归过程的循环很有用。
We define syntactic transformations that convert continuation passing style (CPS) programs into static single assignment form (SSA) and vice versa. Some CPS programs cannot be converted to SSA, but these are not produced by the usual CPS transformation. The CPS→SSA transformation is especially helpful for compiling functional programs. Many optimizations that normally require flow analysis can be performed directly on functional CPS programs by viewing them as SSA programs. We also present a simple program transformation that merges CPS procedures together and by doing so greatly increases the scope of the SSA flow information. This transformation is useful for analyzing loops expressed as recursive procedures.