On Thu, 6 Jun 2019 at 09:57, Sebastian Huber <
sebastian.hu...@embedded-brains.de> wrote:
>
>
> On 05/06/2019 21:22, Maksim E. Kozlov wrote:
> > ---
> >   cpukit/score/cpu/sparc/cpu_asm.S | 3 ++-
> >   1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/cpukit/score/cpu/sparc/cpu_asm.S
> b/cpukit/score/cpu/sparc/cpu_asm.S
> > index 2f3ad24510..69bbfb2748 100644
> > --- a/cpukit/score/cpu/sparc/cpu_asm.S
> > +++ b/cpukit/score/cpu/sparc/cpu_asm.S
> > @@ -682,10 +682,11 @@ isr_dispatch:
> >           ld      [%g6 + SPARC_PER_CPU_FP_OWNER_OFFSET], %l7
> >           cmp     %l6, %l7
> >           bne     .Ldisable_fp
> > -         andn   %l0, %l5, %l0
> > +         nop
>
> Wouldn't it be sufficient to change this to
>
> bne,a .Ldisable_fp
>   andn %l0, %l5, %l0
>
> ?
>

Yes, you are right, this is my inattentiveness, and it is enough just to set
an annul flag.
If it is needed, I attached modified patch, but if you prefer, you can just
add
this flag yourself.

--
MK



>
> >           ba      .Lthread_dispatch_done
> >            st     %g0, [%g6 + SPARC_PER_CPU_FP_OWNER_OFFSET]
> >   .Ldisable_fp:
> > +        andn   %l0, %l5, %l0
> >           ba      .Lthread_dispatch_done
> >            st      %l0, [%fp + ISF_PSR_OFFSET]
> >   .Lnon_fp_thread_dispatch:
>
> --
> Sebastian Huber, embedded brains GmbH
>
> Address : Dornierstr. 4, D-82178 Puchheim, Germany
> Phone   : +49 89 189 47 41-16
> Fax     : +49 89 189 47 41-09
> E-Mail  : sebastian.hu...@embedded-brains.de
> PGP     : Public key available on request.
>
> Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
>
From 240c980eb2779d420ca4c48760ef24b670efc65d Mon Sep 17 00:00:00 2001
From: "Maksim E. Kozlov" <maksim.e.koz...@gmail.com>
Date: Thu, 6 Jun 2019 15:06:00 +0300
Subject: [PATCH v2] sparc: Fix mistakenly cleared PSR[EF] bit.

---
 cpukit/score/cpu/sparc/cpu_asm.S | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cpukit/score/cpu/sparc/cpu_asm.S b/cpukit/score/cpu/sparc/cpu_asm.S
index 2f3ad24510..d5afd5f7b0 100644
--- a/cpukit/score/cpu/sparc/cpu_asm.S
+++ b/cpukit/score/cpu/sparc/cpu_asm.S
@@ -681,7 +681,7 @@ isr_dispatch:
          */
         ld      [%g6 + SPARC_PER_CPU_FP_OWNER_OFFSET], %l7
         cmp     %l6, %l7
-        bne     .Ldisable_fp
+        bne,a   .Ldisable_fp
          andn   %l0, %l5, %l0
         ba      .Lthread_dispatch_done
          st     %g0, [%g6 + SPARC_PER_CPU_FP_OWNER_OFFSET]
-- 
2.17.1

_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to