Commit 0f6dee23 authored by Carmelo AMOROSO's avatar Carmelo AMOROSO Committed by Paul Mundt

sh: fcnvds fix with denormalized numbers on SH-4 FPU.

This fixes a bug in the FPU exception handler for the FCNVDS instruction.
To get the register number the instruction is shifted right by 9,
though it should be shifted right by 8.

More information at ST Linux bugzilla:

	https://bugzilla.stlinux.com/show_bug.cgi?id=4892Signed-off-by: default avatarGiuseppe Di Giore <giuseppe.di-giore@st.com>
Signed-off-by: default avatarCarmelo Amoroso <carmelo.amoroso@st.com>
Signed-off-by: default avatarStuart Menefy <stuart.menefy@st.com>
Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent 48865163
......@@ -423,7 +423,7 @@ static int ieee_fpe_handler(struct pt_regs *regs)
int m;
unsigned int hx;
m = (finsn >> 9) & 0x7;
m = (finsn >> 8) & 0x7;
hx = tsk->thread.fpu.hard.fp_regs[m];
if ((tsk->thread.fpu.hard.fpscr & FPSCR_CAUSE_ERROR)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment