Changeset 1f6cdba6 in rtems


Ignore:
Timestamp:
May 29, 2015, 1:54:29 PM (4 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
4.11, master
Children:
2764bd43
Parents:
8a1dc71b
git-author:
Sebastian Huber <sebastian.huber@…> (05/29/15 13:54:29)
git-committer:
Sebastian Huber <sebastian.huber@…> (05/30/15 14:46:36)
Message:

sparc: Remove superfluous FP enable

The FP context save/restore makes only sense in the context of FP
threads.

Update #2270.

Location:
cpukit/score/cpu/sparc
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • cpukit/score/cpu/sparc/cpu.c

    r8a1dc71b r1f6cdba6  
    126126#if (SPARC_HAS_FPU == 1)
    127127  Context_Control_fp *pointer;
     128  uint32_t            psr;
     129
     130  sparc_get_psr( psr );
     131  psr |= SPARC_PSR_EF_MASK;
     132  sparc_set_psr( psr );
    128133
    129134  /*
  • cpukit/score/cpu/sparc/cpu_asm.S

    r8a1dc71b r1f6cdba6  
    4545        PUBLIC(_CPU_Context_save_fp)
    4646SYM(_CPU_Context_save_fp):
    47         /*
    48          *  The following enables the floating point unit.
    49          */
    50 
    51         mov     %psr, %o1
    52         sethi   %hi(SPARC_PSR_EF_MASK), %o2
    53         or      %o2, %lo(SPARC_PSR_EF_MASK), %o2
    54         or      %o1, %o2, %o1
    55         mov     %o1, %psr                  ! **** ENABLE FLOAT ACCESS ****
    56         nop; nop; nop;                     ! Need three nops before EF is
    57         ld      [%o0], %o1                 ! active due to pipeline delay!!!
     47        ld      [%o0], %o1
    5848        std     %f0, [%o1 + FO_F1_OFFSET]
    5949        std     %f2, [%o1 + F2_F3_OFFSET]
     
    9181        PUBLIC(_CPU_Context_restore_fp)
    9282SYM(_CPU_Context_restore_fp):
    93         /*
    94          *  The following enables the floating point unit.
    95          */
    96 
    97         mov     %psr, %o1
    98         sethi   %hi(SPARC_PSR_EF_MASK), %o2
    99         or      %o2, %lo(SPARC_PSR_EF_MASK), %o2
    100         or      %o1, %o2, %o1
    101         mov     %o1, %psr                  ! **** ENABLE FLOAT ACCESS ****
    102         nop; nop; nop;                     ! Need three nops before EF is
    103         ld      [%o0], %o1                 ! active due to pipeline delay!!!
     83        ld      [%o0], %o1
    10484        ldd     [%o1 + FO_F1_OFFSET], %f0
    10585        ldd     [%o1 + F2_F3_OFFSET], %f2
Note: See TracChangeset for help on using the changeset viewer.