rs6000: re-enable web and rnreg with -funroll-loops
Previously, limited unrolling was enabled at O2 for powerpc in r278034. At that time, -fweb and -frename-registers were not enabled together with -funroll-loops even for -O3. After that, we notice there are some performance degradations on SPEC2006fp which caused by without web and rnreg. This patch enable -fweb and -frename-registers for -funroll-loops to align original behavior before r278034. gcc/ 2019-12-23 Jiufu Guo <guojiufu@linux.ibm.com> * config/rs6000/rs6000.c (rs6000_option_override_internal): Enable -fweb and -frename-registers with -funroll-loops From-SVN: r279725
This commit is contained in:
parent
f2a8799309
commit
b57fab1860
@ -1,3 +1,8 @@
|
||||
2019-12-24 Jiufu Guo <guojiufu@linux.ibm.com>
|
||||
|
||||
* config/rs6000/rs6000.c (rs6000_option_override_internal): Enable
|
||||
-fweb and -frename-registers with -funroll-loops
|
||||
|
||||
2019-12-22 Gerald Pfeifer <gerald@pfeifer.com>
|
||||
|
||||
* doc/invoke.texi (-flto): Use "compile time" as a noun.
|
||||
|
@ -4538,12 +4538,19 @@ rs6000_option_override_internal (bool global_init_p)
|
||||
param_sched_pressure_algorithm,
|
||||
SCHED_PRESSURE_MODEL);
|
||||
|
||||
/* Explicit -funroll-loops turns -munroll-only-small-loops off. */
|
||||
if (((global_options_set.x_flag_unroll_loops && flag_unroll_loops)
|
||||
/* Explicit -funroll-loops turns -munroll-only-small-loops off, and
|
||||
turns -fweb and -frename-registers on. */
|
||||
if ((global_options_set.x_flag_unroll_loops && flag_unroll_loops)
|
||||
|| (global_options_set.x_flag_unroll_all_loops
|
||||
&& flag_unroll_all_loops))
|
||||
&& !global_options_set.x_unroll_only_small_loops)
|
||||
unroll_only_small_loops = 0;
|
||||
{
|
||||
if (!global_options_set.x_unroll_only_small_loops)
|
||||
unroll_only_small_loops = 0;
|
||||
if (!global_options_set.x_flag_rename_registers)
|
||||
flag_rename_registers = 1;
|
||||
if (!global_options_set.x_flag_web)
|
||||
flag_web = 1;
|
||||
}
|
||||
|
||||
/* If using typedef char *va_list, signal that
|
||||
__builtin_va_start (&ap, 0) can be optimized to
|
||||
|
Loading…
Reference in New Issue
Block a user