【发布时间】:2009-08-27 12:09:05
【问题描述】:
我想知道 -fno-omit-frame-pointer 在没有优化的情况下会做什么?
CXXFLAGS = -Wall -ggdb3 -DDEBUG -fno-omit-frame-pointer
不是所有级别的-O(除了-O0)都会自动开启fomit-frame-pointer吗?我假设在我的示例中默认为 -O0。
感谢和问候!
【问题讨论】:
-
在 x86 和系列上,
-fomit-frame-pointer默认情况下未启用以提高优化级别,因为它可能会妨碍调试。 -
请注意,在x86-64和arm等架构上,默认不生成帧指针(在ABI中指定),因此该选项会导致编译器生成帧指针寄存器。
标签: c++ optimization pointers frame