如何确定`phinode'是否受``if`分支的影响
在llvm
中,phinode
在无法静态确定变量分配时发生。当phinode
发生时,我想如果phinode
中的分配是由给定的分支确定的。在下面的三个示例中,前两个中x
的值取决于config
的值,但第三个示例没有。
在此处描述“
使用phinode-> getIncomingBlock(i)
可以获取i
phinode的基本块。问题是:边缘是否暗示“传入”必须是CFG的边缘?或者它可能是纯粹的新边缘。
谢谢!
In llvm
, a PHINode
occurs when a variable assignment can not be determined statically. When PHINode
occurs, I want to if the assignment in the PHINode
is determined by a given if
branch. For the three example below, the value of x
in the first two is control-dependence on the value of config
, but the third example does not.
Extended question
using PHINode->getIncomingBlock(i)
can get the i
th incoming basic block of the PHINode. The question is: does the edge imply by "incoming" must be an edge in CFG? or it may be a pure new edge.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我当前版本的规则:
My current version of rule: