gdb: LoongArch: Implement the iterate_over_regset_sections gdbarch method
authorTiezhu Yang <yangtiezhu@loongson.cn>
Mon, 23 May 2022 07:53:06 +0000 (15:53 +0800)
committerTiezhu Yang <yangtiezhu@loongson.cn>
Mon, 23 May 2022 14:31:24 +0000 (22:31 +0800)
commita6b446b22270b52dd4739e9ab094e11b307ff0b5
tree8fef93d82543ad10e318f598ae93aaa4d676aee8
parent01a62a6d5fa99cffe25d35721c16e9bc81ed7389
gdb: LoongArch: Implement the iterate_over_regset_sections gdbarch method

When execute the following command on LoongArch:

  make check-gdb TESTS="gdb.base/auxv.exp"

there exist the following unsupported and failed testcases:

  UNSUPPORTED: gdb.base/auxv.exp: gcore
  FAIL: gdb.base/auxv.exp: load core file for info auxv on native core dump
  FAIL: gdb.base/auxv.exp: info auxv on native core dump
  FAIL: gdb.base/auxv.exp: matching auxv data from live and core
  UNSUPPORTED: gdb.base/auxv.exp: info auxv on gcore-created dump
  UNSUPPORTED: gdb.base/auxv.exp: matching auxv data from live and gcore

we can see the following messages in gdb/testsuite/gdb.log:

  gcore /home/loongson/build.git/gdb/testsuite/outputs/gdb.base/auxv/auxv.gcore
  Target does not support core file generation.
  (gdb) UNSUPPORTED: gdb.base/auxv.exp: gcore

In order to fix the above issues, implement the iterate_over_regset_sections
gdbarch method to iterate over core file register note sections on LoongArch.

By the way, with this patch, the failed testcases in gdb.base/corefile.exp
and gdb.base/gcore.exp can also be fixed.

Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
gdb/loongarch-linux-tdep.c