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]
Other format: [Raw text]

[RFA] infcmd.c print vector registers in hex only


Doing this simplification allows to get rid of a function (for now,
more later) in rs6000-tdep.c. Such function is entirely a duplicate of
do_registers_info, except for this patch.

The reason behind this is that vector registers use up a lot of
screen real estate, especially the 128 bit ones (altivec registers).

Elena

2002-08-18  Elena Zannoni  <ezannoni@redhat.com>

	* infcmd.c (do_registers_info): Print vector registers in hex
	format only.

Index: infcmd.c
===================================================================
RCS file: /cvs/uberbaum/gdb/infcmd.c,v
retrieving revision 1.52
diff -u -p -r1.52 infcmd.c
--- infcmd.c	16 Aug 2002 00:27:45 -0000	1.52
+++ infcmd.c	19 Aug 2002 02:51:16 -0000
@@ -1632,14 +1632,18 @@ do_registers_info (int regnum, int print
 	    }
 	  printf_filtered (")");
 	}
-      /* Else print as integer in hex and in decimal.  */
       else
 	{
+	  /* Print the register in hex.  */
 	  val_print (REGISTER_VIRTUAL_TYPE (i), virtual_buffer, 0, 0,
 		     gdb_stdout, 'x', 1, 0, Val_pretty_default);
-	  printf_filtered ("\t");
-	  val_print (REGISTER_VIRTUAL_TYPE (i), virtual_buffer, 0, 0,
-		     gdb_stdout, 0, 1, 0, Val_pretty_default);
+          /* If not a vector register, print it also in decimal.  */
+	  if (TYPE_VECTOR (REGISTER_VIRTUAL_TYPE (i)) == 0)
+	    {
+	      printf_filtered ("\t");
+	      val_print (REGISTER_VIRTUAL_TYPE (i), virtual_buffer, 0, 0,
+			 gdb_stdout, 0, 1, 0, Val_pretty_default);
+	    }
 	}
 
       /* The SPARC wants to print even-numbered float regs as doubles


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