S390: Name "invisible" registers with the empty string instead of NULL

Message ID 87385mxdos.fsf@br87z6lw.de.ibm.com
State New, archived
Headers

Commit Message

Andreas Arnez March 3, 2015, 4:12 p.m. UTC
  When adding vector register support to GDB, s390_register_name() was
added to suppress the right halves of the first 16 vector registers.
However, that function returned NULL instead of an empty string in such
a case.  This leads to an incomplete list of registers returned by
"complete info registers ", because completion stops at the first NULL
return value from user_reg_map_regnum_to_name().

gdb/ChangeLog:

	* s390-linux-tdep.c (s390_register_name): Return empty string
	instead of NULL for registers that shouldn't be visible.
---
 gdb/s390-linux-tdep.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
  

Patch

diff --git a/gdb/s390-linux-tdep.c b/gdb/s390-linux-tdep.c
index 2dfd8e4..e60951f 100644
--- a/gdb/s390-linux-tdep.c
+++ b/gdb/s390-linux-tdep.c
@@ -269,15 +269,15 @@  regnum_is_vxr_full (struct gdbarch_tdep *tdep, int regnum)
 	  && regnum <= tdep->v0_full_regnum + 15);
 }
 
-/* Return the name of register REGNO.  Return NULL for registers that
-   shouldn't be visible.  */
+/* Return the name of register REGNO.  Return the empty string for
+   registers that shouldn't be visible.  */
 
 static const char *
 s390_register_name (struct gdbarch *gdbarch, int regnum)
 {
   if (regnum >= S390_V0_LOWER_REGNUM
       && regnum <= S390_V15_LOWER_REGNUM)
-    return NULL;
+    return "";
   return tdesc_register_name (gdbarch, regnum);
 }