Compiler construction 边缘分割SSA的使用

Compiler construction 边缘分割SSA的使用,compiler-construction,ssa,Compiler Construction,Ssa,代码的静态单赋值(SSA)表示几乎是规范的,但不是很规范;有两种风格,香草和边缘分割,其中根据需要插入额外的节点,以使每个循环只有一个后边缘。理由:添加“边拆分”约束使某些优化稍微容易一些 我真正想知道的是边缘分割约束是否总体上值得拥有,但这是一个判断,所以对于一个具体的事实问题: 以下使用SSA的知名编译器是否使用“边拆分”约束 海湾合作委员会 去 LLVM 蜘蛛门钥匙 V8 根据目前的调查: 这表明LLVM使用边缘分割: 同样地:

代码的静态单赋值(SSA)表示几乎是规范的,但不是很规范;有两种风格,香草和边缘分割,其中根据需要插入额外的节点,以使每个循环只有一个后边缘。理由:添加“边拆分”约束使某些优化稍微容易一些

我真正想知道的是边缘分割约束是否总体上值得拥有,但这是一个判断,所以对于一个具体的事实问题:

以下使用SSA的知名编译器是否使用“边拆分”约束

  • 海湾合作委员会
  • LLVM
  • 蜘蛛门钥匙
  • V8

根据目前的调查:

这表明LLVM使用边缘分割:

同样地: