diff options
| -rw-r--r-- | arch/mips/kernel/process.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/mips/kernel/process.c b/arch/mips/kernel/process.c index eb902c1f0cad..785bf2a4129a 100644 --- a/arch/mips/kernel/process.c +++ b/arch/mips/kernel/process.c | |||
| @@ -264,7 +264,7 @@ static inline int is_ra_save_ins(union mips_instruction *ip) | |||
| 264 | #endif | 264 | #endif |
| 265 | } | 265 | } |
| 266 | 266 | ||
| 267 | static inline int is_jal_jalr_jr_ins(union mips_instruction *ip) | 267 | static inline int is_jump_ins(union mips_instruction *ip) |
| 268 | { | 268 | { |
| 269 | #ifdef CONFIG_CPU_MICROMIPS | 269 | #ifdef CONFIG_CPU_MICROMIPS |
| 270 | /* | 270 | /* |
| @@ -288,6 +288,8 @@ static inline int is_jal_jalr_jr_ins(union mips_instruction *ip) | |||
| 288 | return 0; | 288 | return 0; |
| 289 | return (((ip->u_format.uimmediate >> 6) & mm_jalr_op) == mm_jalr_op); | 289 | return (((ip->u_format.uimmediate >> 6) & mm_jalr_op) == mm_jalr_op); |
| 290 | #else | 290 | #else |
| 291 | if (ip->j_format.opcode == j_op) | ||
| 292 | return 1; | ||
| 291 | if (ip->j_format.opcode == jal_op) | 293 | if (ip->j_format.opcode == jal_op) |
| 292 | return 1; | 294 | return 1; |
| 293 | if (ip->r_format.opcode != spec_op) | 295 | if (ip->r_format.opcode != spec_op) |
| @@ -350,7 +352,7 @@ static int get_frame_info(struct mips_frame_info *info) | |||
| 350 | 352 | ||
| 351 | for (i = 0; i < max_insns; i++, ip++) { | 353 | for (i = 0; i < max_insns; i++, ip++) { |
| 352 | 354 | ||
| 353 | if (is_jal_jalr_jr_ins(ip)) | 355 | if (is_jump_ins(ip)) |
| 354 | break; | 356 | break; |
| 355 | if (!info->frame_size) { | 357 | if (!info->frame_size) { |
| 356 | if (is_sp_move_ins(ip)) | 358 | if (is_sp_move_ins(ip)) |
