This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: New gdb 31 & 64 bit patches for S/390





Hi Andrew,
It is a 31 bit architecture owing to an addressing mode limitation ( it
never was known as a 32 bit arch though all the registers are 32 bit ).
The 370 was 24 bit & a beautiful design decision was made to signify a 31
bit address to use the hi bit of a 32 bit address.
After recognising their mistake the zSeries is 64 bit clean.




D.J. Barrow Gnu/Linux for S/390 kernel developer
eMail: djbarrow@de.ibm.com,barrow_dj@yahoo.com
Phone: +49-(0)7031-16-2583
IBM Germany Lab, Schönaicherstr. 220, 71032 Böblingen


Andrew Cagney <ac131313@cygnus.com> on 15.06.2001 18:52:52

Please respond to Andrew Cagney <ac131313@cygnus.com>

To:   Denis Joseph Barrow/Germany/Contr/IBM@IBMDE
cc:   gdb-patches@sourceware.cygnus.com, s390-patches@gnu.org, Martin
      Schwidefsky/Germany/IBM@IBMDE, Christoph Arenz/Germany/IBM@IBMDE
Subject:  Re: New gdb 31 & 64 bit patches for S/390




Hello,

I intend checking in the attatched (diff) patch.  Before doing it
though, is the s390 really a 31 bit architecture?

For reference I've also included the original diff and ChangeLog.

     Andrew


2001-06-15  Andrew Cagney  <ac131313@redhat.com>

     From 2001-02-26  D.J. Barrow <djbarrow@de.ibm.com>:
     * configure.tgt: Add S/390 31 & 64 bit target configuration.
     * configure.host: Ditto for host.

Index: configure.host
===================================================================
RCS file: /cvs/src/src/gdb/configure.host,v
retrieving revision 1.21
diff -p -r1.21 configure.host
*** configure.host  2001/06/07 15:57:57  1.21
--- configure.host  2001/06/15 16:46:05
*************** m68*)              gdb_host_cpu=m68k ;;
*** 18,23 ****
--- 18,24 ----
  m88*)             gdb_host_cpu=m88k ;;
  powerpc*)         gdb_host_cpu=powerpc ;;
  sparc64)          gdb_host_cpu=sparc ;;
+ s390*)            gdb_host_cpu=s390 ;;
  *)           gdb_host_cpu=$host_cpu ;;

  esac
*************** powerpc-*-netbsd*) gdb_host=nbsd ;;
*** 138,143 ****
--- 139,146 ----
  rs6000-*-lynxos*) gdb_host=rs6000lynx ;;
  rs6000-*-aix4*)        gdb_host=aix4 ;;
  rs6000-*-*)       gdb_host=rs6000 ;;
+
+ s390*-*-*)        gdb_host=s390 ;;

  sparc-*-linux*)        gdb_host=linux ;;
  sparc-*-lynxos*)  gdb_host=sparclynx ;;
Index: configure.tgt
===================================================================
RCS file: /cvs/src/src/gdb/configure.tgt,v
retrieving revision 1.29
diff -p -r1.29 configure.tgt
*** configure.tgt   2001/06/07 15:57:57  1.29
--- configure.tgt   2001/06/15 16:46:05
*************** mips*)             gdb_target_cpu=mips ;;
*** 23,28 ****
--- 23,29 ----
  powerpc*)         gdb_target_cpu=powerpc ;;
  sparc*)           gdb_target_cpu=sparc ;;
  thumb*)           gdb_target_cpu=arm ;;
+ s390*)            gdb_target_cpu=s390 ;;
  strongarm*)       gdb_target_cpu=arm ;;
  xscale*)          gdb_target_cpu=arm ;;
  v850*)            gdb_target_cpu=v850 ;;
*************** rs6000-*-lynxos*)  gdb_target=rs6000lynx
*** 255,260 ****
--- 256,264 ----
          configdirs="${configdirs} gdbserver" ;;
  rs6000-*-aix4*)        gdb_target=aix4 ;;
  rs6000-*-*)       gdb_target=rs6000 ;;
+
+ s390-*-*)         gdb_target=s390 ;;
+ s390x-*-*)        gdb_target=s390x ;;

  sh*-*-pe)         gdb_target=wince ;;
  sh-*-hms)         gdb_target=embed ;;


2001-02-26  D.J. Barrow <djbarrow@de.ibm.com,barrow_dj@yahoo.com>
     * s390-nat.c New file Added for S/390 31 & 64 bit target.
     * s390-tdep.c Likewise.
     * config/s390/nm-linux.h Likewise.
     * config/s390/s390x.mt Likewise.
     * config/s390/tm-linux.h  Likewise.
     * config/s390/xm-linux.h Likewise
     * config/s390/s390.mh Likewise.
     * config/s390/s390.mt Likewise.
     * config/s390/tm-s390.h Likewise.
        * config.in Added definitions for S/390 31 & 64 bit target.
     * configure.host Likewise.
     * configure.in Likewise.
     * configure.tgt  Likewise.

        * gdbarch.sh Added 2 definitions to the input table
     allow_null_function, this definition is set to an
     non empty string if it is okay for the gdbarch function
     to be null.
     null_function_default_retval, this definiton is the
     default return value for a undefined function
     (i.e. allow_null_function is defined ).
     Added new macros required for S/390
     INIT_FRAME_PC_FIRST
     CANNOT_STORE_REGISTER
     CANNOT_FETCH_REGISTER
     ADDR_BITS_REMOVE
     EXTRACT_STRUCT_VALUE_ADDRESS_P

     Improved the behaviour of the following macros.
     PUSH_RETURN_ADDRESS
     added allow null function so default behaviour would be correct.
     EXTRACT_STRUCT_VALUE_ADDRESS
     added check for EXTRACT_STRUCT_VALUE_ADDRESS_P
     CALL_DUMMY_BREAKPOINT_OFFSET

     * core-aout.c added check for CANNOT_FETCH_REGISTER
     in fetch_core_registers.
     * arch-utils.c added check for BFD_ENDIAN_UNKNOWN
     in set_endian_from_file.











--- src.orig/config.sub  Sat Feb 10 01:55:46 2001
+++ src.new/config.sub   Mon Feb 26 17:57:37 2001
@@ -740,6 +740,12 @@
     rtpc | rtpc-*)
          basic_machine=romp-ibm
          ;;
+    s390 | s390-* )
+         basic_machine=s390-ibm
+         ;;
+    s390x | s390x-* )
+         basic_machine=s390x-ibm
+         ;;
     sa29200)
          basic_machine=a29k-amd
          os=-udi
--- src.orig/gdb/configure.host    Thu Feb  8 07:30:23 2001
+++ src.new/gdb/configure.host     Mon Feb 26 17:57:37 2001
@@ -18,6 +18,7 @@
 m88*)              gdb_host_cpu=m88k ;;
 powerpc*)          gdb_host_cpu=powerpc ;;
 sparc64)      gdb_host_cpu=sparc ;;
+s390*)                  gdb_host_cpu=s390 ;;
 *)            gdb_host_cpu=$host_cpu ;;

 esac
@@ -158,5 +159,10 @@
 vax-*-bsd*)        gdb_host=vaxbsd ;;
 vax-*-ultrix2*)         gdb_host=vaxult2 ;;
 vax-*-ultrix*)          gdb_host=vaxult ;;
-
+s390*-*-*)               gdb_host=s390 ;;
 esac
+
+
+
+
+
--- src.orig/gdb/configure.tgt     Thu Feb  8 07:30:23 2001
+++ src.new/gdb/configure.tgt Mon Feb 26 17:57:37 2001
@@ -26,6 +26,7 @@
 strongarm*)        gdb_target_cpu=arm ;;
 xscale*)      gdb_target_cpu=arm ;;
 v850*)             gdb_target_cpu=v850 ;;
+s390*)                  gdb_target_cpu=s390 ;;
 *)            gdb_target_cpu=$target_cpu ;;

 esac
@@ -305,6 +306,8 @@

 z8k-*-coff*)       gdb_target=z8k ;;

+s390-*-*)               gdb_target=s390 ;;
+s390x-*-*)              gdb_target=s390x ;;
 esac





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]