From e1309e3eb381cc375f661c21ec9d668f4b746d59 Mon Sep 17 00:00:00 2001 From: Tat-Chee Wan (USM) Date: Mon, 11 Jul 2011 09:38:34 +0800 Subject: update signal output to handle prefetch and data aborts Implement Prefetch and Data Abort Signal enum output --- Debugger/debug_macros.h | 41 ++++++++++++++++++++++++++++++++++------- 1 file changed, 34 insertions(+), 7 deletions(-) (limited to 'Debugger/debug_macros.h') 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 * -- cgit v1.2.3