X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=arch%2Fmips%2Fkernel%2Fbranch.c;h=76fd3f22c76624363d94b7e4b870d0e798ff282d;hb=fffcb480e4224f25c965b93fa65541bfc7dd732e;hp=374de839558d58467c381a6384df6a634b506219;hpb=c7fb577e2a6cb04732541f2dc402bd46747f7558;p=pandora-kernel.git diff --git a/arch/mips/kernel/branch.c b/arch/mips/kernel/branch.c index 374de839558d..76fd3f22c766 100644 --- a/arch/mips/kernel/branch.c +++ b/arch/mips/kernel/branch.c @@ -178,13 +178,13 @@ int __compute_return_epc(struct pt_regs *regs) if (is_fpu_owner()) asm volatile("cfc1\t%0,$31" : "=r" (fcr31)); else - fcr31 = current->thread.fpu.hard.fcr31; + fcr31 = current->thread.fpu.fcr31; preempt_enable(); bit = (insn.i_format.rt >> 2); bit += (bit != 0); bit += 23; - switch (insn.i_format.rt) { + switch (insn.i_format.rt & 3) { case 0: /* bc1f */ case 2: /* bc1fl */ if (~fcr31 & (1 << bit))