`gdb`如何计算堆栈帧的边界?

时间:2016-06-15 06:50:06

标签: c++ linux gdb x86-64

我正在调试一个新的线程库,我在其中手动设置堆栈寄存器rsp(切换到用户管理的堆栈),然后调用一个永不返回的函数。

当我尝试在gdb中获得回溯时,我得到以下输出。

(gdb) bt
#0  load (_m=std::memory_order_seq_cst, this=<error reading variable: Asked for position 0 of stack, stack only has 0 elements on it.>)
    at /usr/include/c++/4.9/atomic:209
#1  Arachne::schedulerMainLoop () at Arachne.cc:236
#2  0x000000000040268d in Arachne::threadMainFunction (id=<optimized out>) at Arachne.cc:135
#3  0x0000000000000000 in ?? ()

gdb如何确定堆栈中有0个元素?

更一般地说,gdb如何确定堆栈有多少元素?

0 个答案:

没有答案