gpt4 book ai didi

c++ - 英特尔 C++ 编译器是否优化了代码中从未调用过的函数?

转载 作者:太空狗 更新时间:2023-10-29 20:15:19 57 4
gpt4 key购买 nike

只是一些优化方面的考虑:

有谁知道英特尔 C++ 编译器(例如 ICC 13.0,当然,使用/O3 等优化选项编译)是否会自动优化掉任何未使用/未调用的结构/类/函数/变量像下面的 examplefun() 这样的代码:

         //...defining examplefunc()....//

const int a=0;
if (a>0)
int b=examplefunc();

最佳答案

编译器通常不会优化未使用的函数,除非它们是static,因此只能在特定模块中访问。但是,如果链接是在函数级别而不是模块级别完成的,链接器可能会删除函数。

您可以检查程序集输出、链接器映射,或使用类似 objdump 的东西检查函数是否包含在链接的二进制文件中。

关于c++ - 英特尔 C++ 编译器是否优化了代码中从未调用过的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13522678/

57 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com