在生成LLVM IR时跟踪范围?

时间:2019-05-22 22:36:23

标签: c++ llvm-c++-api

我正在为一种简单的命令式语言编写编译器。这种语言允许封装的函数定义(如Python)。这些函数(它们的主体)起作用域的作用,这意味着如果在函数x中声明了变量foo,则在其外部不可见,而x是在x之后,foo内部定义的内部可见函数。同样适用于函数,当然,也允许变量和函数屏蔽。

LLVM C ++ API是否提供一种标准/推荐的方式来跟踪在任何给定时刻为我的语言生成LLVM IR时可见的变量/函数(例如各种“范围堆栈”)?

现在,我通过我的自定义记录器类跟踪这些情况。

0 个答案:

没有答案