From: Simon Marchi <simon.marchi@efficios.com>
To: gdb-patches@sourceware.org
Cc: Simon Marchi <simon.marchi@efficios.com>
Subject: [PATCH 10/23] gdb/dwarf: change dwarf2_ranges_read to return bool
Date: Wed, 11 Mar 2026 14:05:35 -0400 [thread overview]
Message-ID: <20260311180825.720803-11-simon.marchi@efficios.com> (raw)
In-Reply-To: <20260311180825.720803-1-simon.marchi@efficios.com>
Also, do some little cleanups in the function itself.
Change-Id: I83928a31dcdcae34b651828fef27b1fa877241eb
---
gdb/dwarf2/read.c | 32 ++++++++++++++++++--------------
gdb/dwarf2/read.h | 10 +++++-----
2 files changed, 23 insertions(+), 19 deletions(-)
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 6861b6ad4cde..74c6ab7eff7f 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -8712,17 +8712,15 @@ dwarf2_ranges_process (unsigned offset, struct dwarf2_cu *cu, dwarf_tag tag,
/* See read.h. */
-int
+bool
dwarf2_ranges_read (unsigned offset, unrelocated_addr *low_return,
unrelocated_addr *high_return, struct dwarf2_cu *cu,
addrmap_mutable *map, void *datum, dwarf_tag tag)
{
- int low_set = 0;
+ bool low_set = false;
unrelocated_addr low = {};
unrelocated_addr high = {};
- bool retval;
-
- retval = dwarf2_ranges_process (offset, cu, tag,
+ bool retval = dwarf2_ranges_process (offset, cu, tag,
[&] (unrelocated_addr range_beginning, unrelocated_addr range_end)
{
if (map != nullptr)
@@ -8737,33 +8735,39 @@ dwarf2_ranges_read (unsigned offset, unrelocated_addr *low_return,
segment of consecutive addresses. We should have a
data structure for discontiguous block ranges
instead. */
- if (! low_set)
+ if (!low_set)
{
low = range_beginning;
high = range_end;
- low_set = 1;
+ low_set = true;
}
else
{
if (range_beginning < low)
low = range_beginning;
+
if (range_end > high)
high = range_end;
}
});
+
if (!retval)
- return 0;
+ return false;
- if (! low_set)
- /* If the first entry is an end-of-list marker, the range
+ if (!low_set)
+ {
+ /* If the first entry is an end-of-list marker, the range
describes an empty scope, i.e. no instructions. */
- return 0;
+ return false;
+ }
- if (low_return)
+ if (low_return != nullptr)
*low_return = low;
- if (high_return)
+
+ if (high_return != nullptr)
*high_return = high;
- return 1;
+
+ return true;
}
/* Process ranges and fill in a vector of the low PC values only. */
diff --git a/gdb/dwarf2/read.h b/gdb/dwarf2/read.h
index e2d75e16146c..86f97e7ccf4a 100644
--- a/gdb/dwarf2/read.h
+++ b/gdb/dwarf2/read.h
@@ -1381,14 +1381,14 @@ extern dwarf2_per_cu *dwarf2_find_unit (const section_and_offset &start,
extern bool decode_locdesc (dwarf_block *blk, dwarf2_cu *cu, CORE_ADDR *result);
/* Get low and high pc attributes from DW_AT_ranges attribute value OFFSET.
- Return 1 if the attributes are present and valid, otherwise, return 0.
+ Return true if the attributes are present and valid, otherwise, return false.
TAG is passed to dwarf2_ranges_process. If MAP is not NULL, then
ranges in MAP are set, using DATUM as the value. */
-extern int dwarf2_ranges_read (unsigned offset, unrelocated_addr *low_return,
- unrelocated_addr *high_return, dwarf2_cu *cu,
- addrmap_mutable *map, void *datum,
- dwarf_tag tag);
+extern bool dwarf2_ranges_read (unsigned offset, unrelocated_addr *low_return,
+ unrelocated_addr *high_return, dwarf2_cu *cu,
+ addrmap_mutable *map, void *datum,
+ dwarf_tag tag);
extern file_and_directory &find_file_and_directory (die_info *die,
dwarf2_cu *cu);
--
2.53.0
next prev parent reply other threads:[~2026-03-11 18:10 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-11 18:05 [PATCH 00/23] int -> bool in dwarf2/ Simon Marchi
2026-03-11 18:05 ` [PATCH 01/23] gdb/dwarf: change die_needs_namespace to return bool Simon Marchi
2026-03-11 18:05 ` [PATCH 02/23] gdb/dwarf: change dwarf2_flag_true_p " Simon Marchi
2026-03-11 18:05 ` [PATCH 03/23] gdb/dwarf: change die_is_declaration " Simon Marchi
2026-03-11 18:05 ` [PATCH 04/23] gdb/dwarf: change need_gnat_info " Simon Marchi
2026-03-11 18:05 ` [PATCH 05/23] gdb/dwarf: change attr_to_dynamic_prop " Simon Marchi
2026-03-11 18:05 ` [PATCH 06/23] gdb/dwarf: change dwarf2_is_constructor " Simon Marchi
2026-03-11 18:05 ` [PATCH 07/23] gdb/dwarf: change is_vtable_name " Simon Marchi
2026-03-11 18:05 ` [PATCH 08/23] gdb/dwarf: change prototyped_function_p " Simon Marchi
2026-03-11 18:05 ` [PATCH 09/23] gdb/dwarf: change dwarf2_ranges_process " Simon Marchi
2026-03-11 18:05 ` Simon Marchi [this message]
2026-03-12 12:44 ` [PATCH 10/23] gdb/dwarf: change dwarf2_ranges_read " Tom Tromey
2026-03-12 14:21 ` Simon Marchi
2026-03-11 18:05 ` [PATCH 11/23] gdb/dwarf: change unavailable_retaddr and undefined_retaddr to bool Simon Marchi
2026-03-11 18:05 ` [PATCH 12/23] gdb/dwarf: change frame_is_tailcall to return bool Simon Marchi
2026-03-11 18:05 ` [PATCH 13/23] gdb/dwarf: change call_site_parameter_matches " Simon Marchi
2026-03-11 18:05 ` [PATCH 14/23] gdb/dwarf: change dwarf2_fetch_cfa_info " Simon Marchi
2026-03-11 18:05 ` [PATCH 15/23] gdb/dwarf: change dwarf2_locexpr_baton_eval " Simon Marchi
2026-03-11 18:05 ` [PATCH 16/23] gdb/dwarf: change base_types_equal_p " Simon Marchi
2026-03-11 18:05 ` [PATCH 17/23] gdb/dwarf: change dwarf2_frame_signal_frame_p " Simon Marchi
2026-03-11 18:05 ` [PATCH 18/23] gdb/dwarf: change piece_end_p " Simon Marchi
2026-03-11 18:05 ` [PATCH 19/23] gdb/dwarf: define type aliases for dwarf2_frame_ops function types Simon Marchi
2026-03-11 18:05 ` [PATCH 20/23] gdb/dwarf: change dwarf2_frame_ops to return bool Simon Marchi
2026-03-11 18:05 ` [PATCH 21/23] gdb/dwarf: use true/false in read_gdb_index_from_buffer Simon Marchi
2026-03-11 18:05 ` [PATCH 22/23] gdb/dwarf: change dwarf_block_to_sp_offset to return bool Simon Marchi
2026-03-11 18:05 ` [PATCH 23/23] gdb/dwarf: change dwarf_block_to_fb_offset " Simon Marchi
2026-03-12 12:59 ` [PATCH 00/23] int -> bool in dwarf2/ Tom Tromey
2026-03-12 14:21 ` Simon Marchi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260311180825.720803-11-simon.marchi@efficios.com \
--to=simon.marchi@efficios.com \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox