From efc0cd8757de7449fa6fe62c6dc7d420e26df1b7 Mon Sep 17 00:00:00 2001 From: Till Straumann Date: Mon, 19 Jun 2006 19:49:11 +0000 Subject: Never allow the FPU to be switched on for integer-only tasks (new gcc may use FP regs implicitely). --- c/src/lib/libbsp/powerpc/ChangeLog | 5 +++++ c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S | 21 --------------------- 2 files changed, 5 insertions(+), 21 deletions(-) (limited to 'c') diff --git a/c/src/lib/libbsp/powerpc/ChangeLog b/c/src/lib/libbsp/powerpc/ChangeLog index c11638e76e..aea6a064fa 100644 --- a/c/src/lib/libbsp/powerpc/ChangeLog +++ b/c/src/lib/libbsp/powerpc/ChangeLog @@ -1,3 +1,8 @@ +2006-06-19 Till Straumann + + * shared/irq/irq_asm.S: Never allow the FPU to be switched on + for integer-only tasks (new gcc may use FP regs implicitely). + 2006-03-08 Joel Sherrill * shared/startup/linkcmds: Add .gnu.linkonce.b.* section. diff --git a/c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S b/c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S index be3f92c1f5..4836c2a659 100644 --- a/c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S +++ b/c/src/lib/libbsp/powerpc/shared/irq/irq_asm.S @@ -299,27 +299,6 @@ nested: rfi switch: -#if ( PPC_HAS_FPU != 0 ) -#if ! defined( CPU_USE_DEFERRED_FP_SWITCH ) -#error missing include file??? -#endif - mfmsr r4 -#if ( CPU_USE_DEFERRED_FP_SWITCH == TRUE ) - /* if the executing thread has FP enabled propagate - * this now so _Thread_Dispatch can save/restore the FPREGS - * NOTE: it is *crucial* to disable the FPU across the - * user ISR [independent of using the 'deferred' - * strategy or not]. We don't save FP regs across - * the user ISR and hence we prefer an exception to - * be raised rather than experiencing corruption. - */ - lwz r3, SRR1_FRAME_OFFSET(r1) - rlwimi r4, r3, 0, 18, 18 /* MSR_FP */ -#else - ori r4, r4, MSR_FP -#endif - mtmsr r4 -#endif bl SYM (_Thread_Dispatch) easy_exit: -- cgit v1.2.3