前端之家收集整理的这篇文章主要介绍了
c – -fomit-frame-pointer,使用它是否安全?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在许多地方看到人们在编译C/C++
代码时经常使用-fomit-frame-pointer选项,我想知道,该选项的使用是否安全?它是干什么用的?
非常感谢.致以最诚挚的问候.
该选项是安全的,但使调试更难.通常,C编译器
输出存储在传统寄存器(x86上为ebp)的
代码,该指针指向
函数的堆栈帧.调试器使用它来打印出本地变量
内容和其他此类信息. -fomit-frame-pointer标志指示
gcc不要打扰该寄存器.在某些情况下,这会产生轻微的
性能提升,主要是由于减少了
代码占用空间(对缓存更好)和额外的可用寄存器(特别是在32位模式下的x86上,这在寄存器上非常缺乏).
原文链接:https://www.f2er.com/c/116825.html