opts.c (finish_options): x_flag_reorder_blocks_and_partition no longer requires x_flag_profile_use.

* opts.c (finish_options): x_flag_reorder_blocks_and_partition no
	longer requires x_flag_profile_use.

From-SVN: r249019
This commit is contained in:
Jan Hubicka 2017-06-08 16:47:26 +02:00 committed by Jan Hubicka
parent 853ed6bc10
commit ae5512dd4f
2 changed files with 5 additions and 10 deletions

View File

@ -1,3 +1,8 @@
2017-06-08 Jan Hubicka <hubicka@ucw.cz>
* opts.c (finish_options): x_flag_reorder_blocks_and_partition no
longer requires x_flag_profile_use.
2017-06-08 Jan Hubicka <hubicka@ucw.cz>
* cfgrtl.c (cfg_layout_initialize): Check crtl->has_bb_partition

View File

@ -863,16 +863,6 @@ finish_options (struct gcc_options *opts, struct gcc_options *opts_set,
opts->x_flag_reorder_blocks = 1;
}
/* Disable -freorder-blocks-and-partition when -fprofile-use is not in
effect. Function splitting was not actually being performed in that case,
as probably_never_executed_bb_p does not distinguish any basic blocks as
being cold vs hot when there is no profile data. Leaving it enabled,
however, causes the assembly code generator to create (empty) cold
sections and labels, leading to unnecessary size overhead. */
if (opts->x_flag_reorder_blocks_and_partition
&& !opts_set->x_flag_profile_use)
opts->x_flag_reorder_blocks_and_partition = 0;
if (opts->x_flag_reorder_blocks_and_partition
&& !opts_set->x_flag_reorder_functions)
opts->x_flag_reorder_functions = 1;