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


Andrew Cagney <ac131313@cygnus.com> writes:

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

Yes, it is.

AFAIR: It has 32 bits but the most significant bit is used to signal
that the hardware is using the "new" mode which has 31 bit instead of
the "old" mode with 24 (???) bits.  For Linux/S390 only the 31 bit
mode is used.

Andreas

> 
> 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
>  
>  

-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.inka.de
    http://www.suse.de/~aj


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