diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2006-10-20 00:34:35 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@de.ibm.com> | 2006-10-20 00:34:35 +0000 |
commit | b7149293aa320693b0bc762fb5e09a991fa8dc6a (patch) | |
tree | 1a9e17044f9edfcae42b1e4e4800dba4156f3b4f | |
parent | 8620418b9c1073361483e7b0883ca91e18d2e465 (diff) | |
download | gdb-b7149293aa320693b0bc762fb5e09a991fa8dc6a.zip gdb-b7149293aa320693b0bc762fb5e09a991fa8dc6a.tar.gz gdb-b7149293aa320693b0bc762fb5e09a991fa8dc6a.tar.bz2 |
2005-10-19 Ulrich Weigand <uweigand@de.ibm.com>
* configure.srv [s390-*-linux*, s390x-*-linux*]: Set srv_linux_regsets
and srv_linux_thread_db to yes.
* linux-s390-low.c (s390_fill_gregset): New function.
(target_regsets): Define data structure.
-rw-r--r-- | gdb/gdbserver/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/gdbserver/configure.srv | 4 | ||||
-rw-r--r-- | gdb/gdbserver/linux-s390-low.c | 18 |
3 files changed, 28 insertions, 1 deletions
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 810527e..e623ae7 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,10 @@ +2005-10-19 Ulrich Weigand <uweigand@de.ibm.com> + + * configure.srv [s390-*-linux*, s390x-*-linux*]: Set srv_linux_regsets + and srv_linux_thread_db to yes. + * linux-s390-low.c (s390_fill_gregset): New function. + (target_regsets): Define data structure. + 2006-10-17 Daniel Jacobowitz <dan@codesourcery.com> * acinclude.m4 (SRV_CHECK_TLS_GET_ADDR): New. diff --git a/gdb/gdbserver/configure.srv b/gdb/gdbserver/configure.srv index 40805e5..3287955 100644 --- a/gdb/gdbserver/configure.srv +++ b/gdb/gdbserver/configure.srv @@ -87,10 +87,14 @@ case "${target}" in s390-*-linux*) srv_regobj=reg-s390.o srv_tgtobj="linux-low.o linux-s390-low.o" srv_linux_usrregs=yes + srv_linux_regsets=yes + srv_linux_thread_db=yes ;; s390x-*-linux*) srv_regobj=reg-s390x.o srv_tgtobj="linux-low.o linux-s390-low.o" srv_linux_usrregs=yes + srv_linux_regsets=yes + srv_linux_thread_db=yes ;; sh*-*-linux*) srv_regobj=reg-sh.o srv_tgtobj="linux-low.o linux-sh-low.o" diff --git a/gdb/gdbserver/linux-s390-low.c b/gdb/gdbserver/linux-s390-low.c index 7ebb8e9..c2511a5 100644 --- a/gdb/gdbserver/linux-s390-low.c +++ b/gdb/gdbserver/linux-s390-low.c @@ -1,6 +1,6 @@ /* GNU/Linux S/390 specific low level interface, for the remote server for GDB. - Copyright (C) 2001, 2002, 2005 + Copyright (C) 2001, 2002, 2005, 2006 Free Software Foundation, Inc. This file is part of GDB. @@ -75,6 +75,22 @@ s390_cannot_store_register (int regno) return 0; } +/* Provide only a fill function for the general register set. ps_lgetregs + will use this for NPTL support. */ + +static void s390_fill_gregset (void *buf) +{ + int i; + + for (i = 0; i < 34; i++) + collect_register (i, (char *) buf + s390_regmap[i]); +} + +struct regset_info target_regsets[] = { + { 0, 0, 0, GENERAL_REGS, s390_fill_gregset, NULL }, + { 0, 0, -1, -1, NULL, NULL } +}; + static const unsigned char s390_breakpoint[] = { 0, 1 }; #define s390_breakpoint_len 2 |