summaryrefslogtreecommitdiffstats
path: root/target/linux/generic-2.4/patches/115-branch_emul_fix.patch
blob: 5d65ee8ef455c99043135efd3e26e9ff1aee1648 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
Index: linux-2.4.35.4/arch/mips/kernel/branch.c
===================================================================
--- linux-2.4.35.4.orig/arch/mips/kernel/branch.c
+++ linux-2.4.35.4/arch/mips/kernel/branch.c
@@ -170,7 +170,7 @@ int __compute_return_epc(struct pt_regs 
 		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))