From 3d17df15625aeebc41fa2e22b47e33eb2d216041 Mon Sep 17 00:00:00 2001 From: Sebastian Pop Date: Tue, 25 Jan 2011 06:47:34 +0000 Subject: Do not create the temporary array for reductions into VAR_DECL, PARM_DECL, and RESULT_DECL. 2011-01-25 Sebastian Pop * graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow VAR_DECL, PARM_DECL, and RESULT_DECL. * gfortran.dg/graphite/interchange-3.f90: Un-XFAILed. From-SVN: r169213 --- gcc/ChangeLog | 5 +++++ gcc/ChangeLog.graphite | 7 +++++++ gcc/graphite-sese-to-poly.c | 5 ++++- gcc/testsuite/ChangeLog | 4 ++++ gcc/testsuite/gfortran.dg/graphite/interchange-3.f90 | 2 +- 5 files changed, 21 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e67d343..4891065 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2011-01-25 Sebastian Pop + * graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow + VAR_DECL, PARM_DECL, and RESULT_DECL. + +2011-01-25 Sebastian Pop + * graphite-dependences.c (reduction_dr_1): Allow several reductions in a reduction PBB. * graphite-sese-to-poly.c (split_reduction_stmt): Do not split PBBs diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite index 091bbca..93af7f75a 100644 --- a/gcc/ChangeLog.graphite +++ b/gcc/ChangeLog.graphite @@ -1,5 +1,12 @@ 2011-01-17 Sebastian Pop + * graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow + VAR_DECL, PARM_DECL, and RESULT_DECL. + + * gfortran.dg/graphite/interchange-3.f90: Un-XFAILed. + +2011-01-17 Sebastian Pop + * graphite-dependences.c (reduction_dr_1): Allow several reductions in a reduction PBB. * graphite-sese-to-poly.c (split_reduction_stmt): Do not split PBBs diff --git a/gcc/graphite-sese-to-poly.c b/gcc/graphite-sese-to-poly.c index a7178ef..35a2316 100644 --- a/gcc/graphite-sese-to-poly.c +++ b/gcc/graphite-sese-to-poly.c @@ -2968,7 +2968,10 @@ close_phi_written_to_memory (gimple close_phi) && gimple_code (stmt) == GIMPLE_ASSIGN && (res = gimple_assign_lhs (stmt)) && (TREE_CODE (res) == ARRAY_REF - || TREE_CODE (res) == MEM_REF)) + || TREE_CODE (res) == MEM_REF + || TREE_CODE (res) == VAR_DECL + || TREE_CODE (res) == PARM_DECL + || TREE_CODE (res) == RESULT_DECL)) return res; return NULL_TREE; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 18f1ddb..5edbea6 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2011-01-21 Sebastian Pop + + * gfortran.dg/graphite/interchange-3.f90: Un-XFAILed. + 2011-01-25 Sebastian Pop * gcc.dg/graphite/block-0.c: Un-XFAILed. diff --git a/gcc/testsuite/gfortran.dg/graphite/interchange-3.f90 b/gcc/testsuite/gfortran.dg/graphite/interchange-3.f90 index 04f4a13..06da2b3 100644 --- a/gcc/testsuite/gfortran.dg/graphite/interchange-3.f90 +++ b/gcc/testsuite/gfortran.dg/graphite/interchange-3.f90 @@ -24,5 +24,5 @@ Program FOO end Program FOO -! { dg-final { scan-tree-dump-times "will be interchanged" 1 "graphite" { xfail *-*-* } } } +! { dg-final { scan-tree-dump-times "will be interchanged" 1 "graphite" } } ! { dg-final { cleanup-tree-dump "graphite" } } -- cgit v1.1