xref: /OK3568_Linux_fs/buildroot/package/gdb/11.2/0009-gdb-Fix-native-build-on-xtensa.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFrom d3bb361eb0b6cbf0257f515f9d5e64add89e6bfa Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Romain Naour <romain.naour@gmail.com>
3*4882a593SmuzhiyunDate: Sun, 28 Aug 2022 23:21:37 +0200
4*4882a593SmuzhiyunSubject: [PATCH] gdb: Fix native build on xtensa
5*4882a593SmuzhiyunMIME-Version: 1.0
6*4882a593SmuzhiyunContent-Type: text/plain; charset=UTF-8
7*4882a593SmuzhiyunContent-Transfer-Encoding: 8bit
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunApply a similar fix than for Alpha architecture on gdb 9:
10*4882a593Smuzhiyunhttps://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=7a27b85f6d9b5eea9bd1493f903158fbea4b2231
11*4882a593Smuzhiyun
12*4882a593SmuzhiyunFixes:
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun../../gdb/xtensa-linux-nat.c: In function ‘void fill_gregset(const regcache*, elf_greg_t (*)[128], int)’:
15*4882a593Smuzhiyun../../gdb/xtensa-linux-nat.c:66:17: error: ‘gdbarch_pc_regnum’ was not declared in this scope
16*4882a593Smuzhiyun   66 |   if (regnum == gdbarch_pc_regnum (gdbarch) || regnum == -1)
17*4882a593Smuzhiyun      |                 ^~~~~~~~~~~~~~~~~
18*4882a593Smuzhiyun  CXX    complaints.o
19*4882a593Smuzhiyun../../gdb/xtensa-linux-nat.c:68:17: error: ‘gdbarch_ps_regnum’ was not declared in this scope
20*4882a593Smuzhiyun   68 |   if (regnum == gdbarch_ps_regnum (gdbarch) || regnum == -1)
21*4882a593Smuzhiyun      |                 ^~~~~~~~~~~~~~~~~
22*4882a593Smuzhiyun../../gdb/xtensa-linux-nat.c:71:38: error: no matching function for call to ‘gdbarch_tdep::gdbarch_tdep(gdbarch*&)’
23*4882a593Smuzhiyun   71 |   if (regnum == gdbarch_tdep (gdbarch)->wb_regnum || regnum == -1)
24*4882a593Smuzhiyun      |                                      ^
25*4882a593SmuzhiyunIn file included from ../../gdb/xtensa-linux-nat.c:38:
26*4882a593Smuzhiyun../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘gdbarch_tdep::gdbarch_tdep()’
27*4882a593Smuzhiyun  160 | struct gdbarch_tdep
28*4882a593Smuzhiyun      |        ^~~~~~~~~~~~
29*4882a593Smuzhiyun../../gdb/xtensa-tdep.h:160:8: note:   candidate expects 0 arguments, 1 provided
30*4882a593Smuzhiyun../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘constexpr gdbarch_tdep::gdbarch_tdep(const gdbarch_tdep&)’
31*4882a593Smuzhiyun../../gdb/xtensa-tdep.h:160:8: note:   no known conversion for argument 1 from ‘gdbarch*’ to ‘const gdbarch_tdep&’
32*4882a593Smuzhiyun../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘constexpr gdbarch_tdep::gdbarch_tdep(gdbarch_tdep&&)’
33*4882a593Smuzhiyun../../gdb/xtensa-tdep.h:160:8: note:   no known conversion for argument 1 from ‘gdbarch*’ to ‘gdbarch_tdep&&’
34*4882a593Smuzhiyun../../gdb/xtensa-linux-nat.c:72:49: error: no matching function for call to ‘gdbarch_tdep::gdbarch_tdep(gdbarch*&)’
35*4882a593Smuzhiyun   72 |     regcache->raw_collect (gdbarch_tdep (gdbarch)->wb_regnum,
36*4882a593Smuzhiyun      |                                                 ^
37*4882a593Smuzhiyun
38*4882a593SmuzhiyunSigned-off-by: Romain Naour <romain.naour@gmail.com>
39*4882a593Smuzhiyun---
40*4882a593Smuzhiyun gdb/xtensa-linux-nat.c | 1 +
41*4882a593Smuzhiyun 1 file changed, 1 insertion(+)
42*4882a593Smuzhiyun
43*4882a593Smuzhiyundiff --git a/gdb/xtensa-linux-nat.c b/gdb/xtensa-linux-nat.c
44*4882a593Smuzhiyunindex ec33f4a10f2..73f35eac683 100644
45*4882a593Smuzhiyun--- a/gdb/xtensa-linux-nat.c
46*4882a593Smuzhiyun+++ b/gdb/xtensa-linux-nat.c
47*4882a593Smuzhiyun@@ -36,6 +36,7 @@
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun #include "gregset.h"
50*4882a593Smuzhiyun #include "xtensa-tdep.h"
51*4882a593Smuzhiyun+#include "gdbarch.h"
52*4882a593Smuzhiyun
53*4882a593Smuzhiyun /* Defines ps_err_e, struct ps_prochandle.  */
54*4882a593Smuzhiyun #include "gdb_proc_service.h"
55*4882a593Smuzhiyun--
56*4882a593Smuzhiyun2.37.2
57*4882a593Smuzhiyun
58