Use arm_eabi_breakpoint on aarch32
Nowdays, GDBserver chooses arm breakpoint instructions by checking macro __ARM_EABI__. When aarch64 GDBserver debugs arm program, arm_eabi_breakpoint is still needed, but __ARM_EABI__ isn't defined in aarch64 compiler. This causes GDBserver chooses the wrong breakpoint instruction for arm program. This patch fixes it. gdb/gdbserver: 2015-12-11 Yao Qi <yao.qi@linaro.org> * linux-aarch32-low.c [__aarch64__]: Use arm_abi_breakpoint arm breakpoint.
This commit is contained in:
parent
1e6f4800fc
commit
b37a6290be
@ -1,3 +1,8 @@
|
||||
2015-12-11 Yao Qi <yao.qi@linaro.org>
|
||||
|
||||
* linux-aarch32-low.c [__aarch64__]: Use arm_abi_breakpoint
|
||||
arm breakpoint.
|
||||
|
||||
2015-12-07 Yao Qi <yao.qi@linaro.org>
|
||||
|
||||
* configure.srv: Append arm.o to srv_tgtobj for
|
||||
|
@ -146,10 +146,10 @@ struct regs_info regs_info_aarch32 =
|
||||
ABI's breakpoint instruction. For now at least. */
|
||||
#define arm_eabi_breakpoint 0xe7f001f0UL
|
||||
|
||||
#ifndef __ARM_EABI__
|
||||
static const unsigned long arm_breakpoint = arm_abi_breakpoint;
|
||||
#else
|
||||
#if (defined __ARM_EABI__ || defined __aarch64__)
|
||||
static const unsigned long arm_breakpoint = arm_eabi_breakpoint;
|
||||
#else
|
||||
static const unsigned long arm_breakpoint = arm_abi_breakpoint;
|
||||
#endif
|
||||
|
||||
#define arm_breakpoint_len 4
|
||||
|
Loading…
Reference in New Issue
Block a user