summaryrefslogtreecommitdiff
path: root/arch/mips/kernel/process.c
diff options
context:
space:
mode:
authorThomas Bogendoerfer <tsbogend@alpha.franken.de>2021-02-09 17:12:34 +0100
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>2021-02-09 17:12:34 +0100
commitea4a1ea4c8f47b8dd0aa6e96d8cb806afe6726f8 (patch)
treea00a33e83553ab21956ea617e393e385d39994ed /arch/mips/kernel/process.c
parentfe6c98a115affdb3ff9cfccc5b6207127223d4b8 (diff)
Revert "MIPS: microMIPS: Fix the judgment of mm_jr16_op and mm_jalr_op"
This reverts commit 9308579fef3ddde19da9d45e23bf36d41932417f. Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Diffstat (limited to 'arch/mips/kernel/process.c')
-rw-r--r--arch/mips/kernel/process.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/mips/kernel/process.c b/arch/mips/kernel/process.c
index cdd2cd4df081..af4c862ec5ff 100644
--- a/arch/mips/kernel/process.c
+++ b/arch/mips/kernel/process.c
@@ -326,8 +326,8 @@ static inline int is_jump_ins(union mips_instruction *ip)
* microMIPS is kind of more fun...
*/
if (mm_insn_16bit(ip->word >> 16)) {
- if (ip->mm16_r5_format.opcode == mm_pool16c_op &&
- ip->mm16_r5_format.rt == mm_jr16_op)
+ if ((ip->mm16_r5_format.opcode == mm_pool16c_op &&
+ (ip->mm16_r5_format.rt & mm_jr16_op) == mm_jr16_op))
return 1;
return 0;
}
@@ -339,7 +339,7 @@ static inline int is_jump_ins(union mips_instruction *ip)
if (ip->r_format.opcode != mm_pool32a_op ||
ip->r_format.func != mm_pool32axf_op)
return 0;
- return ((ip->u_format.uimmediate >> 6) & GENMASK(9, 0)) == mm_jalr_op;
+ return ((ip->u_format.uimmediate >> 6) & mm_jalr_op) == mm_jalr_op;
#else
if (ip->j_format.opcode == j_op)
return 1;