From e2da2f7205e03a57f5f0a6b75974bcab39fe6b9e Mon Sep 17 00:00:00 2001 From: Giuliano Belinassi Date: Sun, 24 Jan 2021 12:29:42 -0300 Subject: [PATCH] Initial commit for Europar 2021 GCC version This was the version of GCC used in the Europar 2021 paper with regard to GCC paralelism. Future commits are possible, so look in the paper the commit hash of the version was used. --- gcc/.cgraphunit.c.swp | Bin 0 -> 126976 bytes gcc/.lto-cgraph.c.swo | Bin 0 -> 16384 bytes gcc/cgraphunit.c | 12 ++++++++++++ gcc/gcc.c | 9 +-------- gcc/ipa-split.c | 17 +++++++++++++---- 5 files changed, 26 insertions(+), 12 deletions(-) create mode 100644 gcc/.cgraphunit.c.swp create mode 100644 gcc/.lto-cgraph.c.swo diff --git a/gcc/.cgraphunit.c.swp b/gcc/.cgraphunit.c.swp new file mode 100644 index 0000000000000000000000000000000000000000..83c78e6c4cae3c0dc99b0c38b610dffe16810944 GIT binary patch literal 126976 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%0DKla4=7Ln>0mQB1t=!q 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 )cNT=Z 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 (cnode); + if (!cnode->inlined_to && ss) + insns += ss->size; + } + + if (insns < (unsigned long long) param_min_partition_size) + return false; + if (!strcmp (flag_parallel_jobs, "auto")) { jobserver = jobserver_initialize (); diff --git a/gcc/gcc.c b/gcc/gcc.c index c276a11ca7a..ba942c0e3e4 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -3405,14 +3405,7 @@ append_split_outputs (extra_arg_storer *storer, argv[argc++] = extra_argument; } - if (have_c) - { - argv[argc++] = "-fPIE"; - argv[argc++] = "-fPIC"; - } - argv[argc] = NULL; - commands[0].argv = argv; } @@ -3977,7 +3970,7 @@ execute (void) /* FIXME: Interact with GNU Jobserver if necessary. */ commands_batch = commands; - n = flag_parallel_jobs? 1: n_commands; + n = n_commands; for (int i = 0; i < n_commands; i += n) { diff --git a/gcc/ipa-split.c b/gcc/ipa-split.c index 973e72cea04..09e9eb93264 100644 --- a/gcc/ipa-split.c +++ b/gcc/ipa-split.c @@ -1909,8 +1909,12 @@ pass_split_functions::gate (function *) { /* When doing profile feedback, we want to execute the pass after profiling is read. So disable one in early optimization. */ - return (flag_partial_inlining - && !profile_arc_flag && !flag_branch_probabilities); + + /* Disabled due to an issue regarding how the partitioner applier + handle clones generated by this pass. */ + /*return (flag_partial_inlining + && !profile_arc_flag && !flag_branch_probabilities); */ + return false; } } // anon namespace @@ -1968,8 +1972,13 @@ pass_feedback_split_functions::gate (function *) { /* We don't need to split when profiling at all, we are producing lousy code anyway. */ - return (flag_partial_inlining - && flag_branch_probabilities); + + /* Disabled due to an issue regarding how the partitioner applier + handle clones generated by this pass. */ + /* return (flag_partial_inlining + && flag_branch_probabilities); */ + + return false; } } // anon namespace