gcc&x27;s选项在更新版本之前不起作用
我最近一直在努力解决gcc的优化问题,希望能帮助提高性能 我找到了选项gcc&x27;s选项在更新版本之前不起作用,gcc,compiler-optimization,Gcc,Compiler Optimization,我最近一直在努力解决gcc的优化问题,希望能帮助提高性能 我找到了选项-freorder blocks and partition (此选项存在于非常旧的gcc版本上,如gcc 5.6。) 它可以用来将冷/热代码划分为单独的函数,与-fffunction部分和链接器脚本一起,冷/热代码可以放入单独的ELF部分(.text部分和.text.cold部分) 但此选项仅适用于最新的gcc版本 我在gcc 10.1上测试它,并使用以下编译器探索工具,确保它从8.1版开始工作: 在gcc8.1:中,汇编代
-freorder blocks and partition
(此选项存在于非常旧的gcc版本上,如gcc 5.6。)
它可以用来将冷/热代码划分为单独的函数,与-fffunction部分
和链接器脚本一起,冷/热代码可以放入单独的ELF部分(.text部分和.text.cold部分)
但此选项仅适用于最新的gcc版本
我在gcc 10.1上测试它,并使用以下编译器探索工具,确保它从8.1版开始工作:
在gcc8.1:中,汇编代码包含如下函数:
fa(int, int) [clone .cold.0]:
在gcc7.1:中,汇编代码不包含此类函数
为什么它不能在旧的gcc上工作
有没有办法控制旧版本的gcc来应用这种优化