base: add support for GDB's XML architecture definition
authorCiro Santilli <ciro.santilli@arm.com>
Mon, 19 Nov 2018 15:25:44 +0000 (15:25 +0000)
committerCiro Santilli <ciro.santilli@arm.com>
Tue, 22 Jan 2019 11:35:12 +0000 (11:35 +0000)
commitaf5a23a39f544568e79a93250548bef83f9c2fff
tree5763efd9883dd3e2d9fd9d67d1ea2f7f0955f74e
parent12eac0c88e21ddc76593079127a4507558cddc40
base: add support for GDB's XML architecture definition

This is done by implementing the Xfer:features:read packet of the GDB
remote protocol.

Before this commit, gem5 used the defaults of the GDB client.

With this commit, gem5 can inform the client which registers it knows
about. This allows in particular to support new registers which an older
GDB client does not yet know about.

The XML is not implemented in this commit for any arch, and falls back
almost exactly to previous behaviour. The only change is that now gem5
replies to the Supported: request which the GDB clients sends at the
beginning of the transaction with an empty feature list containing only
the mandatory PacketSize= argument.

Since the feature list does not contain qXfer:features:read, the GDB
client knows that the gem5 server does support the XML format and uses
its default registers as before.

Change-Id: I5185f28b00e9b9cc8245f4b4262cc324c3d298c1
Reviewed-on: https://gem5-review.googlesource.com/c/15137
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
src/base/remote_gdb.cc
src/base/remote_gdb.hh