diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-11-22 10:13:27 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-11-28 16:08:43 +0100 |
commit | 6a1b9e41521fffc0abc82cb4426fc0e4ca8ca17e (patch) | |
tree | 55facda04d71966fbffe36c1c1b6de7d8dbf547d /cpukit/score/cpu/sparc/rtems/score/sparc.h | |
parent | score: Fix thread queue context initialization (diff) | |
download | rtems-6a1b9e41521fffc0abc82cb4426fc0e4ca8ca17e.tar.bz2 |
sparc: Optimize _ISR_Handler()
Use _Thread_Do_dispatch() instead of _Thread_Dispatch(). Restore the
PSR[EF] state of the interrupted context via new system call
syscall_irqdis_fp in case floating-point support is enabled.
Diffstat (limited to '')
-rw-r--r-- | cpukit/score/cpu/sparc/rtems/score/sparc.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/cpukit/score/cpu/sparc/rtems/score/sparc.h b/cpukit/score/cpu/sparc/rtems/score/sparc.h index ecac74de3c..5fe8b6ada7 100644 --- a/cpukit/score/cpu/sparc/rtems/score/sparc.h +++ b/cpukit/score/cpu/sparc/rtems/score/sparc.h @@ -153,6 +153,9 @@ extern "C" { #define SPARC_SWTRAP_SYSCALL 0 #define SPARC_SWTRAP_IRQDIS 9 #define SPARC_SWTRAP_IRQEN 10 +#if SPARC_HAS_FPU == 1 +#define SPARC_SWTRAP_IRQDIS_FP 11 +#endif #ifndef ASM |