===================================================================
@@ -1397,7 +1397,7 @@ EnumValue
Enum(ira_region) String(mixed) Value(IRA_REGION_MIXED)
fira-hoist-pressure
-Common Report Var(flag_ira_hoist_pressure) Init(1) Optimization
+Common Report Var(flag_ira_hoist_pressure) Init(2) Optimization
Use IRA based register pressure calculation
in RTL hoist optimizations.
===================================================================
@@ -2095,6 +2095,12 @@ arm_option_override (void)
else
max_insns_skipped = current_tune->max_insns_skipped;
+ if (TARGET_THUMB2 && flag_ira_hoist_pressure == 2)
+ {
+ /* Don't do register pressure directed hoist on Thumb2 by default. */
+ flag_ira_hoist_pressure = 0;
+ }
+
/* Hot/Cold partitioning is not currently supported, since we can't
handle literal pool placement in that case. */
if (flag_reorder_blocks_and_partition)
===================================================================
@@ -7160,7 +7160,7 @@ Use IRA to evaluate register pressure in the code
decisions to hoist expressions. This option usually results in smaller
code, but it can slow the compiler down.
-This option is enabled at level @option{-Os} for all targets.
+This option is enabled at level @option{-Os} for most targets.
@item -fira-loop-pressure
@opindex fira-loop-pressure
===================================================================
@@ -1,4 +1,4 @@
-/* { dg-options "-Os -fdump-rtl-hoist" } */
+/* { dg-options "-Os -fira-hoist-pressure -fdump-rtl-hoist" } */
/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" { target { nonpic } } } } */
/* { dg-final { cleanup-rtl-dump "hoist" } } */
===================================================================
@@ -1,4 +1,4 @@
-/* { dg-options "-Os -fdump-rtl-hoist" } */
+/* { dg-options "-Os -fira-hoist-pressure -fdump-rtl-hoist" } */
/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" } } */
/* { dg-final { cleanup-rtl-dump "hoist" } } */
===================================================================
@@ -1,4 +1,4 @@
-/* { dg-options "-Os -fdump-rtl-hoist" } */
+/* { dg-options "-Os -fira-hoist-pressure -fdump-rtl-hoist" } */
/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" } } */
/* { dg-final { cleanup-rtl-dump "hoist" } } */