From patchwork Fri Jan 21 19:27:31 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sebastian Pop X-Patchwork-Id: 79895 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id BBCBFB711C for ; Sat, 22 Jan 2011 06:30:01 +1100 (EST) Received: (qmail 16153 invoked by alias); 21 Jan 2011 19:29:59 -0000 Received: (qmail 16118 invoked by uid 22791); 21 Jan 2011 19:29:58 -0000 X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL, BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW, TW_SV, T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org Received: from mail-gx0-f175.google.com (HELO mail-gx0-f175.google.com) (209.85.161.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 21 Jan 2011 19:29:43 +0000 Received: by gxk20 with SMTP id 20so676945gxk.20 for ; Fri, 21 Jan 2011 11:29:42 -0800 (PST) Received: by 10.90.102.15 with SMTP id z15mr1244158agb.190.1295638181988; Fri, 21 Jan 2011 11:29:41 -0800 (PST) Received: from napoca ([76.233.39.4]) by mx.google.com with ESMTPS id c34sm11850487anc.30.2011.01.21.11.29.37 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 21 Jan 2011 11:29:41 -0800 (PST) Received: by napoca (sSMTP sendmail emulation); Fri, 21 Jan 2011 13:29:27 -0600 From: Sebastian Pop To: gcc-patches@gcc.gnu.org Cc: rguenther@suse.de Subject: [PATCH 12/28] Correct the precedence relation. Date: Fri, 21 Jan 2011 13:27:31 -0600 Message-Id: <1295638067-13460-13-git-send-email-sebpop@gmail.com> In-Reply-To: References: X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org From: spop 2011-01-15 Sebastian Pop * graphite-dependences.c (build_pairwise_scheduling): Correctly compute the "a followed by b" relation and document it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/graphite@168838 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/ChangeLog.graphite | 5 +++++ gcc/graphite-dependences.c | 15 ++++++++++----- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 01dfc7e..e20aafd 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2011-01-21 Sebastian Pop + * graphite-dependences.c (build_pairwise_scheduling): Correctly compute + the "a followed by b" relation and document it. + +2011-01-21 Sebastian Pop + * graphite-dependences.c (build_lexicographical_constraint): Stop the iteration when the bag of constraints is empty. diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite index 0db1c60..ab1498a 100644 --- a/gcc/ChangeLog.graphite +++ b/gcc/ChangeLog.graphite @@ -1,5 +1,10 @@ 2011-01-15 Sebastian Pop + * graphite-dependences.c (build_pairwise_scheduling): Correctly compute + the "a followed by b" relation and document it. + +2011-01-15 Sebastian Pop + * graphite-dependences.c (build_lexicographical_constraint): Stop the iteration when the bag of constraints is empty. diff --git a/gcc/graphite-dependences.c b/gcc/graphite-dependences.c index c9bd1be..0164129 100644 --- a/gcc/graphite-dependences.c +++ b/gcc/graphite-dependences.c @@ -347,23 +347,28 @@ build_pairwise_scheduling (graphite_dim_t dim, ppl_Pointset_Powerset_C_Polyhedron_t res; ppl_Polyhedron_t equalities; ppl_Constraint_t cstr; + graphite_dim_t a = pos; + graphite_dim_t b = pos + offset; ppl_new_C_Polyhedron_from_space_dimension (&equalities, dim, 0); switch (direction) { - case -1: - cstr = ppl_build_relation (dim, pos, pos + offset, 1, + case 1: + /* Builds "a + 1 <= b. */ + cstr = ppl_build_relation (dim, a, b, 1, PPL_CONSTRAINT_TYPE_LESS_OR_EQUAL); break; case 0: - cstr = ppl_build_relation (dim, pos, pos + offset, 0, + /* Builds "a = b. */ + cstr = ppl_build_relation (dim, a, b, 0, PPL_CONSTRAINT_TYPE_EQUAL); break; - case 1: - cstr = ppl_build_relation (dim, pos, pos + offset, -1, + case -1: + /* Builds "a >= b + 1. */ + cstr = ppl_build_relation (dim, a, b, -1, PPL_CONSTRAINT_TYPE_GREATER_OR_EQUAL); break;