c - 从目标文件内联函数

标签 c gcc

我想内联一些我没有代码的函数。它们存在于目标文件中。有没有办法用 gcc 做到这一点?

换句话说,我想执行这些函数的内联,同时将我自己的代码文件与包含这些函数的目标文件链接起来。

最佳答案

从 4.5 版开始,GCC 支持启用链接时间优化 (LTO) 的 -flto 开关。 LTO 可以从单独的目标文件中内联函数。

不过有一个问题。由于 -flto 的工作方式,它仅对使用该开关编译的目标文件有用。据我了解,GCC 通过将中间形式的源代码放入目标文件来实现 LTO - 如果该中间代码不在目标文件中,则该目标文件中的代码将不会“内联”。

参见 Can the linker inline functions?了解更多详情。

关于c - 从目标文件内联函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6833274/

相关文章:

c - 错误 : variably modified 'd' at file scope

c - 二维数组的三重指针的目的是什么?

c++ - 如何理解自定义绘制?我可以使用哪些工具?

c - 解码C代码的等效汇编代码

python - MySQL-python,错误: command 'gcc-4.2' failed with exit status 1

c++ - C/C++ : source file after preprocessing-Diab compiler?

c - 默认文件描述符表无法正常工作

c - 解析共享库中静态定义的符号

c - 警告 :initialization from incompatible pointer type

c++ - C++ 中复杂问题的手动矢量化/SSE