Compiler construction 最大固定点失效的情况
对于一个理论研究,我已经实现了在恒定传播的所有路径上相遇。由于常数传播的格点是非分布的,所以最大不动点计算和在所有路径上的相遇可能会给出不同的结果。有谁能举一个这样的例子 问题2:还有一个程序,其中llvm中的稀疏条件常量传播过程()将无法检测到常量。示例如下: 使用常量传播方法,Compiler construction 最大固定点失效的情况,compiler-construction,llvm,compiler-optimization,Compiler Construction,Llvm,Compiler Optimization,对于一个理论研究,我已经实现了在恒定传播的所有路径上相遇。由于常数传播的格点是非分布的,所以最大不动点计算和在所有路径上的相遇可能会给出不同的结果。有谁能举一个这样的例子 问题2:还有一个程序,其中llvm中的稀疏条件常量传播过程()将无法检测到常量。示例如下: 使用常量传播方法,x的值在if语句之后不是常量。因此,y的值不是常数。形式上,如果F是最后一个语句的函数,那么我们有F(1⨆ -1) =F(⊤) = ⊤ 对于MOP,y的值是两个可能路径的连接,因此已知为1。形式上为F(1)⨆ F(-1
x
的值在if语句之后不是常量。因此,y
的值不是常数。形式上,如果F
是最后一个语句的函数,那么我们有F(1⨆ -1) =F(⊤) = ⊤代码>
对于MOP,y
的值是两个可能路径的连接,因此已知为1
。形式上为F(1)⨆ F(-1)=1⨆ 1=1
if (...)
x = 1;
else
x = -1;
y = x * x;