我正在编写c编译器,并且不知道如何在我的使用llvm的单程编译器中实现pages/dashboard/dashboard.php.
语句,例如:
goto
由于解析器是一次通过,因此当我分析int main() {
goto label;
label:
return 0
}
时,由于它尚不存在,所以我无法获得代表goto label;
的llvm :: BasicBlock,因此如果我创建了{{1 }}要实现此goto语句,BasicBlock的参数是未知的。
那么我该如何使用llvm对一个基本块进行回补丁?
答案 0 :(得分:1)
您需要做的是保持一个从标签名称到基本块的映射,并在您看到标签时创建条目,而第一个提及是使用还是定义都没有关系。