-
09-09-2019 - |
解决方案
您需要查看所述多个设置SSA IDS 强>会聚的节点上(基本块)。保持中间基本块结构,这样,可以很容易地在块中使用(例如,查询)的所有标识符
我不知道你的意思碰撞什么,但我想你想解决类似
if (bExp) if (bExp)
x := 1 x1 := 1
else SSA: else
x := 2 x2 := 2
y := x; y := Phi(x1,x2)
这就是你想要的披在这个地方。要知道,没有披可执行代码!利用信息y是(依赖)于X1和X2,可以在下一步重写这个。例如,在存储器中为中心的表示中,披(X1,X2)告诉你x1和x2应该是两个别名同一存储器位置,即Y的。披只是捆绑信息一起。
if (bExp)
stackframe[y_index] = 1 (y_index being some offset)
else
stackframe[y_index] = 2
nop
希望这有助于一点!
不隶属于 StackOverflow