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]

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


Elena Zannoni writes:
> > 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
>
To clarify:
With this patch each register is printed like this:
(gdb) info reg vr0
vr0 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}

while w/o the patch:
(gdb) info reg vr0
vr0 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}} {
uint128 = 0x00000000000000000000000000000000, v4_float = {0, 0, 0, 0}, v4_int32 = {0, 0, 0, 0}, v8_int16 = {0, 0, 0, 0, 0, 0, 0, 0}, v16_int8 = '\0' <repeats 15 times>}
Er, yes.  The old style just looks silly :-)


 > +	  /* 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 (old) comment should probably, also, be fixed. That isn't printing the value in decimal.

enjoy,
Andrew



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