Add testcase for PR42729 and fix handling of gimple_debug info.

2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>

	* sese.c (rename_uses): Handl unconditionally gimple_debug statements.

	* gcc.dg/graphite/pr42729.c: New.

From-SVN: r163146
This commit is contained in:
Sebastian Pop 2010-08-11 20:28:15 +00:00 committed by Sebastian Pop
parent 8af6d9cdfe
commit a0dd150249
5 changed files with 40 additions and 13 deletions

View File

@ -1,3 +1,7 @@
2010-08-02 Sebastian Pop <sebastian.pop@amd.com>
* sese.c (rename_uses): Handl unconditionally gimple_debug statements.
2010-08-02 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Special

View File

@ -1,3 +1,9 @@
2010-07-15 Sebastian Pop <sebastian.pop@amd.com>
* sese.c (rename_uses): Handl unconditionally gimple_debug statements.
* gcc.dg/graphite/pr42729.c: New.
2010-07-15 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Special

View File

@ -480,6 +480,16 @@ rename_uses (gimple copy, htab_t rename_map, gimple_stmt_iterator *gsi_tgt,
use_operand_p use_p;
ssa_op_iter op_iter;
if (is_gimple_debug (copy))
{
if (gimple_debug_bind_p (copy))
gimple_debug_bind_reset_value (copy);
else
gcc_unreachable ();
return;
}
FOR_EACH_SSA_USE_OPERAND (use_p, copy, op_iter, SSA_OP_ALL_USES)
{
tree old_name = USE_FROM_PTR (use_p);
@ -501,19 +511,7 @@ rename_uses (gimple copy, htab_t rename_map, gimple_stmt_iterator *gsi_tgt,
|| (TREE_CODE (new_expr) != SSA_NAME
&& is_gimple_reg (old_name)))
{
tree var;
if (is_gimple_debug (copy))
{
if (gimple_debug_bind_p (copy))
gimple_debug_bind_reset_value (copy);
else
gcc_unreachable ();
break;
}
var = create_tmp_var (type_old_name, "var");
tree var = create_tmp_var (type_old_name, "var");
if (type_old_name != type_new_expr)
new_expr = fold_convert (type_old_name, new_expr);

View File

@ -1,3 +1,7 @@
2010-08-02 Sebastian Pop <sebastian.pop@amd.com>
* gcc.dg/graphite/pr42729.c: New.
2010-08-02 Sebastian Pop <sebastian.pop@amd.com>
* gfortran.dg/graphite/id-20.f: New.

View File

@ -0,0 +1,15 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fgraphite-identity -fcompare-debug" } */
int A[10];
int *foo ()
{
int *p1, *p2, i;
for (i = 0; i < 10; i++)
{
p1 = &A[i];
*p1 = 0;
}
p2 = p1;
return p2;
}