[PATCH] sparc: store the tpc for asynchronous traps
Gedare Bloom
gedare at rtems.org
Mon Apr 14 00:19:31 UTC 2014
This behavior also may appear in older RTEMS versions, with the
affected file in score/cpu/sparc/cpu_asm.S
On Sun, Apr 13, 2014 at 8:04 PM, Gedare Bloom <gedare at rtems.org> wrote:
> The current ISR handling does not save a copy of the PC in the TPC field
> of the interrupt frame for asynchronous traps.
> ---
> c/src/lib/libbsp/sparc/shared/irq_asm.S | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/c/src/lib/libbsp/sparc/shared/irq_asm.S b/c/src/lib/libbsp/sparc/shared/irq_asm.S
> index fc4c0be..fc368a2 100644
> --- a/c/src/lib/libbsp/sparc/shared/irq_asm.S
> +++ b/c/src/lib/libbsp/sparc/shared/irq_asm.S
> @@ -255,8 +255,7 @@ SYM(_ISR_Handler):
>
> andcc %l3, SPARC_SYNCHRONOUS_TRAP_BIT_MASK, %g0
> ! Is this a synchronous trap?
> - be,a win_ovflow ! No, then skip the adjustment
> - nop ! DELAY
> + be win_ovflow ! No, then skip the adjustment
> mov %l1, %l6 ! save trapped pc for debug info
> mov %l2, %l1 ! do not return to the instruction
> add %l2, 4, %l2 ! indicated
> --
> 1.7.9.5
>
More information about the devel
mailing list