我正在尝试了解LLVM中使用以下IRBuilder
方法的内容
BasicBlock *GetInsertBlock() const { return BB; }
BasicBlock::iterator GetInsertPoint() const { return InsertPt; }
他们没有doxygen文档。例如,如果我第一次使用mybuilder.GetInsertBlock()
?
答案 0 :(得分:1)
IRBuilder
有一个“当前插入点”概念。例如,如果您创建一对指令,则它知道第二个指令在第一个指令之后。信息保存在哪里?在那些BB
和InsertPt
字段中,指向当前的基本块和指令。
您提到的这两种方法可以直接访问这些字段。我猜它没有记录,因为直接访问它们不是使用IRBuilder
的“正确”方式,但它们仍然有用。