aboutsummaryrefslogtreecommitdiff
path: root/gdb/ada-tasks.c
diff options
context:
space:
mode:
authorPierre Langlois <pierre.langlois@arm.com>2015-06-29 10:34:42 +0100
committerPierre Langlois <pierre.langlois@arm.com>2015-06-29 10:34:42 +0100
commit37d669427f8b90f3c9d17a6e04d72c731d3abdbc (patch)
tree090e62d34a5da3fe25adfebc0ae90290b5460ab9 /gdb/ada-tasks.c
parent1451ea7da40a82e8cf6a39fa8d0fc74ff230600a (diff)
downloadgdb-37d669427f8b90f3c9d17a6e04d72c731d3abdbc.zip
gdb-37d669427f8b90f3c9d17a6e04d72c731d3abdbc.tar.gz
gdb-37d669427f8b90f3c9d17a6e04d72c731d3abdbc.tar.bz2
[GDBServer][AArch64] Use the same break instruction as GDB
GDB uses a "brk #0" instruction to perform a software breakpoint while GDBServer uses an illegal instruction. Both instructions should match. When enabling support for the 'Z0' packet, we let GDBServer insert the breakpoint instruction instead of GDB. And in case of permanent breakpoints for example, GDB will check if a breakpoint is inserted in the inferior with `program_breakpoint_here_p (gdbarch, address)', and compare the instruction read from the inferior with the breakpoint instruction. On AArch64, instructions are always little endian so we need to represent it as an array of bytes, as done in aarch64-tdep.c. gdb/gdbserver/ChangeLog: * linux-aarch64-low.c: Remove comment about endianness. (aarch64_breakpoint): Change type to gdb_byte[]. Set to "brk #0". (aarch64_breakpoint_at): Change type of insn to gdb_byte[]. Use memcmp.
Diffstat (limited to 'gdb/ada-tasks.c')
0 files changed, 0 insertions, 0 deletions