Commit 1997660c authored by Robin Getz's avatar Robin Getz Committed by Mike Frysinger

Blackfin: cleanup code a bit with comments and defines

Improve the assembly with a few explanatory comments and use symbolic
defines rather than numeric values for bit positions.
Signed-off-by: default avatarRobin Getz <robin.getz@analog.com>
Signed-off-by: default avatarMike Frysinger <vapier@gentoo.org>
parent 35b5c55f
...@@ -218,7 +218,7 @@ ENTRY(_ex_single_step) ...@@ -218,7 +218,7 @@ ENTRY(_ex_single_step)
/* Single stepping only a single instruction, so clear the trace /* Single stepping only a single instruction, so clear the trace
* bit here. */ * bit here. */
r7 = syscfg; r7 = syscfg;
bitclr (r7, 0); bitclr (r7, SYSCFG_SSSTEP_P);
syscfg = R7; syscfg = R7;
jump _ex_trap_c; jump _ex_trap_c;
...@@ -251,7 +251,7 @@ ENTRY(_ex_single_step) ...@@ -251,7 +251,7 @@ ENTRY(_ex_single_step)
if !cc jump _bfin_return_from_exception; if !cc jump _bfin_return_from_exception;
r7 = syscfg; r7 = syscfg;
bitclr (r7, 0); bitclr (r7, SYSCFG_SSSTEP_P); /* Turn off single step */
syscfg = R7; syscfg = R7;
/* Fall through to _bfin_return_from_exception. */ /* Fall through to _bfin_return_from_exception. */
...@@ -342,9 +342,11 @@ ENTRY(_ex_trap_c) ...@@ -342,9 +342,11 @@ ENTRY(_ex_trap_c)
r6 = retx; r6 = retx;
[p5 + PDA_RETX] = r6; [p5 + PDA_RETX] = r6;
#endif #endif
/* Save the state of single stepping */
r6 = SYSCFG; r6 = SYSCFG;
[p5 + PDA_SYSCFG] = r6; [p5 + PDA_SYSCFG] = r6;
BITCLR(r6, 0); /* Clear it while we handle the exception in IRQ5 mode */
BITCLR(r6, SYSCFG_SSSTEP_P);
SYSCFG = r6; SYSCFG = r6;
/* Disable all interrupts, but make sure level 5 is enabled so /* Disable all interrupts, but make sure level 5 is enabled so
...@@ -367,7 +369,7 @@ ENDPROC(_ex_trap_c) ...@@ -367,7 +369,7 @@ ENDPROC(_ex_trap_c)
* exception. This is a unrecoverable event, so crash. * exception. This is a unrecoverable event, so crash.
* Note: this cannot be ENTRY() as we jump here with "if cc jump" ... * Note: this cannot be ENTRY() as we jump here with "if cc jump" ...
*/ */
_double_fault: ENTRY(_double_fault)
/* Turn caches & protection off, to ensure we don't get any more /* Turn caches & protection off, to ensure we don't get any more
* double exceptions * double exceptions
*/ */
...@@ -872,7 +874,7 @@ ENTRY(_ret_from_exception) ...@@ -872,7 +874,7 @@ ENTRY(_ret_from_exception)
raise 15; /* raise evt15 to do signal or reschedule */ raise 15; /* raise evt15 to do signal or reschedule */
4: 4:
r0 = syscfg; r0 = syscfg;
bitclr(r0, 0); bitclr(r0, SYSCFG_SSSTEP_P); /* Turn off single step */
syscfg = r0; syscfg = r0;
5: 5:
rts; rts;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment