-2008-08-28 Paul Brook <paul@codesourcery.com>
+2008-08-26 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ PR rtl-opt/37219
+ * fwprop.c (fwprop): Check that the loop_father is the outer loop.
+ (fwprop_addr): Check that the loop_father is not the outer loop.
+
+2008-08-26 Paul Brook <paul@codesourcery.com>
* config/arm/vfp.md: Document fmul{s,d} and fmac{s,d} types.
Remove documentation entry for fmul type.
struct df_ref *use = DF_USES_GET (i);
if (use)
if (DF_REF_TYPE (use) == DF_REF_REG_USE
- || DF_REF_BB (use)->loop_father == NULL)
+ || DF_REF_BB (use)->loop_father == NULL
+ /* The outer most loop is not really a loop. */
+ || loop_outer (DF_REF_BB (use)->loop_father) == NULL)
forward_propagate_into (use);
}
struct df_ref *use = DF_USES_GET (i);
if (use)
if (DF_REF_TYPE (use) != DF_REF_REG_USE
- && DF_REF_BB (use)->loop_father != NULL)
+ && DF_REF_BB (use)->loop_father != NULL
+ /* The outer most loop is not really a loop. */
+ && loop_outer (DF_REF_BB (use)->loop_father) != NULL)
forward_propagate_into (use);
}