Skip to content

Commit

Permalink
gdbstub: Introduce gdb_find_static_feature()
Browse files Browse the repository at this point in the history
This function is useful to determine the number of registers exposed to
GDB from the XML name.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20231025093128.33116-3-akihiko.odaki@daynix.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231106185112.2755262-10-alex.bennee@linaro.org>
  • Loading branch information
akihikodaki authored and stsquad committed Nov 7, 2023
1 parent 1a012f3 commit 7295250
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 0 deletions.
13 changes: 13 additions & 0 deletions gdbstub/gdbstub.c
Original file line number Diff line number Diff line change
Expand Up @@ -422,6 +422,19 @@ static const char *get_feature_xml(const char *p, const char **newp,
return NULL;
}

const GDBFeature *gdb_find_static_feature(const char *xmlname)
{
const GDBFeature *feature;

for (feature = gdb_static_features; feature->xmlname; feature++) {
if (!strcmp(feature->xmlname, xmlname)) {
return feature;
}
}

g_assert_not_reached();
}

static int gdb_read_register(CPUState *cpu, GByteArray *buf, int reg)
{
CPUClass *cc = CPU_GET_CLASS(cpu);
Expand Down
8 changes: 8 additions & 0 deletions include/exec/gdbstub.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,14 @@ void gdb_register_coprocessor(CPUState *cpu,
*/
int gdbserver_start(const char *port_or_device);

/**
* gdb_find_static_feature() - Find a static feature.
* @xmlname: The name of the XML.
*
* Return: The static feature.
*/
const GDBFeature *gdb_find_static_feature(const char *xmlname);

void gdb_set_stop_cpu(CPUState *cpu);

/* in gdbstub-xml.c, generated by scripts/feature_to_c.py */
Expand Down

0 comments on commit 7295250

Please sign in to comment.