fomit-frame-pointer-gcc选项如何使调试变得不可能?

fomit-frame-pointer-gcc选项如何使调试变得不可能?,gcc,Gcc,GCC在线文档-确认-fomit-frame-pointer-GCC选项可以使去bug变得不可能 -fomit帧指针 对于不需要帧指针的函数,不要将帧指针保留在寄存器中。这避免了保存、设置和恢复帧指针的指令;它还可以在许多功能中使用额外的寄存器这也使得在某些机器上无法进行调试 我理解为什么在没有帧指针帮助的情况下,局部变量更难定位,堆栈跟踪更难重建 但是,在什么情况下使调试变得不可能?这些平台的现有工具(通常由平台供应商而不是GNU提供)期望帧指针出现以成功展开,这可能是不可能的。从理论上讲,人

GCC在线文档-确认-fomit-frame-pointer-GCC选项可以使去bug变得不可能

-fomit帧指针

对于不需要帧指针的函数,不要将帧指针保留在寄存器中。这避免了保存、设置和恢复帧指针的指令;它还可以在许多功能中使用额外的寄存器这也使得在某些机器上无法进行调试

我理解为什么在没有帧指针帮助的情况下,局部变量更难定位,堆栈跟踪更难重建


但是,在什么情况下使调试变得不可能?

这些平台的现有工具(通常由平台供应商而不是GNU提供)期望帧指针出现以成功展开,这可能是不可能的。从理论上讲,人们可以修改它们,使之更加智能,但在实践中,这是不可能的