LLVM IR:具有可变基本块目标的分支指令

LLVM IR: Branch instruction with variable BasicBlock target?

本文关键字:基本块 目标 分支指令 IR LLVM      更新时间:2023-10-16

LLVM 是否支持具有可变 BasicBlock 目标的分支指令?

更具体地说,假设我将所有无条件br指令转换为对某些函数f的函数调用。那么是否可以提供目标标签作为f的参数,然后在f内的无条件分支中使用此标签?

还是唯一的解决方案是在f中进行switch,将所有BB映射到唯一ID,然后使用与目标BB对应的ID调用f

据我所知,非本地间接分支到标签是不可能的。

http://blog.llvm.org/2010/01/address-of-label-and-indirect-branches.html?m=1