From a19034d902b0a67e093894ba2cc143c625d5e69e Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Wed, 9 Aug 2006 23:04:47 +0000 Subject: [PATCH] 2006-08-09 Joel Sherrill * rtems/score/cpu.h: Because gcc implicitly uses floating point turn on floating point for all threads if there is a hardware FPU. --- cpukit/score/cpu/powerpc/ChangeLog | 5 +++++ cpukit/score/cpu/powerpc/rtems/score/cpu.h | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/cpukit/score/cpu/powerpc/ChangeLog b/cpukit/score/cpu/powerpc/ChangeLog index d4a565da0c..de4e664d21 100644 --- a/cpukit/score/cpu/powerpc/ChangeLog +++ b/cpukit/score/cpu/powerpc/ChangeLog @@ -1,3 +1,8 @@ +2006-08-09 Joel Sherrill + + * rtems/score/cpu.h: Because gcc implicitly uses floating point turn on + floating point for all threads if there is a hardware FPU. + 2006-07-12 Till Straumann * rtems/old-exceptions/cpu.h, rtems/powerpc/registers.h: diff --git a/cpukit/score/cpu/powerpc/rtems/score/cpu.h b/cpukit/score/cpu/powerpc/rtems/score/cpu.h index 3739ccec63..b3115bb312 100644 --- a/cpukit/score/cpu/powerpc/rtems/score/cpu.h +++ b/cpukit/score/cpu/powerpc/rtems/score/cpu.h @@ -157,9 +157,13 @@ * If FALSE, then the RTEMS_FLOATING_POINT task attribute is followed. * * If CPU_HARDWARE_FP is FALSE, then this should be FALSE as well. + * + * PowerPC Note: It appears the GCC can implicitly generate FPU + * and Altivec instructions when you least expect them. So make + * all tasks floating point. */ -#define CPU_ALL_TASKS_ARE_FP FALSE +#define CPU_ALL_TASKS_ARE_FP CPU_HARDWARE_FP /* * Should the IDLE task have a floating point context?