aboutsummaryrefslogtreecommitdiff
path: root/gdb/features
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2011-11-30 16:06:55 +0000
committerUlrich Weigand <uweigand@de.ibm.com>2011-11-30 16:06:55 +0000
commitd6db1fabccd61cdc0527cf7c701ae5cf7f277281 (patch)
tree1ee15269e26f8d23a2a607df2b02f2aff461bbad /gdb/features
parent1dd635acb8bfcf517fae1d3e21d312828efdb2b1 (diff)
downloadgdb-d6db1fabccd61cdc0527cf7c701ae5cf7f277281.zip
gdb-d6db1fabccd61cdc0527cf7c701ae5cf7f277281.tar.gz
gdb-d6db1fabccd61cdc0527cf7c701ae5cf7f277281.tar.bz2
ChangeLog:
* s390-nat.c (SUBOFF): Remove. (s390_native_supply, s390_native_collect): New functions. (supply_gregset, supply_fpregset): Use s390_native_supply. (fill_gregset, fill_fpregset): Use s390_native_collect. * s390-tdep.c (s390_pseudo_register_reggroup_p): Update comment. (s390_unwind_pseudo_register): New function. (s390_prologue_frame_unwind_cache): Unwind PSW address and mask registers instead of PC and CC. (s390_backchain_frame_unwind_cache): Likewise. (s390_sigtramp_frame_unwind_cache): Do not unwind PC, CC, or full GPR pseudos. (s390_trad_frame_prev_register): New function. (s390_frame_prev_register): Use it. (s390_sigtramp_frame_prev_register): Likewise. (s390_dwarf2_prev_register): Use s390_unwind_pseudo_register. (s390_dwarf2_frame_init_reg): Unwind PSW address and mask. Use special callback to unwind any pseudo. * features/s390-core32.xml: Add pswm/pswa to save/restore group. * features/s390-core64.xml: Likewise. * features/s390x-core64.xml: Likewise. * features/s390-linux32.c: Regenerate. * features/s390-linux64.c: Likewise. * features/s390x-linux64.c: Likewise. gdbserver/ChangeLog: * linux-s390-low.c (s390_collect_ptrace_register): Fully convert PSW address/mask between 8-byte and 16-byte formats. (s390_supply_ptrace_register): Likewise. (s390_get_pc, s390_set_pc): 4-byte PSW address always includes basic addressing mode bit.
Diffstat (limited to 'gdb/features')
-rw-r--r--gdb/features/s390-core32.xml4
-rw-r--r--gdb/features/s390-core64.xml4
-rw-r--r--gdb/features/s390-linux32.c5
-rw-r--r--gdb/features/s390-linux64.c5
-rw-r--r--gdb/features/s390x-core64.xml4
-rw-r--r--gdb/features/s390x-linux64.c5
6 files changed, 15 insertions, 12 deletions
diff --git a/gdb/features/s390-core32.xml b/gdb/features/s390-core32.xml
index 3c0937a..989e555 100644
--- a/gdb/features/s390-core32.xml
+++ b/gdb/features/s390-core32.xml
@@ -7,8 +7,8 @@
<!DOCTYPE feature SYSTEM "gdb-target.dtd">
<feature name="org.gnu.gdb.s390.core">
- <reg name="pswm" bitsize="32" type="uint32" group="psw" save-restore="no"/>
- <reg name="pswa" bitsize="32" type="uint32" group="psw" save-restore="no"/>
+ <reg name="pswm" bitsize="32" type="uint32" group="psw"/>
+ <reg name="pswa" bitsize="32" type="uint32" group="psw"/>
<reg name="r0" bitsize="32" type="uint32" group="general"/>
<reg name="r1" bitsize="32" type="uint32" group="general"/>
<reg name="r2" bitsize="32" type="uint32" group="general"/>
diff --git a/gdb/features/s390-core64.xml b/gdb/features/s390-core64.xml
index 7abe38d..d5998c9 100644
--- a/gdb/features/s390-core64.xml
+++ b/gdb/features/s390-core64.xml
@@ -7,8 +7,8 @@
<!DOCTYPE feature SYSTEM "gdb-target.dtd">
<feature name="org.gnu.gdb.s390.core">
- <reg name="pswm" bitsize="32" type="uint32" group="psw" save-restore="no"/>
- <reg name="pswa" bitsize="32" type="uint32" group="psw" save-restore="no"/>
+ <reg name="pswm" bitsize="32" type="uint32" group="psw"/>
+ <reg name="pswa" bitsize="32" type="uint32" group="psw"/>
<reg name="r0h" bitsize="32" type="uint32" group="upper"/>
<reg name="r0l" bitsize="32" type="uint32" group="lower"/>
<reg name="r1h" bitsize="32" type="uint32" group="upper"/>
diff --git a/gdb/features/s390-linux32.c b/gdb/features/s390-linux32.c
index 0ff3868..0e28c72 100644
--- a/gdb/features/s390-linux32.c
+++ b/gdb/features/s390-linux32.c
@@ -1,6 +1,7 @@
/* THIS FILE IS GENERATED. Original: s390-linux32.xml */
#include "defs.h"
+#include "osabi.h"
#include "target-descriptions.h"
struct target_desc *tdesc_s390_linux32;
@@ -14,8 +15,8 @@ initialize_tdesc_s390_linux32 (void)
set_tdesc_architecture (result, bfd_scan_arch ("s390:31-bit"));
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.core");
- tdesc_create_reg (feature, "pswm", 0, 0, "psw", 32, "uint32");
- tdesc_create_reg (feature, "pswa", 1, 0, "psw", 32, "uint32");
+ tdesc_create_reg (feature, "pswm", 0, 1, "psw", 32, "uint32");
+ tdesc_create_reg (feature, "pswa", 1, 1, "psw", 32, "uint32");
tdesc_create_reg (feature, "r0", 2, 1, "general", 32, "uint32");
tdesc_create_reg (feature, "r1", 3, 1, "general", 32, "uint32");
tdesc_create_reg (feature, "r2", 4, 1, "general", 32, "uint32");
diff --git a/gdb/features/s390-linux64.c b/gdb/features/s390-linux64.c
index 1e39fc3..e7acfe2 100644
--- a/gdb/features/s390-linux64.c
+++ b/gdb/features/s390-linux64.c
@@ -1,6 +1,7 @@
/* THIS FILE IS GENERATED. Original: s390-linux64.xml */
#include "defs.h"
+#include "osabi.h"
#include "target-descriptions.h"
struct target_desc *tdesc_s390_linux64;
@@ -14,8 +15,8 @@ initialize_tdesc_s390_linux64 (void)
set_tdesc_architecture (result, bfd_scan_arch ("s390:31-bit"));
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.core");
- tdesc_create_reg (feature, "pswm", 0, 0, "psw", 32, "uint32");
- tdesc_create_reg (feature, "pswa", 1, 0, "psw", 32, "uint32");
+ tdesc_create_reg (feature, "pswm", 0, 1, "psw", 32, "uint32");
+ tdesc_create_reg (feature, "pswa", 1, 1, "psw", 32, "uint32");
tdesc_create_reg (feature, "r0h", 2, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r0l", 3, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r1h", 4, 1, "upper", 32, "uint32");
diff --git a/gdb/features/s390x-core64.xml b/gdb/features/s390x-core64.xml
index eca8246..2f01903 100644
--- a/gdb/features/s390x-core64.xml
+++ b/gdb/features/s390x-core64.xml
@@ -7,8 +7,8 @@
<!DOCTYPE feature SYSTEM "gdb-target.dtd">
<feature name="org.gnu.gdb.s390.core">
- <reg name="pswm" bitsize="64" type="uint64" group="psw" save-restore="no"/>
- <reg name="pswa" bitsize="64" type="uint64" group="psw" save-restore="no"/>
+ <reg name="pswm" bitsize="64" type="uint64" group="psw"/>
+ <reg name="pswa" bitsize="64" type="uint64" group="psw"/>
<reg name="r0" bitsize="64" type="uint64" group="general"/>
<reg name="r1" bitsize="64" type="uint64" group="general"/>
<reg name="r2" bitsize="64" type="uint64" group="general"/>
diff --git a/gdb/features/s390x-linux64.c b/gdb/features/s390x-linux64.c
index 91d2da9..06a9339 100644
--- a/gdb/features/s390x-linux64.c
+++ b/gdb/features/s390x-linux64.c
@@ -1,6 +1,7 @@
/* THIS FILE IS GENERATED. Original: s390x-linux64.xml */
#include "defs.h"
+#include "osabi.h"
#include "target-descriptions.h"
struct target_desc *tdesc_s390x_linux64;
@@ -14,8 +15,8 @@ initialize_tdesc_s390x_linux64 (void)
set_tdesc_architecture (result, bfd_scan_arch ("s390:64-bit"));
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.core");
- tdesc_create_reg (feature, "pswm", 0, 0, "psw", 64, "uint64");
- tdesc_create_reg (feature, "pswa", 1, 0, "psw", 64, "uint64");
+ tdesc_create_reg (feature, "pswm", 0, 1, "psw", 64, "uint64");
+ tdesc_create_reg (feature, "pswa", 1, 1, "psw", 64, "uint64");
tdesc_create_reg (feature, "r0", 2, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r1", 3, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r2", 4, 1, "general", 64, "uint64");