X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fsparc64%2Fmath-emu%2Fmath.c;h=2ae05cd7b773fd2a45b3343968cd5ee072d5ea8e;hb=987b0145d94eecf292d8b301228356f44611ab7c;hp=6ee496c2864a8eb8c12e0132004563d2a253ce8d;hpb=f7ed79d23a47594e7834d66a8f14449796d4f3e6;p=linux-2.6.git diff --git a/arch/sparc64/math-emu/math.c b/arch/sparc64/math-emu/math.c index 6ee496c28..2ae05cd7b 100644 --- a/arch/sparc64/math-emu/math.c +++ b/arch/sparc64/math-emu/math.c @@ -206,29 +206,9 @@ int do_mathemu(struct pt_regs *regs, struct fpustate *f) case FSTOQ: TYPE(3,3,1,1,1,0,0); break; case FDTOQ: TYPE(3,3,1,2,1,0,0); break; case FQTOI: TYPE(3,1,0,3,1,0,0); break; - - /* We can get either unimplemented or unfinished - * for these cases. Pre-Niagara systems generate - * unfinished fpop for SUBNORMAL cases, and Niagara - * always gives unimplemented fpop for fsqrt{s,d}. - */ - case FSQRTS: { - unsigned long x = current_thread_info()->xfsr[0]; - - x = (x >> 14) & 0xf; - TYPE(x,1,1,1,1,0,0); - break; - } - - case FSQRTD: { - unsigned long x = current_thread_info()->xfsr[0]; - - x = (x >> 14) & 0xf; - TYPE(x,2,1,2,1,0,0); - break; - } - /* SUBNORMAL - ftt == 2 */ + case FSQRTS: TYPE(2,1,1,1,1,0,0); break; + case FSQRTD: TYPE(2,2,1,2,1,0,0); break; case FADDD: case FSUBD: case FMULD: