使用LLVM Alias和IFunc功能的任何实际示例?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用LLVM Alias和IFunc功能的任何实际示例?相关的知识,希望对你有一定的参考价值。

我正在创建一个前端(现在的玩具语言,也许是永久的)直接发出LLVM IR(不是通过C ++库)。

我看了,但找不到声明和使用任何主题功能的真实实用的例子。我必须继续做的最好的是Language Reference.

问题如标题所述。

答案

我从LLVM找不到多少,但我从GCC docs找到了更详细的解释。

别名,尤其是弱别名,可用于在系统标头未定义时定义某些函数的默认实现。 This问题显示了它在Linux glibc源代码中的用法示例。

this的例子来看,当你想要为某些处理器选择某种功能的不同版本时,ifunc可能很有用。您编写的解析器函数可以使用某些特定于操作系统的代码来确定某些系统特性(如处理器类型)并返回指向正确函数的指针。

大部分都是低级别的东西,所以我99%肯定你不需要在语言前端使用它们。

以上是关于使用LLVM Alias和IFunc功能的任何实际示例?的主要内容,如果未能解决你的问题,请参考以下文章

如何检查我的 ifunc 解析器中是不是有 BMI2 指令?

使用 LLVM 构建和任何优化都会导致应用程序在启动时崩溃

elasticsearch alias

alias别名使用

如何获得 LLVM 中两条指令之间的距离?

Bash的特性