This is the mail archive of the gdb-cvs@sourceware.org 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]
Other format: [Raw text]

[binutils-gdb] s390: Remove duplicate checks for cached gdbarch at init


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=0eb97953adcb12aa49e4924d1e28ce6af046d6e2

commit 0eb97953adcb12aa49e4924d1e28ce6af046d6e2
Author: Philipp Rudo <prudo@linux.vnet.ibm.com>
Date:   Tue Jan 23 13:37:41 2018 +0100

    s390: Remove duplicate checks for cached gdbarch at init
    
    When initializing the gdbarch there is a check whether an appropriate
    gdbarch already exists in the gdbarch_list.  Failing of some of the checks
    would lead to a different target description.  However
    gdbarch_list_lookup_by_info already checks for
    
    	if (info->target_desc != arches->gdbarch->target_desc)
    	  continue;
    
    Remove these duplicate checks.
    
    gdb/ChangeLog:
    
    	* s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
    	when looking for cached gdbarch and add comment for remaining.

Diff:
---
 gdb/ChangeLog         | 5 +++++
 gdb/s390-linux-tdep.c | 9 +++------
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b1e9f9f..da76bbe 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
+
+	* s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
+	when looking for cached gdbarch and add comment for remaining.
+
 2018-01-22  Pedro Alves  <palves@redhat.com>
 	    Sergio Durigan Junior  <sergiodj@redhat.com>
 
diff --git a/gdb/s390-linux-tdep.c b/gdb/s390-linux-tdep.c
index b120d24..972b91f 100644
--- a/gdb/s390-linux-tdep.c
+++ b/gdb/s390-linux-tdep.c
@@ -8047,14 +8047,11 @@ s390_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
       tdep = gdbarch_tdep (arches->gdbarch);
       if (!tdep)
 	continue;
-      if (tdep->abi != tdep_abi)
-	continue;
+      /* A program can 'choose' not to use the vector registers when they
+	 are present.  Leading to the same tdesc but different tdep and
+	 thereby a different gdbarch.  */
       if (tdep->vector_abi != vector_abi)
 	continue;
-      if ((tdep->gpr_full_regnum != -1) != have_upper)
-	continue;
-      if (tdep->have_gs != have_gs)
-	continue;
       if (tdesc_data != NULL)
 	tdesc_data_cleanup (tdesc_data);
       return arches->gdbarch;


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