diff options
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/kernel/ptrace.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/kernel/ptrace.c b/arch/arm/kernel/ptrace.c index 9a340e790da5..2b84f78d7b0f 100644 --- a/arch/arm/kernel/ptrace.c +++ b/arch/arm/kernel/ptrace.c | |||
@@ -242,6 +242,15 @@ get_branch_address(struct task_struct *child, unsigned long pc, unsigned long in | |||
242 | */ | 242 | */ |
243 | long aluop1, aluop2, ccbit; | 243 | long aluop1, aluop2, ccbit; |
244 | 244 | ||
245 | if ((insn & 0x0fffffd0) == 0x012fff10) { | ||
246 | /* | ||
247 | * bx or blx | ||
248 | */ | ||
249 | alt = get_user_reg(child, insn & 15); | ||
250 | break; | ||
251 | } | ||
252 | |||
253 | |||
245 | if ((insn & 0xf000) != 0xf000) | 254 | if ((insn & 0xf000) != 0xf000) |
246 | break; | 255 | break; |
247 | 256 | ||