diff options
Diffstat (limited to 'arch')
| -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 | ||
