summaryrefslogtreecommitdiff
path: root/src/target/cortex_m3.c
diff options
context:
space:
mode:
authorDavid Brownell <dbrownell@users.sourceforge.net>2009-11-17 23:50:17 -0800
committerDavid Brownell <dbrownell@users.sourceforge.net>2009-11-17 23:50:17 -0800
commitd6c8945662e6027f6ba12d73bac2473088672db5 (patch)
tree022750b4c487161ccdaeac9c24bb0754f55c8653 /src/target/cortex_m3.c
parent0091e59d2a18c293fd952a9d707e609afdd6b17f (diff)
downloadopenocd+libswd-d6c8945662e6027f6ba12d73bac2473088672db5.tar.gz
openocd+libswd-d6c8945662e6027f6ba12d73bac2473088672db5.tar.bz2
openocd+libswd-d6c8945662e6027f6ba12d73bac2473088672db5.tar.xz
openocd+libswd-d6c8945662e6027f6ba12d73bac2473088672db5.zip
ARM: only use one set of dummy FPA registers
All ARM cores need to provide obsolete FPA registers in their GDB register dumps. (Even though cores with floating point support now generally use some version of VFP...) Clean up that support a bit by sharing the same dummy registers, and removing the duplicate copies. Eventually we shouldn't need to export those dummies. (This makes the ARMv7-M support include the armv4_5 header, and cleans up related #includes, but doesn't yet use anything from there except those dummies.) Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Diffstat (limited to 'src/target/cortex_m3.c')
-rw-r--r--src/target/cortex_m3.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/target/cortex_m3.c b/src/target/cortex_m3.c
index c9938c9c..42f8ee08 100644
--- a/src/target/cortex_m3.c
+++ b/src/target/cortex_m3.c
@@ -334,6 +334,9 @@ static int cortex_m3_debug_entry(struct target *target)
xPSR = buf_get_u32(armv7m->core_cache->reg_list[ARMV7M_xPSR].value, 0, 32);
#ifdef ARMV7_GDB_HACKS
+ /* FIXME this breaks on scan chains with more than one Cortex-M3.
+ * Instead, each CM3 should have its own dummy value...
+ */
/* copy real xpsr reg for gdb, setting thumb bit */
buf_set_u32(armv7m_gdb_dummy_cpsr_value, 0, 32, xPSR);
buf_set_u32(armv7m_gdb_dummy_cpsr_value, 5, 1, 1);