From patchwork Tue Jul 14 09:36:24 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Thomas Schwinge X-Patchwork-Id: 494950 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]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 7BB181402A6 for ; Tue, 14 Jul 2015 19:36:53 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b=JQHcgf6N; dkim-atps=neutral DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:in-reply-to:references:date:message-id :mime-version:content-type; q=dns; s=default; b=LvmRLRWQk5BzqsD0 trGqaIr4ys9qnlJLldXywHJtZfh++WDbzUEEjTfBo1d6+WCznmzR/86dT4S64Fnt zGbkZWXg+ncO4GvCUutZ8ZYwu2XgyVSgtbw4774iEyPmsfzd6WVU7aIt/SCcADpq ZZG9NBb8SKiP4/6m/mXObkr6iWk= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:in-reply-to:references:date:message-id :mime-version:content-type; s=default; bh=jSmET99bfXkjsR3f8Y+lRk HvDuE=; b=JQHcgf6NZtRJtWz+wFk5fdEJyOndamn4rSUWU+xweH8LhbYdiWwj/n Pv31B4k1XaZD717W/AUpdM9VjPZoblUR9QkKqRAofMofWgwjSjLDrG32I/JdQbH+ 2NUvQwb8EZJorNZYDfG3W4ogMHu4G8eDMzcnePe0j9X/c2TOafHMw= Received: (qmail 93634 invoked by alias); 14 Jul 2015 09:36:46 -0000 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 Received: (qmail 93612 invoked by uid 89); 14 Jul 2015 09:36:46 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.3 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_LOW, SPF_PASS autolearn=ham version=3.3.2 X-HELO: relay1.mentorg.com Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 14 Jul 2015 09:36:45 +0000 Received: from nat-ies.mentorg.com ([192.94.31.2] helo=SVR-IES-FEM-02.mgc.mentorg.com) by relay1.mentorg.com with esmtp id 1ZEwdl-00039x-ST from Thomas_Schwinge@mentor.com ; Tue, 14 Jul 2015 02:36:42 -0700 Received: from feldtkeller.schwinge.homeip.net (137.202.0.76) by SVR-IES-FEM-02.mgc.mentorg.com (137.202.0.106) with Microsoft SMTP Server id 14.3.224.2; Tue, 14 Jul 2015 10:36:40 +0100 From: Thomas Schwinge To: Chung-Lin Tang CC: Jakub Jelinek , gcc-patches , Tom de Vries Subject: Re: [PATCH, gomp4] Propagate independent clause for OpenACC kernels pass In-Reply-To: <55A4A21C.1070004@codesourcery.com> References: <55A4A21C.1070004@codesourcery.com> User-Agent: Notmuch/0.9-101-g81dad07 (http://notmuchmail.org) Emacs/24.3.1 (x86_64-pc-linux-gnu) Date: Tue, 14 Jul 2015 11:36:24 +0200 Message-ID: <874ml73wtj.fsf@schwinge.name> MIME-Version: 1.0 Hi Chung-Lin! On Tue, 14 Jul 2015 13:46:04 +0800, Chung-Lin Tang wrote: > this patch provides a 'bool independent' field in struct loop, which > will be switched on by an "independent" clause in a #pragma acc loop directive. Thanks! This patch has been developed in context of OpenACC kernels constructs, but, is there anything still to be done regarding OpenACC parallel constructs? That is, are we currently *using* the "independent yes/no" information appropriately for these? > * omp-low.c (struct omp_region): Add 'int kind' and > 'bool independent' fields. > --- omp-low.c (revision 225758) > +++ omp-low.c (working copy) > @@ -136,8 +136,16 @@ struct omp_region > /* True if this is nested inside an OpenACC kernels construct. */ > bool inside_kernels_p; > > + /* Records a generic kind field. */ > + int kind; > + > /* For an OpenACC loop, the level of parallelism requested. */ > int gwv_this; > + > + /* For an OpenACC loop directive, true if has the 'independent' clause. */ > + bool independent; > + > + tree broadcast_array; > }; I'm assuming just a patch conflict resolution hiccup; committed in r225767: commit 4a10c97b741bbc3d7278779337d5c0bfea8297c2 Author: tschwinge Date: Tue Jul 14 09:30:02 2015 +0000 Code cleanup gcc/ * omp-low.c (struct omp_region): Remove broadcast_array member. ... that mistakenly reappeared in r225759, after having been removed in r225647. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@225767 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog.gomp | 4 ++++ gcc/omp-low.c | 2 -- 2 files changed, 4 insertions(+), 2 deletions(-) Grüße, Thomas diff --git gcc/ChangeLog.gomp gcc/ChangeLog.gomp index dfe0c95..d7459d0 100644 --- gcc/ChangeLog.gomp +++ gcc/ChangeLog.gomp @@ -1,3 +1,7 @@ +2015-07-14 Thomas Schwinge + + * omp-low.c (struct omp_region): Remove broadcast_array member. + 2015-07-14 Tom de Vries * tree-parloops.c (parallelize_loops): Use marked_independent flag in diff --git gcc/omp-low.c gcc/omp-low.c index fc6c7a9..0419dcd 100644 --- gcc/omp-low.c +++ gcc/omp-low.c @@ -144,8 +144,6 @@ struct omp_region /* For an OpenACC loop directive, true if has the 'independent' clause. */ bool independent; - - tree broadcast_array; }; /* Context structure. Used to store information about each parallel