LLVM:生成运行时错误

LLVM: generate runtime error

本文关键字:运行时错误 LLVM      更新时间:2023-10-16

如何根据条件生成运行时错误?

我有一种支持整数类型的语言。例如,一种类型是从0到99的整数,另一种类型是-100至-20的整数,依此类推。这些类型由用户定义。每种类型的范围是在编译时已知的。

如果用户执行算术操作,我想提出一个运行时错误,从而导致整数超出其定义范围。我该如何使用LLVM的C API?

这位于运行时库的范围内。通常,该语言提供了一个运行时库,该编译器可以依赖于这样的更复杂的功能。在您的情况下,分支的错误路径将导致通话到运行时库,以获取一些错误函数,该函数需要一些参数。运行时库处理打印错误并终止应用程序。然后,可以由编译器编译运行时库并链接到用户代码。