summaryrefslogtreecommitdiff
path: root/Debugger/debug_macros.h
diff options
context:
space:
mode:
authorTat-Chee Wan (USM)2011-07-11 09:38:34 +0800
committerTat-Chee Wan (USM)2011-07-11 09:38:34 +0800
commite1309e3eb381cc375f661c21ec9d668f4b746d59 (patch)
tree651a52fc18120ef60180a437a9d2534a3a0a5895 /Debugger/debug_macros.h
parent1da4bbcbb476f5133e9d2c7f8ede8382d9e2bfe2 (diff)
update signal output to handle prefetch and data aborts
Implement Prefetch and Data Abort Signal enum output
Diffstat (limited to 'Debugger/debug_macros.h')
-rw-r--r--Debugger/debug_macros.h41
1 files changed, 34 insertions, 7 deletions
diff --git a/Debugger/debug_macros.h b/Debugger/debug_macros.h
index 3a60677..fcf6ca6 100644
--- a/Debugger/debug_macros.h
+++ b/Debugger/debug_macros.h
@@ -198,7 +198,7 @@
/* _dbg_outputMsgStatusErr
* Return Message with Error ('+$ENN') status
* On entry:
- * R0: error code
+ * R1: error code
* On exit:
* R0: Pointer to Output Buffer ASCIIZ location
* R1: destroyed
@@ -206,7 +206,6 @@
* R3: destroyed
*/
.macro _dbg_outputMsgStatusErr
- mov r1, r0
__dbg_outputErrMsg
.endm
@@ -222,22 +221,50 @@
__dbg_outputErrMsg
.endm
-/* _dbg_outputMsgStatusSig
+/* __dbg_outputSigMsg
+ * Internal Routine called to generate Signal messages
* Return Message with Signal ('+$SNN') status
+ * On entry:
+ * R1: signal code
* On exit:
* R0: Pointer to Output Buffer ASCIIZ location
* R1: destroyed
* R2: destroyed
+ * R3: destroyed
*/
- .macro _dbg_outputMsgStatusSig statuscode
+ .macro __dbg_outputSigMsg
ldr r0, =debug_OutMsgBuf
- ldr r1, =debug_SignalResponsePrefix
- _dbg_stpcpy r0, r1, r2
- mov r1, #\statuscode
+ ldr r2, =debug_SignalResponsePrefix
+ _dbg_stpcpy r0, r2, r3
bl byte2ascii /* R0 points to buffer position after byte value */
_asciiz r0, r1
.endm
+/* _dbg_outputMsgStatusSig
+ * Return Message with Signal ('+$SNN') status
+ * On entry:
+ * R1: signal code
+ * On exit:
+ * R0: Pointer to Output Buffer ASCIIZ location
+ * R1: destroyed
+ * R2: destroyed
+ */
+ .macro _dbg_outputMsgStatusSig
+ __dbg_outputSigMsg
+ .endm
+
+/* _dbg_outputMsgStatusSigCode
+ * Return Message with Signal ('+$SNN') status
+ * On exit:
+ * R0: Pointer to Output Buffer ASCIIZ location
+ * R1: destroyed
+ * R2: destroyed
+ */
+ .macro _dbg_outputMsgStatusSigCode statuscode
+ mov r1, #\statuscode
+ __dbg_outputSigMsg
+ .endm
+
/* _regenum2index
* Convert register enum to debugger stack index
*