+2012-09-24 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/52173
+ * gimple.c (gimple_copy): Properly mark the copy modified
+ if SSA operands are present.
+
2012-09-23 Eric Botcazou <ebotcazou@adacore.com>
PR tree-optimization/54669
}
/* Make copy of operands. */
- if (num_ops > 0)
- {
- for (i = 0; i < num_ops; i++)
- gimple_set_op (copy, i, unshare_expr (gimple_op (stmt, i)));
+ for (i = 0; i < num_ops; i++)
+ gimple_set_op (copy, i, unshare_expr (gimple_op (stmt, i)));
- /* Clear out SSA operand vectors on COPY. */
- if (gimple_has_ops (stmt))
- {
- gimple_set_def_ops (copy, NULL);
- gimple_set_use_ops (copy, NULL);
- }
+ if (gimple_has_mem_ops (stmt))
+ {
+ gimple_set_vdef (copy, gimple_vdef (stmt));
+ gimple_set_vuse (copy, gimple_vuse (stmt));
+ }
- if (gimple_has_mem_ops (stmt))
- {
- gimple_set_vdef (copy, gimple_vdef (stmt));
- gimple_set_vuse (copy, gimple_vuse (stmt));
- }
+ /* Clear out SSA operand vectors on COPY. */
+ if (gimple_has_ops (stmt))
+ {
+ gimple_set_def_ops (copy, NULL);
+ gimple_set_use_ops (copy, NULL);
/* SSA operands need to be updated. */
gimple_set_modified (copy, true);
+2012-09-24 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/52173
+ * gcc.dg/tm/pr52173-1.c: New.
+ * gcc.dg/tm/pr52173-2.c: New.
+
2012-09-23 Eric Botcazou <ebotcazou@adacore.com>
* gcc.dg/pr54669.c: New test.