【发布时间】:2019-08-05 01:55:20
【问题描述】:
我正在编写c编译器,不知道如何在我的一次编译器中使用llvm实现goto语句,例如:
int main() {
goto label;
label:
return 0
}
由于解析器是一次通过,当我分析goto label; 时,我无法获得代表label 的llvm::BasicBlock,因为它还不存在,所以如果我创建一个br 来实现这个goto语句,BasicBlock的参数未知。
那么我怎样才能使用 llvm 来回补一个基本块呢?
【问题讨论】: