Rev 924 | Rev 1096 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 924 | Rev 958 | ||
|---|---|---|---|
| Line 34... | Line 34... | ||
| 34 | 34 | ||
| 35 | void fpu_disable(void) |
35 | void fpu_disable(void) |
| 36 | { |
36 | { |
| 37 | #ifdef ARCH_HAS_FPU |
37 | #ifdef ARCH_HAS_FPU |
| 38 | cp0_status_write(cp0_status_read() & ~cp0_status_fpu_bit); |
38 | cp0_status_write(cp0_status_read() & ~cp0_status_fpu_bit); |
| 39 | if (THREAD && THREAD->pstate) |
39 | if (THREAD && THREAD->istate) |
| 40 | THREAD->pstate->status &= ~cp0_status_fpu_bit; |
40 | THREAD->istate->status &= ~cp0_status_fpu_bit; |
| 41 | #endif |
41 | #endif |
| 42 | } |
42 | } |
| 43 | 43 | ||
| 44 | void fpu_enable(void) |
44 | void fpu_enable(void) |
| 45 | { |
45 | { |
| 46 | #ifdef ARCH_HAS_FPU |
46 | #ifdef ARCH_HAS_FPU |
| 47 | cp0_status_write(cp0_status_read() | cp0_status_fpu_bit); |
47 | cp0_status_write(cp0_status_read() | cp0_status_fpu_bit); |
| 48 | if (THREAD && THREAD->pstate) |
48 | if (THREAD && THREAD->istate) |
| 49 | THREAD->pstate->status |= cp0_status_fpu_bit; |
49 | THREAD->istate->status |= cp0_status_fpu_bit; |
| 50 | #endif |
50 | #endif |
| 51 | } |
51 | } |
| 52 | 52 | ||
| 53 | void fpu_init() |
53 | void fpu_init() |
| 54 | { |
54 | { |