[binutils-gdb] Change gdbarch_inner_than to return bool

Tom Tromey tromey@sourceware.org
Fri May 10 19:22:39 GMT 2024


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e14f6ec969d788b73ac61f61e8c623536cda1cad

commit e14f6ec969d788b73ac61f61e8c623536cda1cad
Author: Tom Tromey <tromey@adacore.com>
Date:   Fri May 10 11:54:15 2024 -0600

    Change gdbarch_inner_than to return bool
    
    A recent patch from Andrew pointed out that gdbarch_inner_than returns
    'int', while it should really return 'bool'.
    
    Approved-By: Pedro Alves <pedro@palves.net>

Diff:
---
 gdb/arch-utils.c          | 8 ++++----
 gdb/arch-utils.h          | 4 ++--
 gdb/gdbarch-gen.h         | 4 ++--
 gdb/gdbarch-selftests.c   | 4 ++--
 gdb/gdbarch.c             | 2 +-
 gdb/gdbarch.h             | 2 +-
 gdb/gdbarch_components.py | 2 +-
 7 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/gdb/arch-utils.c b/gdb/arch-utils.c
index 78145656b8d..83e29470bf7 100644
--- a/gdb/arch-utils.c
+++ b/gdb/arch-utils.c
@@ -173,16 +173,16 @@ default_code_of_frame_writable (struct gdbarch *gdbarch,
 
 /* Helper functions for gdbarch_inner_than */
 
-int
+bool
 core_addr_lessthan (CORE_ADDR lhs, CORE_ADDR rhs)
 {
-  return (lhs < rhs);
+  return lhs < rhs;
 }
 
-int
+bool
 core_addr_greaterthan (CORE_ADDR lhs, CORE_ADDR rhs)
 {
-  return (lhs > rhs);
+  return lhs > rhs;
 }
 
 /* Misc helper functions for targets.  */
diff --git a/gdb/arch-utils.h b/gdb/arch-utils.h
index 467be40c688..40c62f30a65 100644
--- a/gdb/arch-utils.h
+++ b/gdb/arch-utils.h
@@ -83,8 +83,8 @@ extern bool default_displaced_step_hw_singlestep (struct gdbarch *);
 extern CORE_ADDR displaced_step_at_entry_point (struct gdbarch *gdbarch);
 
 /* The only possible cases for inner_than.  */
-extern int core_addr_lessthan (CORE_ADDR lhs, CORE_ADDR rhs);
-extern int core_addr_greaterthan (CORE_ADDR lhs, CORE_ADDR rhs);
+extern bool core_addr_lessthan (CORE_ADDR lhs, CORE_ADDR rhs);
+extern bool core_addr_greaterthan (CORE_ADDR lhs, CORE_ADDR rhs);
 
 /* Identity functions on a CORE_ADDR.  Just return the "addr".  */
 
diff --git a/gdb/gdbarch-gen.h b/gdb/gdbarch-gen.h
index 63fab26987f..b982fd7cd09 100644
--- a/gdb/gdbarch-gen.h
+++ b/gdb/gdbarch-gen.h
@@ -547,8 +547,8 @@ typedef CORE_ADDR (gdbarch_skip_entrypoint_ftype) (struct gdbarch *gdbarch, CORE
 extern CORE_ADDR gdbarch_skip_entrypoint (struct gdbarch *gdbarch, CORE_ADDR ip);
 extern void set_gdbarch_skip_entrypoint (struct gdbarch *gdbarch, gdbarch_skip_entrypoint_ftype *skip_entrypoint);
 
-typedef int (gdbarch_inner_than_ftype) (CORE_ADDR lhs, CORE_ADDR rhs);
-extern int gdbarch_inner_than (struct gdbarch *gdbarch, CORE_ADDR lhs, CORE_ADDR rhs);
+typedef bool (gdbarch_inner_than_ftype) (CORE_ADDR lhs, CORE_ADDR rhs);
+extern bool gdbarch_inner_than (struct gdbarch *gdbarch, CORE_ADDR lhs, CORE_ADDR rhs);
 extern void set_gdbarch_inner_than (struct gdbarch *gdbarch, gdbarch_inner_than_ftype *inner_than);
 
 typedef const gdb_byte * (gdbarch_breakpoint_from_pc_ftype) (struct gdbarch *gdbarch, CORE_ADDR *pcptr, int *lenptr);
diff --git a/gdb/gdbarch-selftests.c b/gdb/gdbarch-selftests.c
index db99fe08141..dbb93412eea 100644
--- a/gdb/gdbarch-selftests.c
+++ b/gdb/gdbarch-selftests.c
@@ -173,8 +173,8 @@ check_stack_growth (struct gdbarch *gdbarch)
      implementation by calling gdbarch_inner_than.  GDB assumes that stacks
      either grow down or up (see uses of gdbarch_stack_grows_down), so exactly
      one of these needs to be true.  */
-  bool stack_grows_down = gdbarch_inner_than (gdbarch, 1, 2) != 0;
-  bool stack_grows_up = gdbarch_inner_than (gdbarch, 2, 1) != 0;
+  bool stack_grows_down = gdbarch_inner_than (gdbarch, 1, 2);
+  bool stack_grows_up = gdbarch_inner_than (gdbarch, 2, 1);
 
   SELF_CHECK (stack_grows_up != stack_grows_down);
 }
diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c
index 2d92f604c49..58e9ebbdc59 100644
--- a/gdb/gdbarch.c
+++ b/gdb/gdbarch.c
@@ -2788,7 +2788,7 @@ set_gdbarch_skip_entrypoint (struct gdbarch *gdbarch,
   gdbarch->skip_entrypoint = skip_entrypoint;
 }
 
-int
+bool
 gdbarch_inner_than (struct gdbarch *gdbarch, CORE_ADDR lhs, CORE_ADDR rhs)
 {
   gdb_assert (gdbarch != NULL);
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h
index d4c6795a12b..5175ef79e5b 100644
--- a/gdb/gdbarch.h
+++ b/gdb/gdbarch.h
@@ -375,7 +375,7 @@ gdbarch_num_cooked_regs (gdbarch *arch)
 static inline bool
 gdbarch_stack_grows_down (gdbarch *arch)
 {
-  return gdbarch_inner_than (arch, 1, 2) != 0;
+  return gdbarch_inner_than (arch, 1, 2);
 }
 
 #endif
diff --git a/gdb/gdbarch_components.py b/gdb/gdbarch_components.py
index 24e979431b6..4006380076d 100644
--- a/gdb/gdbarch_components.py
+++ b/gdb/gdbarch_components.py
@@ -1020,7 +1020,7 @@ is not used.
 )
 
 Function(
-    type="int",
+    type="bool",
     name="inner_than",
     params=[("CORE_ADDR", "lhs"), ("CORE_ADDR", "rhs")],
 )


More information about the Gdb-cvs mailing list