From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 75255 invoked by alias); 2 Jun 2015 17:57:17 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 75244 invoked by uid 89); 2 Jun 2015 17:57:16 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.0 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, 02 Jun 2015 17:57:16 +0000 Received: from svr-orw-fem-06.mgc.mentorg.com ([147.34.97.120]) by relay1.mentorg.com with esmtp id 1YzqR6-0001Yd-Jn from Cesar_Philippidis@mentor.com ; Tue, 02 Jun 2015 10:57:12 -0700 Received: from [127.0.0.1] (147.34.91.1) by SVR-ORW-FEM-06.mgc.mentorg.com (147.34.97.120) with Microsoft SMTP Server id 14.3.224.2; Tue, 2 Jun 2015 10:57:12 -0700 Message-ID: <556DEE77.90307@codesourcery.com> Date: Tue, 02 Jun 2015 18:03:00 -0000 From: Cesar Philippidis User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Bernd Schmidt , GCC Patches CC: Jakub Jelinek Subject: Re: [gomp4] Worker-single predication References: <556C813B.5020907@codesourcery.com> In-Reply-To: <556C813B.5020907@codesourcery.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-SW-Source: 2015-06/txt/msg00233.txt.bz2 On 06/01/2015 08:58 AM, Bernd Schmidt wrote: > This extends the previous vector-single support to also handle > worker-level predication. We can't use the shfl insn because workers > will live across multiple warps, so we use a location in memory to > broadcast the branch target. > This also fixes the oversight where basic blocks inside a parallel > region but outside all loops weren't being predicated. > > A special case is added for worker-single vector-partitioned; we add a > jump over the entire loop that is taken by the inactive workers and add > no predication inside this loop. > > Committed on gomp-4_0-branch. Thanks. This fixed the problems that I was seeing with variables outside of acc loops. I see that calls are being predicated at the moment. Those will need special handling once we tackle acc routines. Cesar