Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [RFA] Fix stack backtraces on 26-bit ARM
@ 2001-11-08  9:52 Ben Harris
  2001-11-08 10:06 ` Fernando Nasser
  0 siblings, 1 reply; 2+ messages in thread
From: Ben Harris @ 2001-11-08  9:52 UTC (permalink / raw)
  To: gdb-patches

I've got an assignment signed, and commit access, so can someone approve
this now?

I'm trying to make GDB 5.0 work on NetBSD/arm26.  One problem I've run
into is that even with "set apcs32 0", stack backtraces include flags in
the program counter for all frames apart from the top one.  I think this
patch fixes the problem by using arm_addr_bits_remove() to clean up the
PC fetched from a stack frame.  I'm not in a position to check this still
works on arm32 and thumb.

ChangeLog entry:
2001-11-20  Ben Harris  <bjh21@netbsd.org>

	* arm-tdep.c (arm_frame_saved_pc): Use arm_addr_bits_remove to
	clean the PC.  Necessary for backtraces in 26-bit modes.

Patch:
*** arm-tdep.c  2000/07/26 00:32:33     1.1.1.1
--- arm-tdep.c  2001/10/20 16:40:16
*************** arm_frame_saved_pc (struct frame_info *f
*** 1019,1025 ****
  #endif
      {
 	CORE_ADDR pc = arm_find_callers_reg (fi, LR_REGNUM);
!	return IS_THUMB_ADDR (pc) ? UNMAKE_THUMB_ADDR (pc) : pc;
      }
  }

--- 1021,1027 ----
  #endif
      {
 	CORE_ADDR pc = arm_find_callers_reg (fi, LR_REGNUM);
!	return arm_addr_bits_remove(pc);
      }
  }

-- 
Ben Harris                                                   <bjh21@netbsd.org>
Portmaster, NetBSD/arm26               <URL:http://www.netbsd.org/Ports/arm26/>



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2001-11-20 19:17 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-11-08  9:52 [RFA] Fix stack backtraces on 26-bit ARM Ben Harris
2001-11-08 10:06 ` Fernando Nasser

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox