我一直在学习ssa (静态单赋值表单),我得到了以下插入了phi函数的图形,但该图形尚未重命名:

我不得不重命名变量,得到的结果如下:

我非常不确定这是正确的。我是否正确地重命名了变量?这是最小的ssa吗?我正在使用here (赛创,et.al的论文)来重命名变量。请帮帮忙!:)
发布于 2020-08-05 04:15:22
不,你的图表不正确。x和y的φ函数和重命名是正确的,问题是临时变量t1到t3。当进入块L1时,这些变量是死的,并且根本不需要任何phi函数。如果你坚持对这些变量使用φ函数,你必须假设这些变量存在,并且在进入图时有一些不确定的值。让t1_0、t2_0和t3_0作为这些值,并相应地更新重命名的图。
https://stackoverflow.com/questions/62984347
复制相似问题