From c513da01e3e9f1d8516858b995a3a9c274494f1a Mon Sep 17 00:00:00 2001 From: Sebastian Pop Date: Tue, 25 Jan 2011 06:47:21 +0000 Subject: Allow several reductions in a reduction PBB. 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 that have already been marked as PBB_IS_REDUCTION. From-SVN: r169212 --- gcc/graphite-dependences.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'gcc/graphite-dependences.c') diff --git a/gcc/graphite-dependences.c b/gcc/graphite-dependences.c index d45c7ce..b9b1d1b 100644 --- a/gcc/graphite-dependences.c +++ b/gcc/graphite-dependences.c @@ -571,10 +571,11 @@ reduction_dr_1 (poly_bb_p pbb1, poly_dr_p pdr1, poly_dr_p pdr2) poly_dr_p pdr; FOR_EACH_VEC_ELT (poly_dr_p, PBB_DRS (pbb1), i, pdr) - if (PDR_TYPE (pdr) == PDR_WRITE) - break; + if (PDR_TYPE (pdr) == PDR_WRITE + && same_pdr_p (pdr, pdr1) && same_pdr_p (pdr, pdr2)) + return true; - return same_pdr_p (pdr, pdr1) && same_pdr_p (pdr, pdr2); + return false; } /* Return true when the data dependence relation between the data -- cgit v1.1