From: Philipp Rudo Date: Tue, 23 Jan 2018 12:37:41 +0000 (+0100) Subject: s390: Remove duplicate checks for cached gdbarch at init X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0eb97953adcb12aa49e4924d1e28ce6af046d6e2;p=binutils-gdb.git 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 --git a/gdb/ChangeLog b/gdb/ChangeLog index b1e9f9f2897..da76bbe0a4c 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2018-01-23 Philipp Rudo + + * 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 Sergio Durigan Junior diff --git a/gdb/s390-linux-tdep.c b/gdb/s390-linux-tdep.c index b120d24daa1..972b91fa249 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;