gdbserver: fix gdbserver builds after expedite_regs changes

After this commit:

  commit 6a65998a8a94abaaae7ca4ff0ab9c3f25dc2e766
  Date:   Mon Sep 11 12:42:00 2023 +0100

      Convert tdesc's expedite_regs to a string vector

The risc-v, loongarch, and csky gdbserver builds were broken.  A use
of target_desc::expedite_regs (for each architecture)  was not updated
to take account of the type change.

I've tested that this fixes the risc-v build.  I haven't tested the
other architectures, but they should be fine.
This commit is contained in:
Andrew Burgess 2023-10-05 12:14:32 +01:00
parent fef7f251fe
commit dd6a9ec16e
3 changed files with 16 additions and 6 deletions

View File

@ -132,8 +132,11 @@ csky_target::low_arch_setup ()
static const char *expedite_regs[] = { "r14", "pc", NULL };
target_desc_up tdesc = csky_create_target_description ();
if (!tdesc->expedite_regs)
init_target_desc (tdesc.get (), expedite_regs);
if (tdesc->expedite_regs.empty ())
{
init_target_desc (tdesc.get (), expedite_regs);
gdb_assert (!tdesc->expedite_regs.empty ());
}
current_process ()->tdesc = tdesc.release ();

View File

@ -84,8 +84,11 @@ loongarch_target::low_arch_setup ()
features.xlen = sizeof (elf_greg_t);
tdesc = loongarch_create_target_description (features);
if (!tdesc->expedite_regs)
init_target_desc (tdesc.get (), expedite_regs);
if (tdesc->expedite_regs.empty ())
{
init_target_desc (tdesc.get (), expedite_regs);
gdb_assert (!tdesc->expedite_regs.empty ());
}
current_process ()->tdesc = tdesc.release ();
}

View File

@ -90,8 +90,12 @@ riscv_target::low_arch_setup ()
= riscv_linux_read_features (lwpid_of (current_thread));
target_desc_up tdesc = riscv_create_target_description (features);
if (!tdesc->expedite_regs)
init_target_desc (tdesc.get (), expedite_regs);
if (tdesc->expedite_regs.empty ())
{
init_target_desc (tdesc.get (), expedite_regs);
gdb_assert (!tdesc->expedite_regs.empty ());
}
current_process ()->tdesc = tdesc.release ();
}