diff options
Diffstat (limited to 'arch/sh/math-emu/math.c')
| -rw-r--r-- | arch/sh/math-emu/math.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/sh/math-emu/math.c b/arch/sh/math-emu/math.c index ac2d7abd2567..d6c15cae0912 100644 --- a/arch/sh/math-emu/math.c +++ b/arch/sh/math-emu/math.c | |||
| @@ -558,7 +558,7 @@ static int ieee_fpe_handler(struct pt_regs *regs) | |||
| 558 | (finsn >> 8) & 0xf); | 558 | (finsn >> 8) & 0xf); |
| 559 | tsk->thread.fpu.hard.fpscr &= | 559 | tsk->thread.fpu.hard.fpscr &= |
| 560 | ~(FPSCR_CAUSE_MASK | FPSCR_FLAG_MASK); | 560 | ~(FPSCR_CAUSE_MASK | FPSCR_FLAG_MASK); |
| 561 | set_tsk_thread_flag(tsk, TIF_USEDFPU); | 561 | task_thread_info(tsk)->status |= TS_USEDFPU; |
| 562 | } else { | 562 | } else { |
| 563 | info.si_signo = SIGFPE; | 563 | info.si_signo = SIGFPE; |
| 564 | info.si_errno = 0; | 564 | info.si_errno = 0; |
| @@ -619,10 +619,10 @@ int do_fpu_inst(unsigned short inst, struct pt_regs *regs) | |||
| 619 | struct task_struct *tsk = current; | 619 | struct task_struct *tsk = current; |
| 620 | struct sh_fpu_soft_struct *fpu = &(tsk->thread.fpu.soft); | 620 | struct sh_fpu_soft_struct *fpu = &(tsk->thread.fpu.soft); |
| 621 | 621 | ||
| 622 | if (!test_tsk_thread_flag(tsk, TIF_USEDFPU)) { | 622 | if (!(task_thread_info(tsk)->status & TS_USEDFPU)) { |
| 623 | /* initialize once. */ | 623 | /* initialize once. */ |
| 624 | fpu_init(fpu); | 624 | fpu_init(fpu); |
| 625 | set_tsk_thread_flag(tsk, TIF_USEDFPU); | 625 | task_thread_info(tsk)->status |= TS_USEDFPU; |
| 626 | } | 626 | } |
| 627 | 627 | ||
| 628 | return fpu_emulate(inst, fpu, regs); | 628 | return fpu_emulate(inst, fpu, regs); |
