Blame SOURCES/gdb-rhbz1187581-power8-regs-not-in-8.2-13of15.patch

7cb06c
From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
7cb06c
From: Keith Seitz <keiths@redhat.com>
7cb06c
Date: Fri, 11 Jan 2019 17:02:18 -0500
7cb06c
Subject: gdb-rhbz1187581-power8-regs-not-in-8.2-13of15.patch
7cb06c
7cb06c
;; [PowerPC] Reject tdescs with VSX and no FPU or Altivec
7cb06c
;; Pedro Franco de Carvalho, RH BZ 1187581
7cb06c
7cb06c
[PowerPC] Reject tdescs with VSX and no FPU or Altivec
7cb06c
7cb06c
Currently rs6000_gdbarch_init will accept a tdesc with the
7cb06c
"org.gnu.gdb.power.vsx" feature but without the
7cb06c
"org.gnu.gdb.power.altivec" or "org.gnu.gdb.power.fpu".
7cb06c
7cb06c
It isn't clear from the standard features documentation that these are
7cb06c
requirements.  However, these tdescs would cause trouble in the VSX
7cb06c
pseudo-register functions, so this patch will cause them to be
7cb06c
rejected.
7cb06c
7cb06c
gdb/ChangeLog:
7cb06c
2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
7cb06c
7cb06c
    * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
7cb06c
    without altivec or fpu.
7cb06c
7cb06c
diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c
7cb06c
--- a/gdb/rs6000-tdep.c
7cb06c
+++ b/gdb/rs6000-tdep.c
7cb06c
@@ -6096,7 +6096,8 @@ rs6000_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
7cb06c
 	    valid_p &= tdesc_numbered_register (feature, tdesc_data,
7cb06c
 						PPC_VSR0_UPPER_REGNUM + i,
7cb06c
 						vsx_regs[i]);
7cb06c
-	  if (!valid_p)
7cb06c
+
7cb06c
+	  if (!valid_p || !have_fpu || !have_altivec)
7cb06c
 	    {
7cb06c
 	      tdesc_data_cleanup (tdesc_data);
7cb06c
 	      return NULL;