score: PR1782: CPU_USE_DEFERRED_FP_SWITCH

Do not redefine CPU_USE_DEFERRED_FP_SWITCH.
This commit is contained in:
Sebastian Huber
2013-07-23 16:45:54 +02:00
parent 560efebbd5
commit 965ef82015
4 changed files with 14 additions and 11 deletions

View File

@@ -93,7 +93,11 @@ extern "C" {
#define CPU_ALL_TASKS_ARE_FP FALSE
#define CPU_IDLE_TASK_IS_FP FALSE
#define CPU_USE_DEFERRED_FP_SWITCH TRUE
#if defined(RTEMS_SMP)
#define CPU_USE_DEFERRED_FP_SWITCH FALSE
#else
#define CPU_USE_DEFERRED_FP_SWITCH TRUE
#endif
#endif /* __SSE__ */
#define CPU_STACK_GROWS_UP FALSE

View File

@@ -168,7 +168,11 @@ extern "C" {
* On the SPARC, we can disable the FPU for integer only tasks so
* it is safe to defer floating point context switches.
*/
#define CPU_USE_DEFERRED_FP_SWITCH TRUE
#if defined(RTEMS_SMP)
#define CPU_USE_DEFERRED_FP_SWITCH FALSE
#else
#define CPU_USE_DEFERRED_FP_SWITCH TRUE
#endif
/**
* Does this port provide a CPU dependent IDLE task implementation?

View File

@@ -55,6 +55,10 @@ typedef struct Thread_Control_struct Thread_Control;
#ifdef RTEMS_SMP
#if CPU_USE_DEFERRED_FP_SWITCH == TRUE
#error "deferred FP switch not implemented for SMP"
#endif
typedef enum {
/**
* @brief The per CPU controls are initialized to zero.

View File

@@ -50,15 +50,6 @@
#define RTEMS_SCORE_THREAD_ENABLE_USER_PROVIDED_STACK_VIA_API
#endif
/*
* Deferred floating point context switches are not currently
* supported when in SMP configuration.
*/
#if defined(RTEMS_SMP)
#undef CPU_USE_DEFERRED_FP_SWITCH
#define CPU_USE_DEFERRED_FP_SWITCH FALSE
#endif
#ifdef __cplusplus
extern "C" {
#endif