Re: [问题] llvm 有API可以求得PDF吗?

楼主: mshockwave (夏克维夫)   2018-12-25 20:52:35
非常感动有人研究 LLVM 的原始码
但有点可惜的事 DominanceFrontier 目前已经(建议) deprecated 了:
https://goo.gl/7Ag9je
原因我不太清楚 但有一个类似的替代选项:IteratedDominanceFrontier
include/include/llvm/Analysis/IteratedDominaceFrontier.h 里面的
class Forward/ReverseIDFCalculator
iterated dominance frontier(IDF) 跟 dominance frontier(DF) 有些不一样
根据 DF 的定义,每个 DF block 也是可能需要插入 Phi node 的 block
而 Phi node 基本上也是一个 definition,所以也可以找到他的 DF block
IDF 就是基于这个概念,延伸 DF 的算法:在找到一个 DF block 后
会以该 block 为起点 继续找该 block 的 DF
以这个例子来看:https://i.imgur.com/oTyD5OM.png
以下是 definition BB 以及 IDFCalculator 计算出的对应结果
| Definition Block | IDF(s) |

Links booklink

Contact Us: admin [ a t ] ucptt.com