Commit 7e1e7d4c by Vladimir Makarov Committed by Vladimir Makarov

invoke.texi (fira-loop-pressure): Update default value.

2009-10-21  Vladimir Makarov  <vmakarov@redhat.com>

	* doc/invoke.texi (fira-loop-pressure): Update default value.
	* opts.c (decode_options): Remove default value setting for
	flag_ira_loop_pressure.
	* config/ia64/ia64.c (ia64_override_options): Set
	flag_ira_loop_pressure up for -O3.
	* config/rs6000/rs6000.c (rs6000_override_options): Ditto.

From-SVN: r153445
parent 9f217aad
2009-10-21 Vladimir Makarov <vmakarov@redhat.com>
* doc/invoke.texi (fira-loop-pressure): Update default value.
* opts.c (decode_options): Remove default value setting for
flag_ira_loop_pressure.
* config/ia64/ia64.c (ia64_override_options): Set
flag_ira_loop_pressure up for -O3.
* config/rs6000/rs6000.c (rs6000_override_options): Ditto.
2009-10-21 Sebastian Pop <sebastian.pop@amd.com> 2009-10-21 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/41497 PR tree-optimization/41497
...@@ -5496,6 +5496,14 @@ ia64_override_options (void) ...@@ -5496,6 +5496,14 @@ ia64_override_options (void)
if (TARGET_AUTO_PIC) if (TARGET_AUTO_PIC)
target_flags |= MASK_CONST_GP; target_flags |= MASK_CONST_GP;
/* Numerous experiment shows that IRA based loop pressure
calculation works better for RTL loop invariant motion on targets
with enough (>= 32) registers. It is an expensive optimization.
So it is on only for peak performance. */
if (optimize >= 3)
flag_ira_loop_pressure = 1;
ia64_flag_schedule_insns2 = flag_schedule_insns_after_reload; ia64_flag_schedule_insns2 = flag_schedule_insns_after_reload;
flag_schedule_insns_after_reload = 0; flag_schedule_insns_after_reload = 0;
......
...@@ -2281,6 +2281,13 @@ rs6000_override_options (const char *default_cpu) ...@@ -2281,6 +2281,13 @@ rs6000_override_options (const char *default_cpu)
| MASK_POPCNTD | MASK_VSX | MASK_ISEL | MASK_NO_UPDATE) | MASK_POPCNTD | MASK_VSX | MASK_ISEL | MASK_NO_UPDATE)
}; };
/* Numerous experiment shows that IRA based loop pressure
calculation works better for RTL loop invariant motion on targets
with enough (>= 32) registers. It is an expensive optimization.
So it is on only for peak performance. */
if (optimize >= 3)
flag_ira_loop_pressure = 1;
/* Set the pointer size. */ /* Set the pointer size. */
if (TARGET_64BIT) if (TARGET_64BIT)
{ {
......
...@@ -5733,8 +5733,7 @@ invoking @option{-O2} on programs that use computed gotos. ...@@ -5733,8 +5733,7 @@ invoking @option{-O2} on programs that use computed gotos.
Optimize yet more. @option{-O3} turns on all optimizations specified Optimize yet more. @option{-O3} turns on all optimizations specified
by @option{-O2} and also turns on the @option{-finline-functions}, by @option{-O2} and also turns on the @option{-finline-functions},
@option{-funswitch-loops}, @option{-fpredictive-commoning}, @option{-funswitch-loops}, @option{-fpredictive-commoning},
@option{-fgcse-after-reload}, @option{-ftree-vectorize} and @option{-fgcse-after-reload} and @option{-ftree-vectorize} options.
@option{-fira-loop-pressure} options.
@item -O0 @item -O0
@opindex O0 @opindex O0
...@@ -6235,9 +6234,10 @@ architectures with big regular register files. ...@@ -6235,9 +6234,10 @@ architectures with big regular register files.
@opindex fira-loop-pressure @opindex fira-loop-pressure
Use IRA to evaluate register pressure in loops for decision to move Use IRA to evaluate register pressure in loops for decision to move
loop invariants. Usage of this option usually results in generation loop invariants. Usage of this option usually results in generation
of faster and smaller code but can slow compiler down. of faster and smaller code on machines with big register files (>= 32
registers) but it can slow compiler down.
This option is enabled at level @option{-O3}. This option is enabled at level @option{-O3} for some targets.
@item -fno-ira-share-save-slots @item -fno-ira-share-save-slots
@opindex fno-ira-share-save-slots @opindex fno-ira-share-save-slots
......
...@@ -917,7 +917,6 @@ decode_options (unsigned int argc, const char **argv) ...@@ -917,7 +917,6 @@ decode_options (unsigned int argc, const char **argv)
flag_ipa_cp_clone = opt3; flag_ipa_cp_clone = opt3;
if (flag_ipa_cp_clone) if (flag_ipa_cp_clone)
flag_ipa_cp = 1; flag_ipa_cp = 1;
flag_ira_loop_pressure = opt3;
/* Just -O1/-O0 optimizations. */ /* Just -O1/-O0 optimizations. */
opt1_max = (optimize <= 1); opt1_max = (optimize <= 1);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment