bool jobserver = false;
bool job_auto = false;
int num_jobs = -1;
+ unsigned long long insns = 0;
+ cgraph_node *cnode;
if (!flag_parallel_jobs || !split_outputs)
return false;
+ FOR_EACH_FUNCTION_WITH_GIMPLE_BODY (cnode)
+ {
+ ipa_size_summary *ss = ipa_size_summaries->get (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 ();
argv[argc++] = extra_argument;
}
- if (have_c)
- {
- argv[argc++] = "-fPIE";
- argv[argc++] = "-fPIC";
- }
-
argv[argc] = NULL;
-
commands[0].argv = argv;
}
/* 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)
{
{
/* 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
{
/* 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