sparc: Remove sequences that the B2BST scan script warns about

Update #4154.
This commit is contained in:
Daniel Cederman
2017-12-19 13:37:08 +01:00
committed by Daniel Hellstrom
parent f4d00aa538
commit 980cdb82a7
2 changed files with 6 additions and 3 deletions

View File

@@ -683,11 +683,13 @@ isr_dispatch:
cmp %l6, %l7 cmp %l6, %l7
bne,a .Ldisable_fp bne,a .Ldisable_fp
andn %l0, %l5, %l0 andn %l0, %l5, %l0
st %g0, [%g6 + SPARC_PER_CPU_FP_OWNER_OFFSET]
ba .Lthread_dispatch_done ba .Lthread_dispatch_done
st %g0, [%g6 + SPARC_PER_CPU_FP_OWNER_OFFSET] nop
.Ldisable_fp: .Ldisable_fp:
st %l0, [%fp + ISF_PSR_OFFSET]
ba .Lthread_dispatch_done ba .Lthread_dispatch_done
st %l0, [%fp + ISF_PSR_OFFSET] nop
.Lnon_fp_thread_dispatch: .Lnon_fp_thread_dispatch:
#elif defined(SPARC_USE_SYNCHRONOUS_FP_SWITCH) #elif defined(SPARC_USE_SYNCHRONOUS_FP_SWITCH)
/* Test if we interrupted a floating point thread (PSR[EF] == 1) */ /* Test if we interrupted a floating point thread (PSR[EF] == 1) */

View File

@@ -218,9 +218,10 @@ SYM(syscall_lazy_fp_switch):
.Lfp_save_done: .Lfp_save_done:
/* Restore the floating point context if necessary */ /* Restore the floating point context if necessary */
st %g0, [%l4 + %lo(SPARC_THREAD_CONTROL_REGISTERS_FP_CONTEXT_OFFSET)]
cmp %l6, 0 cmp %l6, 0
be .Lfp_restore_done be .Lfp_restore_done
st %g0, [%l4 + %lo(SPARC_THREAD_CONTROL_REGISTERS_FP_CONTEXT_OFFSET)] nop
ldd [%l6 + SPARC_FP_CONTEXT_OFFSET_F0_F1], %f0 ldd [%l6 + SPARC_FP_CONTEXT_OFFSET_F0_F1], %f0
ldd [%l6 + SPARC_FP_CONTEXT_OFFSET_F2_F3], %f2 ldd [%l6 + SPARC_FP_CONTEXT_OFFSET_F2_F3], %f2
ldd [%l6 + SPARC_FP_CONTEXT_OFFSET_F4_F5], %f4 ldd [%l6 + SPARC_FP_CONTEXT_OFFSET_F4_F5], %f4