Merge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
[pandora-kernel.git] / arch / mips / kernel / branch.c
index 374de83..76fd3f2 100644 (file)
@@ -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))