From: Jan Hubicka <hubicka@ucw.cz>
To: Martin Jambor <mjambor@suse.cz>
Cc: GCC Patches <gcc-patches@gcc.gnu.org>
Subject: Re: [PATCH] ipa-sra: Allow IPA-SRA in presence of returns which will be removed
Date: Mon, 25 Sep 2023 10:47:17 +0200 [thread overview]
Message-ID: <ZRFJFb2UJFbB7h5J@kam.mff.cuni.cz> (raw)
In-Reply-To: <ri6jzsn9sv1.fsf@suse.cz>
> >> gcc/ChangeLog:
> >>
> >> 2023-08-18 Martin Jambor <mjambor@suse.cz>
> >>
> >> PR ipa/110378
> >> * ipa-param-manipulation.cc
> >> (ipa_param_body_adjustments::mark_dead_statements): Verify that any
> >> return uses of PARAM will be removed.
> >> (ipa_param_body_adjustments::mark_clobbers_dead): Likewise.
> >> * ipa-sra.cc (isra_param_desc): New fields
> >> remove_only_when_retval_removed and split_only_when_retval_removed.
> >> (struct gensum_param_desc): Likewise. Fix comment long line.
> >> (ipa_sra_function_summaries::duplicate): Copy the new flags.
> >> (dump_gensum_param_descriptor): Dump the new flags.
> >> (dump_isra_param_descriptor): Likewise.
> >> (isra_track_scalar_value_uses): New parameter desc. Set its flag
> >> remove_only_when_retval_removed when encountering a simple return.
> >> (isra_track_scalar_param_local_uses): Replace parameter call_uses_p
> >> with desc. Pass it to isra_track_scalar_value_uses and set its
> >> call_uses.
> >> (ptr_parm_has_nonarg_uses): Accept parameter descriptor as a
> >> parameter. If there is a direct return use, mark any..
> >> (create_parameter_descriptors): Pass the whole parameter descriptor to
> >> isra_track_scalar_param_local_uses and ptr_parm_has_nonarg_uses.
> >> (process_scan_results): Copy the new flags.
> >> (isra_write_node_summary): Stream the new flags.
> >> (isra_read_node_info): Likewise.
> >> (adjust_parameter_descriptions): Check that transformations
> >> requring return removal only happen when return value is removed.
> >> Restructure main loop. Adjust dump message.
> >>
> >> gcc/testsuite/ChangeLog:
> >>
> >> 2023-08-18 Martin Jambor <mjambor@suse.cz>
> >>
> >> PR ipa/110378
> >> * gcc.dg/ipa/ipa-sra-32.c: New test.
> >> * gcc.dg/ipa/pr110378-4.c: Likewise.
> >> * gcc.dg/ipa/ipa-sra-4.c: Use a return value.
> >> ---
> >> gcc/ipa-param-manipulation.cc | 7 +-
> >> gcc/ipa-sra.cc | 247 +++++++++++++++++---------
> >> gcc/testsuite/gcc.dg/ipa/ipa-sra-32.c | 30 ++++
> >> gcc/testsuite/gcc.dg/ipa/ipa-sra-4.c | 4 +-
> >> gcc/testsuite/gcc.dg/ipa/pr110378-4.c | 50 ++++++
> >> 5 files changed, 251 insertions(+), 87 deletions(-)
> >> create mode 100644 gcc/testsuite/gcc.dg/ipa/ipa-sra-32.c
> >> create mode 100644 gcc/testsuite/gcc.dg/ipa/pr110378-4.c
> >>
OK,
Thanks
Honza
next prev parent reply other threads:[~2023-09-25 8:47 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-18 19:36 Martin Jambor
2023-09-25 8:47 ` Jan Hubicka [this message]
-- strict thread matches above, loose matches on Subject: below --
2023-08-18 20:49 Martin Jambor
2023-09-01 13:30 ` Martin Jambor
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=ZRFJFb2UJFbB7h5J@kam.mff.cuni.cz \
--to=hubicka@ucw.cz \
--cc=gcc-patches@gcc.gnu.org \
--cc=mjambor@suse.cz \
/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).