Comments
Patch
===================================================================
@@ -1,3 +1,8 @@
+2012-11-30 Bin Cheng <bin.cheng@arm.com>
+
+ * gcc.dg/hoist-register-pressure.c: Skip on ARM Thumb2.
+ * gcc.dg/hoist-register-pressure-3.c: Ditto.
+
2012-11-23 Bin Cheng <bin.cheng@arm.com>
Backport from mainline r193687
===================================================================
@@ -1,5 +1,6 @@
/* { dg-options "-Os -fdump-rtl-hoist" } */
-/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" } } */
+/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" { target { ! arm_thumb2 } } } } */
+/* { dg-final { cleanup-rtl-dump "hoist" } } */
#define BUF 100
int a[BUF];
===================================================================
@@ -1,5 +1,6 @@
/* { dg-options "-Os -fdump-rtl-hoist" } */
-/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" } } */
+/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" { target { ! arm_thumb2 } } } } */
+/* { dg-final { cleanup-rtl-dump "hoist" } } */
#define BUF 100
int a[BUF];
===================================================================
@@ -1,3 +1,8 @@
+2012-11-30 Bin Cheng <bin.cheng@arm.com>
+
+ * config/arm/arm.c (arm_option_override): Disable option
+ -fira-hoist-pressure on Thumb2.
+
2012-11-28 Bin Cheng <bin.cheng@arm.com>
Backport from mainline r193841
===================================================================
@@ -2035,6 +2035,12 @@
else
max_insns_skipped = current_tune->max_insns_skipped;
+ if (TARGET_THUMB2 && flag_ira_hoist_pressure)
+ {
+ /* Don't do register pressure directed hoist on Thumb2. */
+ 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)