public inbox for gcc-cvs@sourceware.org help / color / mirror / Atom feed
From: Sebastian Huber <sh@gcc.gnu.org> To: gcc-cvs@gcc.gnu.org Subject: [gcc r14-5783] gcov: No atomic ops for -fprofile-update=single Date: Thu, 23 Nov 2023 14:55:31 +0000 (GMT) [thread overview] Message-ID: <20231123145531.6137F3857B98@sourceware.org> (raw) https://gcc.gnu.org/g:8674d70ce37ca3249a641fb418c6849d4f95f348 commit r14-5783-g8674d70ce37ca3249a641fb418c6849d4f95f348 Author: Sebastian Huber <sebastian.huber@embedded-brains.de> Date: Thu Nov 23 14:45:50 2023 +0100 gcov: No atomic ops for -fprofile-update=single gcc/ChangeLog: PR tree-optimization/112678 * tree-profile.cc (tree_profiling): Do not use atomic operations for -fprofile-update=single. Diff: --- gcc/tree-profile.cc | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gcc/tree-profile.cc b/gcc/tree-profile.cc index 1ac0fdb3bc9..9c8fdb8b18f 100644 --- a/gcc/tree-profile.cc +++ b/gcc/tree-profile.cc @@ -767,6 +767,7 @@ tree_profiling (void) = HAVE_sync_compare_and_swapsi || HAVE_atomic_compare_and_swapsi; bool have_atomic_8 = HAVE_sync_compare_and_swapdi || HAVE_atomic_compare_and_swapdi; + bool needs_split = gcov_type_size == 8 && !have_atomic_8 && have_atomic_4; if (!can_support_atomic) { if (gcov_type_size == 4) @@ -775,6 +776,9 @@ tree_profiling (void) can_support_atomic = have_atomic_8; } + if (flag_profile_update != PROFILE_UPDATE_SINGLE && needs_split) + counter_update = COUNTER_UPDATE_ATOMIC_PARTIAL; + if (flag_profile_update == PROFILE_UPDATE_ATOMIC && !can_support_atomic) { @@ -788,13 +792,11 @@ tree_profiling (void) if (flag_profile_update == PROFILE_UPDATE_ATOMIC) { - if (gcov_type_size == 8 && !have_atomic_8 && have_atomic_4) + if (needs_split) counter_update = COUNTER_UPDATE_ATOMIC_SPLIT; else counter_update = COUNTER_UPDATE_ATOMIC_BUILTIN; } - else if (gcov_type_size == 8 && have_atomic_4) - counter_update = COUNTER_UPDATE_ATOMIC_PARTIAL; /* This is a small-ipa pass that gets called only once, from cgraphunit.cc:ipa_passes(). */
reply other threads:[~2023-11-23 14:55 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=20231123145531.6137F3857B98@sourceware.org \ --to=sh@gcc.gnu.org \ --cc=gcc-cvs@gcc.gnu.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: linkBe 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).