2

对于诸如许多数学函数之类的内置函数llvm.memsetllvm.memcpy例如,LLVM IR 是否在某处包含定义?或者它们只是被调用而不是在 LLVM IR 中定义?

4

1 回答 1

4

这些函数在通常由您的操作系统提供的 libc 中定义。调用可以由 LLVM 生成(例如进行结构分配时的 memcpy)。

定义了一些数学函数(abs)。还有一堆胶水数学(float-int转换),由llvm调用,但在libcompiler_rt(它是libgcc的替代品)中定义。

其他内置函数在 llvm 中定义,例如 __builtin_clz()。

于 2012-09-12T08:35:38.090 回答