This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Cortex-M CPSR thumb bit fix


I posted a patch in 2008 here:
http://sourceware.org/ml/gdb-patches/2008-10/msg00462.html but
unfortunately it wasn't applied. Without it, GDB cannot debug Cortex-M
processors as the thumb bit is in a different place in the CPSR register.

I have updated it for GDB 7.1, as per the attached mail and updated
ChangeLog below.

I do have a copyright assignment, as well as the ability to commit.

Can someone review please?

Jifl

2010-07-08  Jonathan Larmour <jifl@eCosCentric.com>

	* arm-tdep.h (CPSR_T): define as function-like macro, checking
	for M-profile, which affects T_bit position, e.g. for Cortex-M.
	(struct gdbarch_tdep): add arm_eabi_cpu_arch and
	arm_eabi_cpu_arch_profile members.
	* arm-tdep.c (arm_frame_is_thumb, arm_prologue_prev_register,
	arm_dwarf2_prev_register, displaced_in_arm_mode, bx_write_pc,
	arm_write_pc): Get tdep and use with updated CPSR_T macro.
	(arm_gdbarch_init): If EABI, extract architecture and profile
	attributes and store in tdep.



-- 
eCosCentric Limited      http://www.eCosCentric.com/     The eCos experts
Barnwell House, Barnwell Drive, Cambridge, UK.       Tel: +44 1223 245571
Registered in England and Wales: Reg No 4422071.
------["Si fractum non sit, noli id reficere"]------       Opinions==mine

Attachment: arm.patch
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]