re PR lto/41058 (FAIL: ext/pb_ds/regression/hash_data_map_rand.cc)

2009-08-28  Richard Guenther  <rguenther@suse.de>

	PR lto/41058
	* cp-gimplify.c (cp_genericize_r): Do not leak zero-sized stores
	into the generic IL.

From-SVN: r151176
This commit is contained in:
Richard Guenther 2009-08-28 19:36:05 +00:00 committed by Richard Biener
parent 629fff4bf2
commit 0b95297232
2 changed files with 15 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2009-08-28 Richard Guenther <rguenther@suse.de>
PR lto/41058
* cp-gimplify.c (cp_genericize_r): Do not leak zero-sized stores
into the generic IL.
2009-08-27 Richard Guenther <rguenther@suse.de>
* class.c (build_vtbl_ref_1): Remove excess vertical space.

View File

@ -853,6 +853,15 @@ cp_genericize_r (tree *stmt_p, int *walk_subtrees, void *data)
*walk_subtrees = 0;
}
else if (TREE_CODE (stmt) == MODIFY_EXPR
&& (integer_zerop (cp_expr_size (TREE_OPERAND (stmt, 0)))
|| integer_zerop (cp_expr_size (TREE_OPERAND (stmt, 1)))))
{
*stmt_p = build2 (COMPOUND_EXPR, TREE_TYPE (stmt),
TREE_OPERAND (stmt, 0),
TREE_OPERAND (stmt, 1));
}
pointer_set_insert (p_set, *stmt_p);
return NULL;