C 函数周围的杂注是否影响内部函数
假设我用O2编译了我的程序C 函数周围的杂注是否影响内部函数,c,compiler-optimization,pragma,C,Compiler Optimization,Pragma,假设我用O2编译了我的程序 #pragma GCC push_options #pragma GCC optimize("O0") my_func { other_func(); } #pragma GCC pop_options pragma是否也以任何方式影响其他函数 谢谢它不会影响其他函数(),因为它是assamble中的jmp指令。它不会影响其他函数(),因为它是assamble中的jmp指令。它会如何影响其他函数?这只是一个电话。other_func的
#pragma GCC push_options
#pragma GCC optimize("O0")
my_func
{
other_func();
}
#pragma GCC pop_options
pragma是否也以任何方式影响其他函数
谢谢它不会影响其他函数(),因为它是assamble中的jmp指令。它不会影响其他函数(),因为它是assamble中的jmp指令。它会如何影响
其他函数
?这只是一个电话。other_func
的设置由定义other_func
的地方的pragmas和编译器设置决定,也就是它的主体被实现的地方。这也是我的想法。但是,没有找到有关此的信息。感谢使用push_选项
和pop_选项
为optimize
pragma创建一个本地“范围”。也就是说,只有在使用optimize
pragma之后,但在使用pop\u options
还原旧设置之前的函数才应使用优化级别0进行编译。它会如何影响其他功能
?这只是一个电话。other_func
的设置由定义other_func
的地方的pragmas和编译器设置决定,也就是它的主体被实现的地方。这也是我的想法。但是,没有找到有关此的信息。感谢使用push_选项
和pop_选项
为optimize
pragma创建一个本地“范围”。也就是说,只有在使用optimize
pragma之后,但在使用pop_options
恢复旧设置之前,才应使用优化级别0编译函数。