115-branch_emul_fix.patch 482 B

12345678910111213
  1. Index: linux-2.4.35.4/arch/mips/kernel/branch.c
  2. ===================================================================
  3. --- linux-2.4.35.4.orig/arch/mips/kernel/branch.c
  4. +++ linux-2.4.35.4/arch/mips/kernel/branch.c
  5. @@ -170,7 +170,7 @@ int __compute_return_epc(struct pt_regs
  6. bit = (insn.i_format.rt >> 2);
  7. bit += (bit != 0);
  8. bit += 23;
  9. - switch (insn.i_format.rt) {
  10. + switch (insn.i_format.rt & 3) {
  11. case 0: /* bc1f */
  12. case 2: /* bc1fl */
  13. if (~fcr31 & (1 << bit))