【问题标题】:Why is value of RSP higher than RBP as displayed in GDB?为什么 RSP 的值高于 GDB 中显示的 RBP?
【发布时间】:2021-11-28 17:52:47
【问题描述】:

我正在使用 gdb 检查一个进程(实际上没有错误)。

但是我注意到,在进行信息寄存器时,RSP 高于 RBP,这与堆栈向下增长的事实不一致。这可能是编译器的一些优化吗?

rbp            0x7fabaf9ba290      0x7fabaf9ba290
rsp            0x7ffdf1ffa1b0      0x7ffdf1ffa1b0

【问题讨论】:

    标签: assembly gcc x86 gdb stack-pointer


    【解决方案1】:

    不要求将rbp 用作帧指针。当-fomit-frame-pointer 处于活动状态时,就像优化程序中的默认设置一样,它的使用方式与任何其他调用保存的寄存器相同(例如,rbx)。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-21
    • 1970-01-01
    • 2021-04-18
    • 2016-07-31
    • 2021-07-30
    • 2012-06-15
    • 2021-08-08
    • 1970-01-01
    相关资源
    最近更新 更多