aboutsummaryrefslogtreecommitdiff
path: root/gdbserver/server.h
diff options
context:
space:
mode:
authorLuis Machado <luis.machado@arm.com>2022-11-15 09:07:09 +0000
committerLuis Machado <luis.machado@arm.com>2023-10-04 16:23:40 +0100
commitb816042e88583f280ad186ff124ab84d31fb592b (patch)
treef44ad5f79015a044434f5091612a677c71e8ef0f /gdbserver/server.h
parent223dbdd276cf0b223ec96f8896d369af57d7387c (diff)
downloadgdb-b816042e88583f280ad186ff124ab84d31fb592b.zip
gdb-b816042e88583f280ad186ff124ab84d31fb592b.tar.gz
gdb-b816042e88583f280ad186ff124ab84d31fb592b.tar.bz2
sme: Add support for SME
Enable SME support in gdbserver by adjusting the usual fields. There is not much to this patch because the code is either in gdb or it is shared between gdbserver and gdb. One exception is the bump to gdbserver's PBUFSIZ from 18432 to 131104. Since the ZA register can be quite big (256 * 256 bytes), the g/G remote packet will also become quite big From gdbserver/tdesc.cc:init_target_desc, I estimated the new size should be at least (2 * 256 * 256 + 32), which yields 131104. It is also unlikely we will find a process starting up with SVL set to 256. Ideally we'd adjust the packet size dynamically based on what we need, but for now this should do. Please note we have the same limitation for SME that we have for SVE, and that is the fact gdbserver cannot communicate vector length changes to gdb via the remote protocol. Thiago is working on this improvement, which hopefully will be able to be adapted to SME in an easy way. Co-Authored-By: Ezra Sitorus <ezra.sitorus@arm.com> Reviewed-by: Thiago Jung Bauermann <thiago.bauermann@linaro.org>
Diffstat (limited to 'gdbserver/server.h')
-rw-r--r--gdbserver/server.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/gdbserver/server.h b/gdbserver/server.h
index fde7dfe..306d75d 100644
--- a/gdbserver/server.h
+++ b/gdbserver/server.h
@@ -104,7 +104,7 @@ extern int in_queued_stop_replies (ptid_t ptid);
/* Buffer sizes for transferring memory, registers, etc. Set to a constant
value to accommodate multiple register formats. This value must be at least
as large as the largest register set supported by gdbserver. */
-#define PBUFSIZ 18432
+#define PBUFSIZ 131104
/* Definition for an unknown syscall, used basically in error-cases. */
#define UNKNOWN_SYSCALL (-1)