From: Jeff Law <law@redhat.com>
To: "Martin Liška" <mliska@suse.cz>,
"Strager Neds" <strager.nds@gmail.com>,
gcc-patches@gcc.gnu.org
Subject: Re: [PATCH 3/3] Improve efficiency of copying section from another tree
Date: Mon, 30 Nov 2020 15:27:13 -0700 [thread overview]
Message-ID: <f96de96a-3e8e-1b96-5a4b-fc088048f8af@redhat.com> (raw)
In-Reply-To: <d2feed78-6e63-d8f1-021c-7bf1534b6402@suse.cz>
[-- Attachment #1: Type: text/plain, Size: 1569 bytes --]
On 11/30/20 5:16 AM, Martin Liška wrote:
> On 11/13/19 7:29 AM, Strager Neds wrote:
>> -/* Worker for set_section. */
>> +void
>> +symtab_node::set_section_for_node (const symtab_node &other)
>> +{
>> + if (x_section == other.x_section)
>> + return;
>> + if (get_section () && other.get_section ())
>> + gcc_checking_assert (strcmp (get_section (), other.get_section
>> ()) != 0);
>> + release_section_hash_entry (x_section);
>> + if (other.x_section)
>> + x_section = retain_section_hash_entry (other.x_section);
>> + else
>> + x_section = NULL;
>> +}
>> +
>> +/* Workers for set_section. */
>>
>> bool
>> -symtab_node::set_section (symtab_node *n, void *s)
>> +symtab_node::set_section_from_string (symtab_node *n, void *s)
>> {
>> n->set_section_for_node ((char *)s);
>> return false;
>> }
>>
>> +bool
>> +symtab_node::set_section_from_node (symtab_node *n, void *o)
>> +{
>> + const symtab_node &other = *static_cast<const symtab_node *> (o);
>> + n->set_section_for_node (other);
>> + return false;
>> +}
>> +
>> /* Set section of symbol and its aliases. */
>
> Hello.
>
> Apparently, the patch caused the following regression:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98057
>
> I've got a fix for it, but I would appreciate function comments
> for the
>
> void
> symtab_node::set_section_for_node (const symtab_node &other)
>
> and
> bool
> symtab_node::set_section_from_node (symtab_node *n, void *o)
>
> Can you please add it?
I'll take care of it with the attached patch.
Jeff
[-- Attachment #2: P --]
[-- Type: text/plain, Size: 1007 bytes --]
commit dccae0f42e9e052b7721e805858d10d3ec345685
Author: Jeff Law <law@redhat.com>
Date: Mon Nov 30 15:21:38 2020 -0700
Add function comments for recently added member functions.
gcc/
* symtab.c (set_section_for_node): Add function comment.
(set_section_from_node): Likewise.
diff --git a/gcc/symtab.c b/gcc/symtab.c
index 393d6b07870..fd7d553c112 100644
--- a/gcc/symtab.c
+++ b/gcc/symtab.c
@@ -1668,6 +1668,10 @@ symtab_node::set_section_for_node (const char *section)
}
}
+/* Set the section of node THIS to be the same as the section
+ of node OTHER. Keep reference counts of the sections
+ up-to-date as needed. */
+
void
symtab_node::set_section_for_node (const symtab_node &other)
{
@@ -1691,6 +1695,9 @@ symtab_node::set_section_from_string (symtab_node *n, void *s)
return false;
}
+/* Set the section of node N to be the same as the section
+ of node O. */
+
bool
symtab_node::set_section_from_node (symtab_node *n, void *o)
{
next prev parent reply other threads:[~2020-11-30 22:27 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-13 6:28 [PATCH 1/3] Refactor copying decl section names Strager Neds
2019-11-13 6:29 ` [PATCH 2/3] Refactor section name ref counting Strager Neds
2019-11-13 7:31 ` [PATCH 3/3] Improve efficiency of copying section from another tree Strager Neds
2020-11-11 3:59 ` Jeff Law
2020-11-30 12:16 ` Martin Liška
2020-11-30 22:27 ` Jeff Law [this message]
2020-11-11 3:55 ` [PATCH 2/3] Refactor section name ref counting Jeff Law
2020-01-14 22:09 ` [PATCH 1/3] Refactor copying decl section names Jeff Law
2020-11-10 16:30 ` Jeff Law
2020-11-10 18:45 ` Jeff Law
2020-11-11 3:57 ` Alan Modra
2020-11-11 4:19 ` Jeff Law
2020-11-11 5:11 ` Alan Modra
2020-11-11 18:20 ` Jeff Law
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=f96de96a-3e8e-1b96-5a4b-fc088048f8af@redhat.com \
--to=law@redhat.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=mliska@suse.cz \
--cc=strager.nds@gmail.com \
/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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).