summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2006-08-09 23:04:47 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2006-08-09 23:04:47 +0000
commita19034d902b0a67e093894ba2cc143c625d5e69e (patch)
treef1f378efa404135d9ef0fc9ba9a9d3a014b9a096 /cpukit
parent2006-08-09 Joel Sherrill <joel@OARcorp.com> (diff)
downloadrtems-a19034d902b0a67e093894ba2cc143c625d5e69e.tar.bz2
2006-08-09 Joel Sherrill <joel@OARcorp.com>
* rtems/score/cpu.h: Because gcc implicitly uses floating point turn on floating point for all threads if there is a hardware FPU.
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/score/cpu/powerpc/ChangeLog5
-rw-r--r--cpukit/score/cpu/powerpc/rtems/score/cpu.h6
2 files changed, 10 insertions, 1 deletions
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 <joel@OARcorp.com>
+
+ * 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 <strauman@slac.stanford.edu>
* 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?