gdb/ChangeLog:

2013-09-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>

	* NEWS: Mention TDB support.
	* features/s390-tdb.xml: New file.
	* features/s390-te-linux64.xml: New file.
	* features/s390x-te-linux64.xml: New file.
	* features/Makefile (WHICH): Add new tdescs above.
	(s390-te-linux64-expedite): Set.
	(s390x-te-linux64-expedite): Set.
	* features/s390-te-linux64.c: New file (generated).
	* features/s390x-te-linux64.c: New file (generated).
	* regformats/s390-te-linux64.dat: New file (generated).
	* regformats/s390x-te-linux64.dat: New file (generated).
	* s390-tdep.h (HWCAP_S390_HIGH_GPRS): Define.
	(HWCAP_S390_TE): Likewise.
	(S390_TDB_DWORD0_REGNUM): Likewise.
	(S390_TDB_DWORD0_REGNUM): Likewise.
	(S390_TDB_ABORT_CODE_REGNUM): Likewise.
	(S390_TDB_CONFLICT_TOKEN_REGNUM): Likewise.
	(S390_TDB_ATIA_REGNUM): Likewise.
	(S390_TDB_R0_REGNUM): Likewise.
	(S390_TDB_R1_REGNUM): Likewise.
	(S390_TDB_R2_REGNUM): Likewise.
	(S390_TDB_R3_REGNUM): Likewise.
	(S390_TDB_R4_REGNUM): Likewise.
	(S390_TDB_R5_REGNUM): Likewise.
	(S390_TDB_R6_REGNUM): Likewise.
	(S390_TDB_R7_REGNUM): Likewise.
	(S390_TDB_R8_REGNUM): Likewise.
	(S390_TDB_R9_REGNUM): Likewise.
	(S390_TDB_R10_REGNUM): Likewise.
	(S390_TDB_R11_REGNUM): Likewise.
	(S390_TDB_R12_REGNUM): Likewise.
	(S390_TDB_R13_REGNUM): Likewise.
	(S390_TDB_R14_REGNUM): Likewise.
	(S390_TDB_R15_REGNUM): Likewise.
	(S390_NUM_REGS): Increase.
	(S390_IS_TDBREGSET_REGNUM): New macro.
	(s390_regmap_tdb): Declare.
	(s390_sizeof_tdbregset): Define.
	(tdesc_s390_te_linux64): Declare.
	(tdesc_s390x_te_linux64): Likewise.
	* s390-tdep.c: Add includes for "auxv.h", <elf.h>,
	"features/s390-te-linux64.c", and "features/s390x-te-linux64.c".
	(s390_regmap_tdb): New regmap.
	(s390_supply_tdb_regset): New function.
	(s390_tdb_regset): New regset.
	(s390_linux64v2_regset_sections): Add TDB regset to list.
	(s390x_linux64v2_regset_sections): Likewise.
	(s390_regset_from_core_section): Recognize TDB core note section.
	(s390_core_read_description): If HWCAP indicates TE support,
	select tdesc_s390_te_linux64 or tdesc_s390_s390x_te_linux64.
	(s390_gdbarch_init): Handle TDB regset.
	(_initialize_s390_tdep): Initialize new tdescs.
	* s390-nat.c (HWCAP_S390_HIGH_GPRS): Remove define.
	(have_regset_tdb): New variable.
	(s390_native_supply): Support register invalidation.
	(fetch_regset): Invalidate registers if ptrace yields ENODATA.
	(check_regset): Treat ENODATA as "regset exists".
	(s390_linux_fetch_inferior_registers): Add TDB.
	(s390_read_description): Check for TDB existence and select
	appropriate tdesc.
	* gdbserver/Makefile.in (clean): Add removal of new makefile
	targets.
	(s390-te-linux64.c): New makefile target.
	(s390x-te-linux64.c): Likewise.
	* gdbserver/configure.srv (srv_regobj): Append new objects
	s390-te-linux64.o and s390x-te-linux64.o.
	(srv_xmlfiles): Append new files s390-te-linux64.xml,
	s390x-te-linux64.xml, and s390-tdb.xml.
	* gdbserver/linux-s390-low.c (init_registers_s390_te_linux64): New
	declaration.
	(tdesc_s390_te_linux64): Likewise.
	(init_registers_s390x_te_linux64): Likewise.
	(tdesc_s390x_te_linux64): Likewise.
	(s390_check_regset): Treat ENODATA as "regset exists".
	(s390_arch_setup): Add TDB regset support.
	(initialize_low_arch): Initialize registers for new tdescs.

gdb/doc/ChangeLog:
2013-09-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>

	* gdb.texinfo (Decimal Floating Point format): Mention S/390.
	(Standard Target Features): Add new node to menu.
	(S/390 and System z Features): New node.

gdb/testsuite/ChangeLog:
2013-09-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>

	* gdb.arch/s390-tdbregs.c: New file.
	* gdb.arch/s390-tdbregs.exp: New file.
This commit is contained in:
Ulrich Weigand
2013-09-13 14:17:31 +00:00
parent 2ccd146855
commit 4ac33720d6
21 changed files with 921 additions and 23 deletions

View File

@@ -50,6 +50,7 @@ WHICH = aarch64 \
s390-linux32 s390-linux64 s390x-linux64 \
s390-linux32v1 s390-linux64v1 s390x-linux64v1 \
s390-linux32v2 s390-linux64v2 s390x-linux64v2 \
s390-te-linux64 s390x-te-linux64 \
tic6x-c64xp tic6x-c64x tic6x-c62x \
tic6x-c64xp-linux tic6x-c64x-linux tic6x-c62x-linux
@@ -84,9 +85,11 @@ s390-linux32v2-expedite = r14,r15,pswa
s390-linux64-expedite = r14l,r15l,pswa
s390-linux64v1-expedite = r14l,r15l,pswa
s390-linux64v2-expedite = r14l,r15l,pswa
s390-te-linux64-expedite = r14,r15,pswa
s390x-linux64-expedite = r14,r15,pswa
s390x-linux64v1-expedite = r14,r15,pswa
s390x-linux64v2-expedite = r14,r15,pswa
s390x-te-linux64-expedite = r14,r15,pswa
tic6x-c64xp-expedite = A15,PC
tic6x-c64x-expedite = A15,PC
tic6x-c62x-expedite = A15,PC

30
gdb/features/s390-tdb.xml Normal file
View File

@@ -0,0 +1,30 @@
<?xml version="1.0"?>
<!-- Copyright (C) 2010-2013 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. -->
<!DOCTYPE feature SYSTEM "gdb-target.dtd">
<feature name="org.gnu.gdb.s390.tdb">
<reg name="tdb0" bitsize="64" type="uint64" group="tdb"/>
<reg name="tac" bitsize="64" type="uint64" group="tdb"/>
<reg name="tct" bitsize="64" type="uint64" group="tdb"/>
<reg name="atia" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr0" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr1" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr2" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr3" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr4" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr5" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr6" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr7" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr8" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr9" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr10" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr11" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr12" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr13" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr14" bitsize="64" type="uint64" group="tdb"/>
<reg name="tr15" bitsize="64" type="uint64" group="tdb"/>
</feature>

View File

@@ -0,0 +1,118 @@
/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
Original: s390-te-linux64.xml */
#include "defs.h"
#include "osabi.h"
#include "target-descriptions.h"
struct target_desc *tdesc_s390_te_linux64;
static void
initialize_tdesc_s390_te_linux64 (void)
{
struct target_desc *result = allocate_target_description ();
struct tdesc_feature *feature;
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, 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");
tdesc_create_reg (feature, "r1l", 5, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r2h", 6, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r2l", 7, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r3h", 8, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r3l", 9, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r4h", 10, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r4l", 11, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r5h", 12, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r5l", 13, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r6h", 14, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r6l", 15, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r7h", 16, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r7l", 17, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r8h", 18, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r8l", 19, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r9h", 20, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r9l", 21, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r10h", 22, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r10l", 23, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r11h", 24, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r11l", 25, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r12h", 26, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r12l", 27, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r13h", 28, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r13l", 29, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r14h", 30, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r14l", 31, 1, "lower", 32, "uint32");
tdesc_create_reg (feature, "r15h", 32, 1, "upper", 32, "uint32");
tdesc_create_reg (feature, "r15l", 33, 1, "lower", 32, "uint32");
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.acr");
tdesc_create_reg (feature, "acr0", 34, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr1", 35, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr2", 36, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr3", 37, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr4", 38, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr5", 39, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr6", 40, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr7", 41, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr8", 42, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr9", 43, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr10", 44, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr11", 45, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr12", 46, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr13", 47, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr14", 48, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr15", 49, 1, "access", 32, "uint32");
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.fpr");
tdesc_create_reg (feature, "fpc", 50, 1, "float", 32, "uint32");
tdesc_create_reg (feature, "f0", 51, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f1", 52, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f2", 53, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f3", 54, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f4", 55, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f5", 56, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f6", 57, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f7", 58, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f8", 59, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f9", 60, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f10", 61, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f11", 62, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f12", 63, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f13", 64, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f14", 65, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f15", 66, 1, "float", 64, "ieee_double");
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.linux");
tdesc_create_reg (feature, "orig_r2", 67, 1, "system", 32, "uint32");
tdesc_create_reg (feature, "last_break", 68, 0, "system", 32, "code_ptr");
tdesc_create_reg (feature, "system_call", 69, 1, "system", 32, "uint32");
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.tdb");
tdesc_create_reg (feature, "tdb0", 70, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tac", 71, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tct", 72, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "atia", 73, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr0", 74, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr1", 75, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr2", 76, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr3", 77, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr4", 78, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr5", 79, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr6", 80, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr7", 81, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr8", 82, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr9", 83, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr10", 84, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr11", 85, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr12", 86, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr13", 87, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr14", 88, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr15", 89, 1, "tdb", 64, "uint64");
tdesc_s390_te_linux64 = result;
}

View File

@@ -0,0 +1,25 @@
<?xml version="1.0"?>
<!-- Copyright (C) 2010-2013 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. -->
<!-- S/390 31-bit user-level code on a machine operating
in z/Architecture mode. -->
<!DOCTYPE target SYSTEM "gdb-target.dtd">
<target>
<architecture>s390:31-bit</architecture>
<xi:include href="s390-core64.xml"/>
<xi:include href="s390-acr.xml"/>
<xi:include href="s390-fpr.xml"/>
<feature name="org.gnu.gdb.s390.linux">
<reg name="orig_r2" bitsize="32" type="uint32" group="system"/>
<reg name="last_break" bitsize="32" type="code_ptr" group="system" save-restore="no"/>
<reg name="system_call" bitsize="32" type="uint32" group="system"/>
</feature>
<xi:include href="s390-tdb.xml"/>
</target>

View File

@@ -0,0 +1,102 @@
/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
Original: s390x-te-linux64.xml */
#include "defs.h"
#include "osabi.h"
#include "target-descriptions.h"
struct target_desc *tdesc_s390x_te_linux64;
static void
initialize_tdesc_s390x_te_linux64 (void)
{
struct target_desc *result = allocate_target_description ();
struct tdesc_feature *feature;
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, 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");
tdesc_create_reg (feature, "r3", 5, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r4", 6, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r5", 7, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r6", 8, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r7", 9, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r8", 10, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r9", 11, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r10", 12, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r11", 13, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r12", 14, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r13", 15, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r14", 16, 1, "general", 64, "uint64");
tdesc_create_reg (feature, "r15", 17, 1, "general", 64, "uint64");
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.acr");
tdesc_create_reg (feature, "acr0", 18, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr1", 19, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr2", 20, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr3", 21, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr4", 22, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr5", 23, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr6", 24, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr7", 25, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr8", 26, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr9", 27, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr10", 28, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr11", 29, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr12", 30, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr13", 31, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr14", 32, 1, "access", 32, "uint32");
tdesc_create_reg (feature, "acr15", 33, 1, "access", 32, "uint32");
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.fpr");
tdesc_create_reg (feature, "fpc", 34, 1, "float", 32, "uint32");
tdesc_create_reg (feature, "f0", 35, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f1", 36, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f2", 37, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f3", 38, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f4", 39, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f5", 40, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f6", 41, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f7", 42, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f8", 43, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f9", 44, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f10", 45, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f11", 46, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f12", 47, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f13", 48, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f14", 49, 1, "float", 64, "ieee_double");
tdesc_create_reg (feature, "f15", 50, 1, "float", 64, "ieee_double");
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.linux");
tdesc_create_reg (feature, "orig_r2", 51, 1, "system", 64, "uint64");
tdesc_create_reg (feature, "last_break", 52, 0, "system", 64, "code_ptr");
tdesc_create_reg (feature, "system_call", 53, 1, "system", 32, "uint32");
feature = tdesc_create_feature (result, "org.gnu.gdb.s390.tdb");
tdesc_create_reg (feature, "tdb0", 54, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tac", 55, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tct", 56, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "atia", 57, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr0", 58, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr1", 59, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr2", 60, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr3", 61, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr4", 62, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr5", 63, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr6", 64, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr7", 65, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr8", 66, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr9", 67, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr10", 68, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr11", 69, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr12", 70, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr13", 71, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr14", 72, 1, "tdb", 64, "uint64");
tdesc_create_reg (feature, "tr15", 73, 1, "tdb", 64, "uint64");
tdesc_s390x_te_linux64 = result;
}

View File

@@ -0,0 +1,24 @@
<?xml version="1.0"?>
<!-- Copyright (C) 2010-2013 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. -->
<!-- S/390 64-bit user-level code. -->
<!DOCTYPE target SYSTEM "gdb-target.dtd">
<target>
<architecture>s390:64-bit</architecture>
<xi:include href="s390x-core64.xml"/>
<xi:include href="s390-acr.xml"/>
<xi:include href="s390-fpr.xml"/>
<feature name="org.gnu.gdb.s390.linux">
<reg name="orig_r2" bitsize="64" type="uint64" group="system"/>
<reg name="last_break" bitsize="64" type="code_ptr" group="system" save-restore="no"/>
<reg name="system_call" bitsize="32" type="uint32" group="system"/>
</feature>
<xi:include href="s390-tdb.xml"/>
</target>