鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

选项 -finline-force=

说明

该选项为链接时选项,与-flto结合使用,用于在LTO链接时,指示对传入的目标静态库或目标文件尝试进行内联,该选项将对目标文件中的函数尝试内联增强,增强以下内联扩展:

  • 架构选项的兼容,当调用函数和被调用函数使用的march/mcpu等信息不同时,尽可能将被调用函数的架构选项与调用函数的架构选项切换一致,并进行内联编译。
  • inline关键字,类似于被调用函数增加了inline关键字,指示在编译过程中能找到函数实体,就尽可能内联。
  • always_inline属性,类似于被调用函数增加了__attribute__((always_inline))属性。

使用方法

在选项中加入,如传入多个文件名通过逗号隔开:

1
-flto -finline-force=liba.a,libb.a 

注:-finline-force,不加目标文件名形式,仅用于全局内联调试分析,不直接使用。

举例:

1
2
3
4
gcc -O2 -fPIC -flto -c fa.c -o fa.o
gcc-ar rcs liba.a fa.o

gcc -O2 -fPIC -flto -finline -force=liba.a main.c liba.a -o exe