changeset 1307:1750695510ac

Fix exception debug in THUMB mode - from Thomas Koeller
author gthomas
date Tue, 14 Oct 2003 13:51:48 +0000
parents 093db8861a73
children 70a83c442dbe
files packages/hal/arm/arch/current/ChangeLog packages/hal/arm/arch/current/src/vectors.S
diffstat 2 files changed, 9 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/packages/hal/arm/arch/current/ChangeLog
+++ b/packages/hal/arm/arch/current/ChangeLog
@@ -1,3 +1,7 @@
+2003-10-13  Thomas Koeller  <thomas.koeller@baslerweb.com>
+
+	* src/vectors.S: Fixed broken thumb mode exception handling.
+
 2003-06-30  Mark Salter  <msalter@redhat.com>
 
 	* src/vectors.S: Fix CYGOPT_HAL_ARM_PRESERVE_SVC_SPSR handling.
--- a/packages/hal/arm/arch/current/src/vectors.S
+++ b/packages/hal/arm/arch/current/src/vectors.S
@@ -622,13 +622,16 @@ 2:
         mov     r0,sp
         ldr     r1,.__dump_procs
         ldr     r2,[sp,#armreg_vector]
+        ldr     r1,[r1,r2,lsl #2]
+        THUMB_MODE(r9,10)
         mov     lr,pc
-        ldr     pc,[r1,r2,lsl #2]
+        mov     pc,r1
+#else
+        THUMB_MODE(r9,10)
 #endif
 
         // call exception handler
         mov     r0,sp
-        THUMB_MODE(r9,10)
         bl      exception_handler
 
 #ifdef  CYGHWR_HAL_ARM_DUMP_EXCEPTIONS