【发布时间】:2013-08-25 17:31:31
【问题描述】:
我正在调试我为 AVR 架构编写并使用 avr-gcc 和 -g 参数编译的程序。
我使用以下命令启动simulavr:simulavr --device atmega8 --gdbserver
然后我调用avr-gdb 并执行(gdb) file main.elf 以及(gdb) target remote localhost:1212
调试开始后,我可以通过程序的汇编部分step 成功.init 等。但是,一旦执行了jmp main 并调用了另一个函数,simulavr 就会抛出以下异常:Assertion failed: (m_on_call_sp != 0x0000), function OnCall, file hwstack.cpp, line 266. Abort trap: 6
这与将帧推送到堆栈有关,但我不能完全确定如何解决它。
【问题讨论】:
标签: c debugging gdb avr avr-gcc