From: Tom Tromey <tom@tromey.com>
To: gdb-patches@sourceware.org
Cc: Tom Tromey <tom@tromey.com>
Subject: [PATCH 4/7] Change dwarf_record_line_p to be a method
Date: Sun, 07 Sep 2025 13:29:16 -0600 [thread overview]
Message-ID: <20250907-breakpoint-cu-expand-v1-4-dd2beef9d475@tromey.com> (raw)
In-Reply-To: <20250907-breakpoint-cu-expand-v1-0-dd2beef9d475@tromey.com>
This changes dwarf_record_line_p to be a method of lnp_state_machine.
This simplifies it, as it can refer to members of the object.
---
gdb/dwarf2/line-program.c | 19 ++++++++-----------
1 file changed, 8 insertions(+), 11 deletions(-)
diff --git a/gdb/dwarf2/line-program.c b/gdb/dwarf2/line-program.c
index 5292d3d5e86722bc6d60b049740982c06550ef76..e1a9f31bed409884808dd690ada942a58e66dd91 100644
--- a/gdb/dwarf2/line-program.c
+++ b/gdb/dwarf2/line-program.c
@@ -150,6 +150,8 @@ class lnp_state_machine
m_line_has_non_zero_discriminator = m_discriminator != 0;
}
+ bool record_line_p ();
+
struct dwarf2_cu *m_cu;
gdbarch *m_gdbarch;
@@ -291,20 +293,17 @@ lnp_state_machine::handle_const_add_pc ()
Note: Addresses in the line number state machine can never go backwards
within one sequence, thus this coalescing is ok. */
-static bool
-dwarf_record_line_p (struct dwarf2_cu *cu,
- unsigned int line, unsigned int last_line,
- int line_has_non_zero_discriminator,
- struct subfile *last_subfile)
+bool
+lnp_state_machine::record_line_p ()
{
- if (cu->get_builder ()->get_current_subfile () != last_subfile)
+ if (m_cu->get_builder ()->get_current_subfile () != m_last_subfile)
return true;
- if (line != last_line)
+ if (m_line != m_last_line)
return true;
/* Same line for the same file that we've seen already.
As a last check, for pr 17276, only record the line if the line
has never had a non-zero discriminator. */
- if (!line_has_non_zero_discriminator)
+ if (!m_line_has_non_zero_discriminator)
return true;
return false;
}
@@ -418,9 +417,7 @@ lnp_state_machine::record_line (bool end_sequence)
if (m_cu->producer_is_codewarrior ())
lte_flags |= LEF_IS_STMT;
- if (dwarf_record_line_p (m_cu, m_line, m_last_line,
- m_line_has_non_zero_discriminator,
- m_last_subfile))
+ if (record_line_p ())
{
buildsym_compunit *builder = m_cu->get_builder ();
dwarf_record_line_1 (m_gdbarch,
--
2.49.0
next prev parent reply other threads:[~2025-09-07 19:29 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-07 19:29 [PATCH 0/7] Shrink dwarf2/read.c and clean up lnp_state_machine Tom Tromey
2025-09-07 19:29 ` [PATCH 1/7] Move lnp_state_machine to new file Tom Tromey
2025-09-08 16:04 ` Simon Marchi
2025-09-09 0:51 ` Tom Tromey
2025-09-09 0:52 ` Simon Marchi
2025-09-09 2:33 ` Eli Zaretskii
2025-09-09 23:25 ` Tom Tromey
2025-09-07 19:29 ` [PATCH 2/7] Move compute_include_file_name earlier Tom Tromey
2025-09-08 16:08 ` Simon Marchi
2025-09-09 0:46 ` Tom Tromey
2025-09-07 19:29 ` [PATCH 3/7] Boolify line-program.c Tom Tromey
2025-09-08 17:07 ` Simon Marchi
2025-09-09 0:48 ` Tom Tromey
2025-09-09 0:50 ` Simon Marchi
2025-09-09 1:11 ` Tom Tromey
2025-09-09 23:55 ` Tom Tromey
2025-09-10 1:51 ` Simon Marchi
2025-09-07 19:29 ` Tom Tromey [this message]
2025-09-07 19:29 ` [PATCH 5/7] Add m_builder member to lnp_state_machine Tom Tromey
2025-09-08 17:12 ` Simon Marchi
2025-09-07 19:29 ` [PATCH 6/7] Change dwarf_finish_line to be a method Tom Tromey
2025-09-08 17:14 ` Simon Marchi
2025-09-07 19:29 ` [PATCH 7/7] Change dwarf_record_line_1 " Tom Tromey
2025-09-08 17:17 ` Simon Marchi
2025-09-08 17:18 ` [PATCH 0/7] Shrink dwarf2/read.c and clean up lnp_state_machine Simon Marchi
2025-09-09 0:54 ` Tom Tromey
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=20250907-breakpoint-cu-expand-v1-4-dd2beef9d475@tromey.com \
--to=tom@tromey.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