The setting of the macro CPU_IDLE_TASK_IS_FP is based on the answer to the question: Should the IDLE task have a floating point context? If the answer to this question is TRUE, then the IDLE task has a floating point context associated. This is equivalent to creating a task in the Classic API (using rtems_task_create) as a RTEMS_FLOATING_POINT task. If CPU_IDLE_TASK_IS_FP is set to TRUE, then a floating point context switch occurs when the IDLE task is switched in and out. This adds to the execution overhead of the system but is necessary on some ports.
If FALSE, then the IDLE task does not have a floating point context.
NOTE: Setting CPU_IDLE_TASK_IS_FP to TRUE negatively impacts the time required to preempt the IDLE task from an interrupt because the floating point context must be saved as part of the preemption.
The following illustrates how to set this macro:
#define CPU_IDLE_TASK_IS_FP FALSE
Copyright © 1988-2007OAR Corporation