From a3d2a53e1eb21cfb108722c96da1922d150b4462 Mon Sep 17 00:00:00 2001 From: Tony Wu Date: Sun, 12 May 2013 15:04:29 +0000 Subject: [PATCH] --- yaml --- r: 375759 b: refs/heads/master c: e7438c4b893e87311d2fb0facb3e6a0df17abe01 h: refs/heads/master i: 375757: d80d02a4c53414d76e213e33163a2db2bb1715d8 375755: 51885300c4a676247c1e9e78651b6c0e28abb672 375751: f5dc497401b59dc1cd3b2e19314733fa8ba6a5f7 375743: c87b830290cec8297db548cfe4cef4df18cc3fed v: v3 --- [refs] | 2 +- trunk/arch/mips/kernel/process.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index f3b73caf0fca..083798159896 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d552b233f692416d63bb93eb35bf24e5c95c7e0b +refs/heads/master: e7438c4b893e87311d2fb0facb3e6a0df17abe01 diff --git a/trunk/arch/mips/kernel/process.c b/trunk/arch/mips/kernel/process.c index eb902c1f0cad..785bf2a4129a 100644 --- a/trunk/arch/mips/kernel/process.c +++ b/trunk/arch/mips/kernel/process.c @@ -264,7 +264,7 @@ static inline int is_ra_save_ins(union mips_instruction *ip) #endif } -static inline int is_jal_jalr_jr_ins(union mips_instruction *ip) +static inline int is_jump_ins(union mips_instruction *ip) { #ifdef CONFIG_CPU_MICROMIPS /* @@ -288,6 +288,8 @@ static inline int is_jal_jalr_jr_ins(union mips_instruction *ip) return 0; return (((ip->u_format.uimmediate >> 6) & mm_jalr_op) == mm_jalr_op); #else + if (ip->j_format.opcode == j_op) + return 1; if (ip->j_format.opcode == jal_op) return 1; if (ip->r_format.opcode != spec_op) @@ -350,7 +352,7 @@ static int get_frame_info(struct mips_frame_info *info) for (i = 0; i < max_insns; i++, ip++) { - if (is_jal_jalr_jr_ins(ip)) + if (is_jump_ins(ip)) break; if (!info->frame_size) { if (is_sp_move_ins(ip))