gpt4 book ai didi

c++ - 在 LLVM 中获取 BasicBlock 的前身

转载 作者:可可西里 更新时间:2023-11-01 17:04:05 24 4
gpt4 key购买 nike

获取 BasicBlock 的前辈的最简单方法是什么?在 LLVM 框架中?

我看过DepthFirstIteratoridf_iterator<BasicBlock*> ,但实际上我需要对控制流图进行广度优先搜索。

我觉得这应该很容易,但从我一直在网上探索的文档或示例来看,这并不明显。

最佳答案

文档中并不清楚,但是 basic block class支持 pred 迭代器,它将前身提供给基本 block 。在 C++11 风格中,可以按如下方式循环遍历 block 的前导:

BasicBlock* B = ...
for (auto it = pred_begin(B), et = pred_end(B); it != et; ++it)
{
BasicBlock* predecessor = *it;
...
}

关于c++ - 在 LLVM 中获取 BasicBlock 的前身,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21708209/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com