This is the mail archive of the gdb-patches@sourceware.org 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 2/2] Remove BITS_IN_BYTES define


While working on the previous patch, I noticed that BITS_IN_BYTES can be
replaced by HOST_CHAR_BIT, which is used more widely in gdb.

2017-07-13  Tom Tromey  <tom@tromey.com>

	* valprint.c (print_octal_chars): Use HOST_CHAR_BIT.
	(print_binary_chars): Likewise.
	(BITS_IN_BYTES): Remove.
---
 gdb/ChangeLog  | 6 ++++++
 gdb/printcmd.c | 4 ++--
 gdb/valprint.c | 9 +++------
 3 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 5ac5bab..bc68b67 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,11 @@
 2017-07-13  Tom Tromey  <tom@tromey.com>
 
+	* valprint.c (print_octal_chars): Use HOST_CHAR_BIT.
+	(print_binary_chars): Likewise.
+	(BITS_IN_BYTES): Remove.
+
+2017-07-13  Tom Tromey  <tom@tromey.com>
+
 	PR gdb/21675
 	* valprint.c (LOW_ZERO): Change value to 034.
 	(print_octal_chars): Add static_asserts for octal constants.
diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index cd615ec..179c22c 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -432,8 +432,8 @@ print_scalar_formatted (const gdb_byte *valaddr, struct type *type,
     case 'd':
     case 'u':
       {
-	bool is_signed = options->format != 'u' || !TYPE_UNSIGNED (type);
-	print_decimal_chars (stream, valaddr, len, is_signed, byte_order);
+	bool is_unsigned = options->format == 'u' || TYPE_UNSIGNED (type);
+	print_decimal_chars (stream, valaddr, len, !is_unsigned, byte_order);
       }
       break;
     case 0:
diff --git a/gdb/valprint.c b/gdb/valprint.c
index 9e216cf..eef99b1 100644
--- a/gdb/valprint.c
+++ b/gdb/valprint.c
@@ -1490,9 +1490,6 @@ void
 print_binary_chars (struct ui_file *stream, const gdb_byte *valaddr,
 		    unsigned len, enum bfd_endian byte_order, bool zero_pad)
 {
-
-#define BITS_IN_BYTES 8
-
   const gdb_byte *p;
   unsigned int i;
   int b;
@@ -1512,7 +1509,7 @@ print_binary_chars (struct ui_file *stream, const gdb_byte *valaddr,
 	  /* Every byte has 8 binary characters; peel off
 	     and print from the MSB end.  */
 
-	  for (i = 0; i < (BITS_IN_BYTES * sizeof (*p)); i++)
+	  for (i = 0; i < (HOST_CHAR_BIT * sizeof (*p)); i++)
 	    {
 	      if (*p & (mask >> i))
 		b = '1';
@@ -1532,7 +1529,7 @@ print_binary_chars (struct ui_file *stream, const gdb_byte *valaddr,
 	   p >= valaddr;
 	   p--)
 	{
-	  for (i = 0; i < (BITS_IN_BYTES * sizeof (*p)); i++)
+	  for (i = 0; i < (HOST_CHAR_BIT * sizeof (*p)); i++)
 	    {
 	      if (*p & (mask >> i))
 		b = '1';
@@ -1612,7 +1609,7 @@ print_octal_chars (struct ui_file *stream, const gdb_byte *valaddr,
   /* For 32 we start in cycle 2, with two bits and one bit carry;
      for 64 in cycle in cycle 1, with one bit and a two bit carry.  */
 
-  cycle = (len * BITS_IN_BYTES) % BITS_IN_OCTAL;
+  cycle = (len * HOST_CHAR_BIT) % BITS_IN_OCTAL;
   carry = 0;
 
   fputs_filtered ("0", stream);
-- 
2.9.4


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