Ball-Larus算法的实现

时间:2011-02-11 14:27:37

标签: llvm

Ball-larus的“高效路径分析”算法是否可以在任何地方使用?

[llvm中的实现会更有帮助]

以下是原始论文BL96

的Citeseer链接

2 个答案:

答案 0 :(得分:3)

implementation中已经有LLVM Ball-Larus路径分析。该领域的其他补丁正在solicited

答案 1 :(得分:2)

我能找到的只是一些伪代码:

for all node n in reverse topological order do
  if n is a leaf then
     NumPaths(n) ← 1
  else
     NumPaths(n) ← 0
     for all edge e of the form n → m do
        Val(e) ← NumPaths(n)
        NumPaths(n) ← NumPaths(n) + NumPaths(m)
     end for
  end if
end for