I'm looking at the H8/300 frame debugging info, and it seems to me that gdb needs to have at least *some* information about where the return address is in order to unwind the stack using dwarf2 call frame information, perhaps because H8/300 saves the RA on the stack, not in a register. However, we only set up the RA column if we're using dwarf2 for EH. Why?
$ grep -C 1 '^ .*if *(.*DWARF2_UNWIND_INFO' * dwarf2out.c-#ifdef DWARF2_UNWIND_INFO dwarf2out.c: if (DWARF2_UNWIND_INFO) dwarf2out.c- initial_return_save (INCOMING_RETURN_ADDR_RTX); With my local dwarf2 support patches, commenting out the if() above is the difference between backtraces working, and not working. Can we call initial_return_save for non-EH unwind too?