aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2022-02-06 22:38:14 -0500
committerSimon Marchi <simon.marchi@polymtl.ca>2022-04-27 22:05:03 -0400
commit086d03c91ec1487ed3cc96554d29b2120dd37b5b (patch)
treecad44a8efcc46d8e9803756b21b9ba7f2dd72242
parent59197b8a96d69b49044d722b4bf097a9cc46a912 (diff)
downloadfsf-binutils-gdb-086d03c91ec1487ed3cc96554d29b2120dd37b5b.zip
fsf-binutils-gdb-086d03c91ec1487ed3cc96554d29b2120dd37b5b.tar.gz
fsf-binutils-gdb-086d03c91ec1487ed3cc96554d29b2120dd37b5b.tar.bz2
gdb: remove BLOCK_CONTIGUOUS_P macro
Replace with an equivalent method. Change-Id: I60fd3be7b4c2601c2a74328f635fa48ed80eb7f5
-rw-r--r--gdb/block.h11
-rw-r--r--gdb/blockframe.c4
-rw-r--r--gdb/cli/cli-cmds.c2
3 files changed, 8 insertions, 9 deletions
diff --git a/gdb/block.h b/gdb/block.h
index eb77f74..80b0616 100644
--- a/gdb/block.h
+++ b/gdb/block.h
@@ -167,6 +167,10 @@ struct block
void set_ranges (blockranges *ranges)
{ m_ranges = ranges; }
+ /* Return true if all addresses within this block are contiguous. */
+ bool is_contiguous () const
+ { return this->ranges ().size () <= 1; }
+
/* Addresses in the executable code that are in this block. */
CORE_ADDR m_start;
@@ -215,11 +219,6 @@ struct global_block
struct compunit_symtab *compunit_symtab;
};
-/* Are all addresses within a block contiguous? */
-
-#define BLOCK_CONTIGUOUS_P(bl) ((bl)->ranges ().size () == 0 \
- || (bl)->ranges ().size () == 1)
-
/* Define the "entry pc" for a block BL to be the lowest (start) address
for the block when all addresses within the block are contiguous. If
non-contiguous, then use the start address for the first range in the
@@ -234,7 +233,7 @@ struct global_block
the entry_pc field can be set from the dwarf reader (and other readers
too). BLOCK_ENTRY_PC can then be redefined to be less DWARF-centric. */
-#define BLOCK_ENTRY_PC(bl) (BLOCK_CONTIGUOUS_P (bl) \
+#define BLOCK_ENTRY_PC(bl) (bl->is_contiguous () \
? bl->start () \
: bl->ranges ()[0].start ())
diff --git a/gdb/blockframe.c b/gdb/blockframe.c
index 78c9daa..694cd04 100644
--- a/gdb/blockframe.c
+++ b/gdb/blockframe.c
@@ -276,7 +276,7 @@ find_pc_partial_function_sym (CORE_ADDR pc,
comment preceding declaration of find_pc_partial_function
in symtab.h for more information. */
- if (BLOCK_CONTIGUOUS_P (b))
+ if (b->is_contiguous ())
{
cache_pc_function_low = b->start ();
cache_pc_function_high = b->end ();
@@ -390,7 +390,7 @@ find_function_entry_range_from_pc (CORE_ADDR pc, const char **name,
const struct block *block;
bool status = find_pc_partial_function (pc, name, address, endaddr, &block);
- if (status && block != nullptr && !BLOCK_CONTIGUOUS_P (block))
+ if (status && block != nullptr && !block->is_contiguous ())
{
CORE_ADDR entry_pc = BLOCK_ENTRY_PC (block);
diff --git a/gdb/cli/cli-cmds.c b/gdb/cli/cli-cmds.c
index 7a6a8ea..31911eb 100644
--- a/gdb/cli/cli-cmds.c
+++ b/gdb/cli/cli-cmds.c
@@ -1428,7 +1428,7 @@ print_disassembly (struct gdbarch *gdbarch, const char *name,
if (name != NULL)
gdb_printf (_("for function %ps:\n"),
styled_string (function_name_style.style (), name));
- if (block == nullptr || BLOCK_CONTIGUOUS_P (block))
+ if (block == nullptr || block->is_contiguous ())
{
if (name == NULL)
gdb_printf (_("from %ps to %ps:\n"),