From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2756 invoked by alias); 5 Sep 2019 01:46:21 -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 2541 invoked by uid 89); 5 Sep 2019 01:46:19 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-18.8 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.1 spammy= X-HELO: esa3.mentor.iphmx.com Received: from esa3.mentor.iphmx.com (HELO esa3.mentor.iphmx.com) (68.232.137.180) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 05 Sep 2019 01:46:17 +0000 IronPort-SDR: ngpwly0vG6NQH20zhyO5hCr/GgM5XzoIEB+02mIjdp0J7YN180qvBc2fGoFYyaLPa515srbOiA Rog2HeYSyBOgJuDV7R3OakazC9H1/3yPYWMw+WQlbd1TUFcHFOvDECAVBxdd5GpvsVjSS1hmX8 yShQpb1B8wz80B14UEO9xwC5BJt9azlfC8M5EsbwGEwv27UeKKSwvXSfVHRaELdMXbu5J8C5G3 ZpztdOv05tBDDpt89ZE1hLUeFpj6iddiBOoz7Y29uLTWIkxRcxPPKT4kRXci+6oTI4W5qq9K2S 7gA= Received: from orw-gwy-02-in.mentorg.com ([192.94.38.167]) by esa3.mentor.iphmx.com with ESMTP; 04 Sep 2019 17:46:15 -0800 IronPort-SDR: eNTY2Tyx9vr+IBm9vYM8/llXZBl6SE1WqYOx2y6fFQ+tjTvR74pgv47TuB4jQGCBO1+RsRKGgC niGTbUWYxw5914jM3oN15vC5xMcW0N0m0dVHkY+VBkS1XAgdZCmu7xjaKKf8IlxyzowtvpBJjo A2Bqv5xDvwi6bKrkshePTmMxmw4ZQR0DxZrY0c80VAa8XPj9IQJHJEROxbcLEfpwROj0GURyNq qk+smwDVpKcJQ/d0OVaAjPY3vmSGNzhvsDKnrYCJQAI5RzCQ6bgOBk8smxH0OGWN01Twmvu08E /3s= From: Julian Brown To: CC: Andrew Stubbs Subject: [PATCH 3/6] [og9] AMD GCN adjustments for middle-end worker partitioning Date: Thu, 05 Sep 2019 01:46:00 -0000 Message-ID: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Return-Path: julian@codesourcery.com X-IsSubscribed: yes X-SW-Source: 2019-09/txt/msg00230.txt.bz2 This patch renames the TARGET_GOACC_ADJUST_PROPAGATION_RECORD hook introduced in the GCN backend by a previous merge to TARGET_GOACC_CREATE_PROPAGATION_RECORD, and removes a FIXME relating to missing worker-partitioning support. Julian ChangeLog gcc/ * config/gcn/gcn-protos.h (gcn_goacc_adjust_propagation_record): Rename prototype to... (gcn_goacc_create_propagation_record): This. * config/gcn/gcn-tree.c (gcn_goacc_adjust_propagation_record): Rename function to... (gcn_goacc_create_propagation_record): This. Adjust comment. * config/gcn/gcn.c (gcn_init_builtins): Override decls for BUILT_IN_GOACC_SINGLE_START, BUILT_IN_GOACC_SINGLE_COPY_START, BUILT_IN_GOACC_SINGLE_COPY_END and BUILT_IN_GOACC_BARRIER. (gcn_fork_join): Remove inaccurate comment. (TARGET_GOACC_ADJUST_PROPAGATION_RECORD): Rename to... (TARGET_GOACC_CREATE_PROPAGATION_RECORD): This. --- gcc/ChangeLog.openacc | 15 +++++++++++++++ gcc/config/gcn/gcn-protos.h | 2 +- gcc/config/gcn/gcn-tree.c | 6 +++--- gcc/config/gcn/gcn.c | 11 +++-------- 4 files changed, 22 insertions(+), 12 deletions(-) diff --git a/gcc/ChangeLog.openacc b/gcc/ChangeLog.openacc index a2b2dcfcf26..0d068ac8ae2 100644 --- a/gcc/ChangeLog.openacc +++ b/gcc/ChangeLog.openacc @@ -1,3 +1,18 @@ +2019-09-05 Julian Brown + + * config/gcn/gcn-protos.h (gcn_goacc_adjust_propagation_record): Rename + prototype to... + (gcn_goacc_create_propagation_record): This. + * config/gcn/gcn-tree.c (gcn_goacc_adjust_propagation_record): Rename + function to... + (gcn_goacc_create_propagation_record): This. Adjust comment. + * config/gcn/gcn.c (gcn_init_builtins): Override decls for + BUILT_IN_GOACC_SINGLE_START, BUILT_IN_GOACC_SINGLE_COPY_START, + BUILT_IN_GOACC_SINGLE_COPY_END and BUILT_IN_GOACC_BARRIER. + (gcn_fork_join): Remove inaccurate comment. + (TARGET_GOACC_ADJUST_PROPAGATION_RECORD): Rename to... + (TARGET_GOACC_CREATE_PROPAGATION_RECORD): This. + 2019-09-05 Julian Brown * Makefile.in (OBJS): Add omp-sese.o. diff --git a/gcc/config/gcn/gcn-protos.h b/gcc/config/gcn/gcn-protos.h index da7faf29c70..1711862c6a2 100644 --- a/gcc/config/gcn/gcn-protos.h +++ b/gcc/config/gcn/gcn-protos.h @@ -37,7 +37,7 @@ extern rtx gcn_full_exec (); extern rtx gcn_full_exec_reg (); extern rtx gcn_gen_undef (machine_mode); extern bool gcn_global_address_p (rtx); -extern tree gcn_goacc_adjust_propagation_record (tree record_type, bool sender, +extern tree gcn_goacc_create_propagation_record (tree record_type, bool sender, const char *name); extern void gcn_goacc_adjust_gangprivate_decl (tree var); extern void gcn_goacc_reduction (gcall *call); diff --git a/gcc/config/gcn/gcn-tree.c b/gcc/config/gcn/gcn-tree.c index c6b6302e9ed..04902a39b29 100644 --- a/gcc/config/gcn/gcn-tree.c +++ b/gcc/config/gcn/gcn-tree.c @@ -667,12 +667,12 @@ gcn_goacc_reduction (gcall *call) } } -/* Implement TARGET_GOACC_ADJUST_PROPAGATION_RECORD. +/* Implement TARGET_GOACC_CREATE_PROPAGATION_RECORD. - Tweak (worker) propagation record, e.g. to put it in shared memory. */ + Create (worker) propagation record in shared memory. */ tree -gcn_goacc_adjust_propagation_record (tree record_type, bool sender, +gcn_goacc_create_propagation_record (tree record_type, bool sender, const char *name) { tree type = record_type; diff --git a/gcc/config/gcn/gcn.c b/gcc/config/gcn/gcn.c index f3f112d95a9..ca9321b5f25 100644 --- a/gcc/config/gcn/gcn.c +++ b/gcc/config/gcn/gcn.c @@ -3468,8 +3468,6 @@ gcn_init_builtins (void) TREE_NOTHROW (gcn_builtin_decls[i]) = 1; } -/* FIXME: remove the ifdef once OpenACC support is merged upstream. */ -#ifdef BUILT_IN_GOACC_SINGLE_START /* These builtins need to take/return an LDS pointer: override the generic versions here. */ @@ -3486,7 +3484,6 @@ gcn_init_builtins (void) set_builtin_decl (BUILT_IN_GOACC_BARRIER, gcn_builtin_decls[GCN_BUILTIN_ACC_BARRIER], false); -#endif } /* Expand the CMP_SWAP GCN builtins. We have our own versions that do @@ -4765,8 +4762,6 @@ static bool gcn_fork_join (gcall *ARG_UNUSED (call), const int *ARG_UNUSED (dims), bool ARG_UNUSED (is_fork)) { - /* GCN does not use the fork/join concept invented for NVPTX. - Instead we use standard autovectorization. */ return false; } @@ -6029,9 +6024,9 @@ print_operand (FILE *file, rtx x, int code) #define TARGET_FUNCTION_VALUE_REGNO_P gcn_function_value_regno_p #undef TARGET_GIMPLIFY_VA_ARG_EXPR #define TARGET_GIMPLIFY_VA_ARG_EXPR gcn_gimplify_va_arg_expr -#undef TARGET_GOACC_ADJUST_PROPAGATION_RECORD -#define TARGET_GOACC_ADJUST_PROPAGATION_RECORD \ - gcn_goacc_adjust_propagation_record +#undef TARGET_GOACC_CREATE_PROPAGATION_RECORD +#define TARGET_GOACC_CREATE_PROPAGATION_RECORD \ + gcn_goacc_create_propagation_record #undef TARGET_GOACC_ADJUST_GANGPRIVATE_DECL #define TARGET_GOACC_ADJUST_GANGPRIVATE_DECL gcn_goacc_adjust_gangprivate_decl #undef TARGET_GOACC_FORK_JOIN -- 2.22.0