From patchwork Wed May 18 11:16:53 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Prathamesh Kulkarni X-Patchwork-Id: 54153 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id EBE0F3857424 for ; Wed, 18 May 2022 11:19:30 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EBE0F3857424 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1652872771; bh=/bTW6aPsW6RIcvGyuM4Ag9mQq7WEHtZVJ54EvcgqIyA=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=N9wVXxN1T2zW/T3i+pnBUd9PGo/Otu6EK2+ockXu6Znbi5qhFpfowtdNMbpoGPuok oaqdpRsX+oDYGRgCPbQgmWR1tEO8kxK3Ka5sa/vS3bXRlrpu6SAj7HpJC8TAX5Plak KXmJ/xwth5WQIfhaO2oHp0tTx5kx0kwM9L56Pnig= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com [IPv6:2a00:1450:4864:20::62e]) by sourceware.org (Postfix) with ESMTPS id 819783858C56 for ; Wed, 18 May 2022 11:17:31 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 819783858C56 Received: by mail-ej1-x62e.google.com with SMTP id dk23so3114593ejb.8 for ; Wed, 18 May 2022 04:17:31 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=/bTW6aPsW6RIcvGyuM4Ag9mQq7WEHtZVJ54EvcgqIyA=; b=gWO0kq4vLCRChLflIeE8WN64v7P6HasDSK9oDRQZWhbYCgCQcRTH4xS56tjl4eW90/ 1YWTJa48hrmW0/15CvoT/n5TJ+/x5y4mdR7yyKS+QFsfid2nMJSpQri2uz0OMWhPB63P JYokEA8ATNU616fI89eBKxhsD5U6dzZwtrdrdLib6kEi7V6uAMetQmY9P/WZ2G4BFEYy lTqc5bcta7qjlB/6TJb2aF/m9eabGZchWrjWc5zbfI0S5rFTd4PK87Ne5wvhB4YpZE3O hRTPerc9nT4F//6taB8DOJhwZaarS+hdT5mKEP6WSvXqbZN9zYd1crsq7HcnpnDGJ4uw vyWA== X-Gm-Message-State: AOAM530pGbMTh4ThP0TDfr4VpOjRNtIl3Vrip3trOGJHDByF8PQYAv3v Pf7p4eGKiygkEC4bJs3MK/gh6ddsmMsBS4lPypLb2riAJJLpgg== X-Google-Smtp-Source: ABdhPJzdlBGo5wstksQHhVij6EMGS+gGLf24Fqr+jJCFM3gEN4rt9EekHLmXKFeYcmTSxvthTPQqsxWBQFGLsPHFua8= X-Received: by 2002:a17:907:160e:b0:6f4:54c0:657e with SMTP id hb14-20020a170907160e00b006f454c0657emr24028591ejc.253.1652872650132; Wed, 18 May 2022 04:17:30 -0700 (PDT) MIME-Version: 1.0 Date: Wed, 18 May 2022 16:46:53 +0530 Message-ID: Subject: [2/9] ARM changes to adjust vec_perm_const hook To: gcc Patches , Kyrill Tkachov X-Spam-Status: No, score=-8.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Prathamesh Kulkarni via Gcc-patches From: Prathamesh Kulkarni Reply-To: Prathamesh Kulkarni Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" Hi, The attached patch adjusts vec_perm_const hook to accommodate the new parameter. For rationale, please see: https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595128.html OK to commit if bootstrap+test passes ? Thanks, Prathamesh diff --git a/gcc/config/arm/arm.cc b/gcc/config/arm/arm.cc index 2afe0445ed5..48759532ab3 100644 --- a/gcc/config/arm/arm.cc +++ b/gcc/config/arm/arm.cc @@ -31813,9 +31813,12 @@ arm_expand_vec_perm_const_1 (struct expand_vec_perm_d *d) /* Implement TARGET_VECTORIZE_VEC_PERM_CONST. */ static bool -arm_vectorize_vec_perm_const (machine_mode vmode, rtx target, rtx op0, rtx op1, - const vec_perm_indices &sel) +arm_vectorize_vec_perm_const (machine_mode vmode, machine_mode op_mode, rtx target, + rtx op0, rtx op1, const vec_perm_indices &sel) { + if (vmode != op_mode) + return false; + struct expand_vec_perm_d d; int i, nelt, which; From patchwork Wed May 18 11:17:02 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Prathamesh Kulkarni X-Patchwork-Id: 54154 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 6ED2D3857404 for ; Wed, 18 May 2022 11:20:27 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6ED2D3857404 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1652872827; bh=JLg8W1YrvR4bUCn815AiKhtPWEaUlQ05QEO6YO3lNsM=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=RxGm/H64BmpneP1xqtMElm+EBdnu11Rib8UtxD1uskh/LGNSHnStuoWKR3IcaBawL KZNcF0l2d8AF+XYvm5fS7CnL50kSbDRXW40hvkb5hXKqpIiu1BHWrB1u+zpgwDwEds pv2Te1Cp8MgUrDrn69U+I/9SjZwhYZ2NhcPisREw= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) by sourceware.org (Postfix) with ESMTPS id BB2C5385742A for ; Wed, 18 May 2022 11:17:39 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org BB2C5385742A Received: by mail-ed1-x52e.google.com with SMTP id j28so2501943eda.13 for ; Wed, 18 May 2022 04:17:39 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=JLg8W1YrvR4bUCn815AiKhtPWEaUlQ05QEO6YO3lNsM=; b=3Q11NnUwrQkELRCi4GWCKSH27Ez83LdwskmG1R28+lznrBBOxMZmeA5v22CCK5eSpu pvbyukcHkECC/ynDthSYQDONyp6c3z5NoCVK5z+1EXyVwtgNEaouAjvCM/FqBtdhsvlK xzU2RrB9NhdrMk5JsR2MLQOkhzY1ZwX7FSclHCfoyNHgD6h51ahWZhqvC+jEr1fQ2lbd 78QwZyivcTxfmJ4IcAMu/B+AuCU3c4Gr6E2Y12QUMsiPJdTsuJ5POZc26blCIMRxgRdt /kpw2G7ylteTBivF0xEmly7XWxxHdsTf7nyPsk0mU0UdQWOUjQ/oJDuJ4cskroScNUR0 fbog== X-Gm-Message-State: AOAM531Elr0uet5Yclf0b0fT5q370g5gkoAWSJ7Mt4B11SQl8JCfNMKS AaWFoaCtHsFABguyW2vwLLlZv0rsBlUzboKRrspn6LIVa5/3PA== X-Google-Smtp-Source: ABdhPJwNc50QT5qWaj6NDjv4uhdnW9cA0uPdM45XuiDZfy6g3uOTXeZaxOGcMFGfgm16J2KxKsR4h6hZnCoqAxZiBJQ= X-Received: by 2002:a05:6402:6d9:b0:42a:b514:a992 with SMTP id n25-20020a05640206d900b0042ab514a992mr14974827edy.209.1652872658451; Wed, 18 May 2022 04:17:38 -0700 (PDT) MIME-Version: 1.0 Date: Wed, 18 May 2022 16:47:02 +0530 Message-ID: Subject: [3/9] i386 changes to adjust vec_perm_const hook To: gcc Patches , Uros Bizjak X-Spam-Status: No, score=-8.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Prathamesh Kulkarni via Gcc-patches From: Prathamesh Kulkarni Reply-To: Prathamesh Kulkarni Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" Hi, The attached patch adjusts vec_perm_const hook to accommodate the new parameter. For rationale, please see: https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595128.html Bootstrapped+tested on x86_64-linux-gnu. OK to commit ? Thanks, Prathamesh diff --git a/gcc/config/i386/i386-expand.cc b/gcc/config/i386/i386-expand.cc index 806e1f5aaa3..87f02d62338 100644 --- a/gcc/config/i386/i386-expand.cc +++ b/gcc/config/i386/i386-expand.cc @@ -22060,9 +22060,12 @@ canonicalize_perm (struct expand_vec_perm_d *d) /* Implement TARGET_VECTORIZE_VEC_PERM_CONST. */ bool -ix86_vectorize_vec_perm_const (machine_mode vmode, rtx target, rtx op0, - rtx op1, const vec_perm_indices &sel) +ix86_vectorize_vec_perm_const (machine_mode vmode, machine_mode op_mode, rtx target, + rtx op0, rtx op1, const vec_perm_indices &sel) { + if (vmode != op_mode) + return false; + struct expand_vec_perm_d d; unsigned char perm[MAX_VECT_LEN]; unsigned int i, nelt, which; diff --git a/gcc/config/i386/i386-expand.h b/gcc/config/i386/i386-expand.h index 9d320c29552..6c650196c9c 100644 --- a/gcc/config/i386/i386-expand.h +++ b/gcc/config/i386/i386-expand.h @@ -48,8 +48,9 @@ rtx gen_push (rtx arg); rtx gen_pop (rtx arg); rtx ix86_expand_builtin (tree exp, rtx target, rtx subtarget, machine_mode mode, int ignore); -bool ix86_vectorize_vec_perm_const (machine_mode vmode, rtx target, rtx op0, - rtx op1, const vec_perm_indices &sel); +bool ix86_vectorize_vec_perm_const (machine_mode vmode, machine_mode op_mode, + rtx target, rtx op0, rtx op1, + const vec_perm_indices &sel); bool ix86_notrack_prefixed_insn_p (rtx_insn *); machine_mode ix86_split_reduction (machine_mode mode); void ix86_expand_divmod_libfunc (rtx libfunc, machine_mode mode, rtx op0, diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index 175ce013e5d..50112a8efee 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -15836,7 +15836,7 @@ sel[7] = 15; } vec_perm_indices indices (sel, 2, 8); - bool ok = targetm.vectorize.vec_perm_const (V8SImode, target, + bool ok = targetm.vectorize.vec_perm_const (V8SImode, V8SImode, target, arg0, arg1, indices); gcc_assert (ok); emit_move_insn (operands[0], @@ -24569,7 +24569,7 @@ sel[3] = 7; } vec_perm_indices indices (sel, arg0 != arg1 ? 2 : 1, 4); - bool ok = targetm.vectorize.vec_perm_const (V4SImode, target, + bool ok = targetm.vectorize.vec_perm_const (V4SImode, V4SImode, target, arg0, arg1, indices); gcc_assert (ok); emit_move_insn (operands[0], From patchwork Wed May 18 11:17:15 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Prathamesh Kulkarni X-Patchwork-Id: 54155 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 292123857341 for ; Wed, 18 May 2022 11:21:24 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 292123857341 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1652872884; bh=JkhSMEylkaV9I3qI4kK3xfDot8GEpgi7Wlm+Gaiz23c=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=EYB1co9dQasGH+EVDLHMr+1yJ6SsMms/qaw7mNigKFmGD/rnhhWf5uMJ9CXlz+Uu+ d4DFbxfnl8tG7rmsMtG7x5ai4DVb3gDC5s4RxD6MSh1SwB4kPn8kOLa99kVYoAKBRI a9mSOWAERj8eINkAY3LbKKKc24eIfiS3ftENAGEo= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com [IPv6:2a00:1450:4864:20::633]) by sourceware.org (Postfix) with ESMTPS id 9D2183857425 for ; Wed, 18 May 2022 11:17:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 9D2183857425 Received: by mail-ej1-x633.google.com with SMTP id i27so3116275ejd.9 for ; Wed, 18 May 2022 04:17:53 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=JkhSMEylkaV9I3qI4kK3xfDot8GEpgi7Wlm+Gaiz23c=; b=JKFkRw7RhRmGGQVtQjFhraTVF1igplIRVEo+KwHHOaU90cBGa0cBYkDPVbH3kGnb9M DwJvG+N/mZX0g0U/of6itBkdM93aqPqtQ7hBN7Iapge/IoGlOnGNtyI7DKy33JB+Jvh6 1pAD5XjWphDIMh9FUMFBDDWdlrZwT5vZToTr2VtUoznFQYzSYJ5c17p3cDJrl5ouPNdo Tnmiz2x4QlMaIgj7HohFSA7dkunF5b2Bpx599krevHioIM2N73ul3LqWSF1EQ7GFPyi5 /wpJOrbCryuT2WrNdM4cxfTP96qdKxC1Me/DGRgePycLGPIQ3dE3435R7vOBGUbYXizE ahMA== X-Gm-Message-State: AOAM533M/PJHByPJSWTJtv1bJHoLgHsnbRCIDKJXrNytN9dRWSwn2YEG 0SI/+whVegoJNocsMxcm2rNvPX9gndFkw1wOMokQZ9mPJsOpIw== X-Google-Smtp-Source: ABdhPJzTDg1L4I3NO0XzJ4Oyta1mLqsSg/K+zUoDwZXEjIq39evHnG7cqWwnLjnSwfvadzCe16/uweONb64d8tR4XMs= X-Received: by 2002:a17:907:60d3:b0:6f5:c4c3:2f96 with SMTP id hv19-20020a17090760d300b006f5c4c32f96mr23531957ejc.724.1652872671744; Wed, 18 May 2022 04:17:51 -0700 (PDT) MIME-Version: 1.0 Date: Wed, 18 May 2022 16:47:15 +0530 Message-ID: Subject: [4/9] rs6000 changes to vec_perm_const hook. To: gcc Patches X-Spam-Status: No, score=-9.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Prathamesh Kulkarni via Gcc-patches From: Prathamesh Kulkarni Reply-To: Prathamesh Kulkarni Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" Hi, The attached patch adjusts vec_perm_const hook to accommodate the new parameter. For rationale, please see: https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595128.html OK to commit if bootstrap+test passes ? Thanks, Prathamesh diff --git a/gcc/config/rs6000/rs6000.cc b/gcc/config/rs6000/rs6000.cc index d4defc855d0..8c87101692a 100644 --- a/gcc/config/rs6000/rs6000.cc +++ b/gcc/config/rs6000/rs6000.cc @@ -23294,9 +23294,12 @@ rs6000_expand_vec_perm_const_1 (rtx target, rtx op0, rtx op1, /* Implement TARGET_VECTORIZE_VEC_PERM_CONST. */ static bool -rs6000_vectorize_vec_perm_const (machine_mode vmode, rtx target, rtx op0, - rtx op1, const vec_perm_indices &sel) +rs6000_vectorize_vec_perm_const (machine_mode vmode, rtx op_mode, rtx target, + rtx op0, rtx op1, const vec_perm_indices &sel) { + if (vmode != op_mode) + return false; + bool testing_p = !target; /* AltiVec (and thus VSX) can handle arbitrary permutations. */ From patchwork Wed May 18 11:17:49 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Prathamesh Kulkarni X-Patchwork-Id: 54156 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 95A183858036 for ; Wed, 18 May 2022 11:22:20 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 95A183858036 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1652872940; bh=R533wM/QZIDE5YA2ZfeiiLJ5RlzHZlT61OZCs0Dyl1A=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=MGkb+FBX7S73FHF80cNgtkW2TYAsiBlO/vCBinRZNzw7gfDaxpQhFUgn/SGraEBz6 yUTG3ilu0Ocrmxuyr+bUUKE8UBIfcnOj1+2UQ7wc6xfwnpaiemmVAIzEcwYXGVspyf yYpQTLe6/CJ/uJGLjMuhQQ35bmAvsxMyFANyyfV4= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-ed1-x536.google.com (mail-ed1-x536.google.com [IPv6:2a00:1450:4864:20::536]) by sourceware.org (Postfix) with ESMTPS id 2240B385782C for ; Wed, 18 May 2022 11:18:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 2240B385782C Received: by mail-ed1-x536.google.com with SMTP id s3so2526976edr.9 for ; Wed, 18 May 2022 04:18:27 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=R533wM/QZIDE5YA2ZfeiiLJ5RlzHZlT61OZCs0Dyl1A=; b=HTIrEOuxMRQTmclDRns+nyId38K4C3AdZHVemKtmzLlg+phIPrk5wZtvj1uNgROmqA udhU+Z+acRp2OjMUwLydd6Fqq7UNRtEqlia5EFcBmzqbFrftWtGjQt2Z8k97KzitiEkl N1YzUMhxTwwsn30D3CL4GJNAdJuezQZFuAFCeNANaf3sWYRmBai1ypFFm6E98sYs+WwO qy30MrHYs87Ju8yYfa9Ez4PnOm+R7TjGeO2vqfSTwMjYmG/E36PLeeBowsxCwATPOGzt 5/toAdsOxaleBK0g7tjR5SfYOx6hinqEhr8PsWcA/MKCSuFThDyQKK44F8Frx3d8FOJx 1B/g== X-Gm-Message-State: AOAM532Dp9zhw44ShywLC90FedGUuT6AGwXeoiVHCM2MMocXXp8VJ9Yu qcOliA3ObyqvgFArGEvn05nODmSrZD1MuNAlLWauyX2n9LnPvg== X-Google-Smtp-Source: ABdhPJxMt8zfqJ8LDLn3/HaMTZFYU4U15jFKDhmXiyq32jOv/sYiv9mCgmFGxRLHs9kyy1dtLIDM9NUQOaf9bloL4EI= X-Received: by 2002:a05:6402:3550:b0:427:c668:40d9 with SMTP id f16-20020a056402355000b00427c66840d9mr23835843edd.199.1652872705892; Wed, 18 May 2022 04:18:25 -0700 (PDT) MIME-Version: 1.0 Date: Wed, 18 May 2022 16:47:49 +0530 Message-ID: Subject: [5/9] mips changes to adjust vec_perm_const hook To: gcc Patches X-Spam-Status: No, score=-9.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Prathamesh Kulkarni via Gcc-patches From: Prathamesh Kulkarni Reply-To: Prathamesh Kulkarni Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" Hi, The attached patch adjusts vec_perm_const hook to accommodate the new parameter. For rationale, please see: https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595128.html Unfortunately, I am not sure how to cross test this patch. make all-gcc stage-1 seems to build fine. Is it OK to commit the patch ? Thanks, Prathamesh diff --git a/gcc/config/mips/mips.cc b/gcc/config/mips/mips.cc index e64928f4113..5eb845960e1 100644 --- a/gcc/config/mips/mips.cc +++ b/gcc/config/mips/mips.cc @@ -21790,9 +21790,13 @@ mips_expand_vec_perm_const_1 (struct expand_vec_perm_d *d) /* Implement TARGET_VECTORIZE_VEC_PERM_CONST. */ static bool -mips_vectorize_vec_perm_const (machine_mode vmode, rtx target, rtx op0, - rtx op1, const vec_perm_indices &sel) +mips_vectorize_vec_perm_const (machine_mode vmode, machine_mode op_mode, + rtx target, rtx op0, rtx op1, + const vec_perm_indices &sel) { + if (vmode != op_mode) + return false; + struct expand_vec_perm_d d; int i, nelt, which; unsigned char orig_perm[MAX_VECT_LEN]; From patchwork Wed May 18 11:18:13 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Prathamesh Kulkarni X-Patchwork-Id: 54157 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 87A063857830 for ; Wed, 18 May 2022 11:23:17 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 87A063857830 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1652872997; bh=xgHpr0r/HqLtRs54jfE30OXoT99/xrem2lJy/cPmpRc=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=V2N3LrhTP2HlcFRKfKkSsVLsfj8Rf7zQEzfxz8GIYIc7+JIXrJY+CTs/bn04QYzxT GIthJCAY49rUbfE8k0N+gLLFuUmoCnGhCdlnwt6qf364xhe2KYnF2Mhq77JqiSB3r0 ZYE0ywjRlafHwrcGbekksGUVH5H6YEWQdxm+YhqU= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com [IPv6:2a00:1450:4864:20::62e]) by sourceware.org (Postfix) with ESMTPS id 1AA973858C2D for ; Wed, 18 May 2022 11:18:51 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 1AA973858C2D Received: by mail-ej1-x62e.google.com with SMTP id wh22so2997486ejb.7 for ; Wed, 18 May 2022 04:18:51 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=xgHpr0r/HqLtRs54jfE30OXoT99/xrem2lJy/cPmpRc=; b=IxCzpUuXhK0DOj8qEbtOm7O23tyigXw2AIwRvR8VZaWZF4i8fGmNzxOS8o70wnECAK +ljn+wZUAykD/sTuiAEi8RE2pcbWTy82d+RL4An9acVwhmDgAhdKfvV6tP+4eJ7CJq+w +3wkPevzGvI/Ys+D+OMytS4InkqQh1Nzcbt4rVs/drSQ+sVpi3o96WopUb6f57yXluFV eShrPnVVwhQGSZgBY6ahgYkRZWab9PC7EcvuSVF4WvruGBYcJ0WBCTqt8lAwKBgm4dWL 4nJ5N1Xi/TGrMi2z1VkJlQbDKt6zp8Jlmyt3q6A1xDlJWU00QQvKvDorqri6p5nFpIIF jDRg== X-Gm-Message-State: AOAM533Jsk027JVH46lWKj8D1EZ6QjWmPalUH9x5mSUY/UUZM7gnedJh RHGzmQMK/pG7gus++pe5pEmDLGYWhPIbIJ7lioF7CLqL1LJqNA== X-Google-Smtp-Source: ABdhPJw2G953fkDFu9k0gTtSnq+tI72Zqkif7IuL/HdedF6PCCYarr31JsBEzs5I6xv2GZDZuY0CcQxZ7QI9/zN0Iok= X-Received: by 2002:a17:907:6e88:b0:6fa:888d:74a7 with SMTP id sh8-20020a1709076e8800b006fa888d74a7mr23685420ejc.335.1652872729594; Wed, 18 May 2022 04:18:49 -0700 (PDT) MIME-Version: 1.0 Date: Wed, 18 May 2022 16:48:13 +0530 Message-ID: Subject: [6/9] sparc changes to adjust vec_perm_const hook To: gcc Patches X-Spam-Status: No, score=-8.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Prathamesh Kulkarni via Gcc-patches From: Prathamesh Kulkarni Reply-To: Prathamesh Kulkarni Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" Hi, The attached patch adjusts vec_perm_const hook to accommodate the new parameter. For rationale, please see: https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595128.html Unfortunately, I am not sure how to cross test this patch. make all-gcc stage-1 seems to build fine. Is it OK to commit the patch ? Thanks, Prathamesh diff --git a/gcc/config/sparc/sparc.cc b/gcc/config/sparc/sparc.cc index aca925befe1..7e08e86422a 100644 --- a/gcc/config/sparc/sparc.cc +++ b/gcc/config/sparc/sparc.cc @@ -712,8 +712,8 @@ static bool sparc_modes_tieable_p (machine_mode, machine_mode); static bool sparc_can_change_mode_class (machine_mode, machine_mode, reg_class_t); static HOST_WIDE_INT sparc_constant_alignment (const_tree, HOST_WIDE_INT); -static bool sparc_vectorize_vec_perm_const (machine_mode, rtx, rtx, rtx, - const vec_perm_indices &); +static bool sparc_vectorize_vec_perm_const (machine_mode, machine_mode, rtx, rtx, + rtx, const vec_perm_indices &); static bool sparc_can_follow_jump (const rtx_insn *, const rtx_insn *); static HARD_REG_SET sparc_zero_call_used_regs (HARD_REG_SET); @@ -13035,9 +13035,13 @@ sparc_expand_vec_perm_bmask (machine_mode vmode, rtx sel) /* Implement TARGET_VEC_PERM_CONST. */ static bool -sparc_vectorize_vec_perm_const (machine_mode vmode, rtx target, rtx op0, - rtx op1, const vec_perm_indices &sel) +sparc_vectorize_vec_perm_const (machine_mode vmode, machine_mode op_mode, + rtx target, rtx op0, rtx op1, + const vec_perm_indices &sel) { + if (vmode != op_mode) + return false; + if (!TARGET_VIS2) return false; From patchwork Wed May 18 11:18:38 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Prathamesh Kulkarni X-Patchwork-Id: 54158 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 452A7385737C for ; Wed, 18 May 2022 11:24:14 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 452A7385737C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1652873054; bh=iZj0OFNGUOqjMHyxPApJBqd8LeZs2LT1JGwyT3CtKfc=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=KFJN+xpn4mPsK0w4I1nr44WVer+uk/dWZ7rFrYXUa5nfFnDwR8wbl5mvd6B6Nrlva XnOp3FMymuvkUtg1WrbwcU3MT2QybqDlJOCOP2DTcB1z2upRYHsGZPvcfoNS4RIu7M KfnGxeMDHceiTXnj2tsesgmXF3Cw/uGCZ2jDM5Fs= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com [IPv6:2a00:1450:4864:20::535]) by sourceware.org (Postfix) with ESMTPS id 769A03857805 for ; Wed, 18 May 2022 11:19:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 769A03857805 Received: by mail-ed1-x535.google.com with SMTP id c12so2525710eds.10 for ; Wed, 18 May 2022 04:19:15 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=iZj0OFNGUOqjMHyxPApJBqd8LeZs2LT1JGwyT3CtKfc=; b=hY14RcorSwAFx43edWIc7TSS15U1+yb4ttE3jH7U1pFE59ZBnZK5WhDL9BPSWLhZWR 3SOpX/GFqnP4yE0z1mpbs//TAYyZ6E9oEj4Nl1XfVXD0StfdKd3zvnXaxQBZ2Noy8P5y r8TA8ve+U8of/ITslL2H+YQjKUH8mon7gIbmwMSOurY+N563SxZsRRV6x3ukTZzpdViX X8MBdbiydGJQKiqBVrrDCfphSjWhOnz4ogdg3yePYiHU41wcfK8zO4SxrDl5+sX2bj2V z5xecrJ94qAu2yV+GAWpVLM7ND3dnkb9Enni6KjFz7rWk3+rpu/lgRoYi7oVcmbBpwSa WWyw== X-Gm-Message-State: AOAM533SLuGluODeZuoY/xTpO5NE59NPCJhprNVA3u8BY4uIMyrF103c asnQuovm5i9CIViq2EefGgMRY+dXWM5mrcuzSJobHK7rksTBBA== X-Google-Smtp-Source: ABdhPJwRJDjLir513ArXwcXV56soGlEiqFFuucmnFOieEAI8l21V4x3AviZEn7rUzkwigk/VMxk3T9CQR0NpvwaNpQQ= X-Received: by 2002:a05:6402:40c6:b0:427:c908:597a with SMTP id z6-20020a05640240c600b00427c908597amr23874943edb.95.1652872754138; Wed, 18 May 2022 04:19:14 -0700 (PDT) MIME-Version: 1.0 Date: Wed, 18 May 2022 16:48:38 +0530 Message-ID: Subject: [7/9] ia64 changes to adjust vec_perm_const hook To: gcc Patches X-Spam-Status: No, score=-8.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Prathamesh Kulkarni via Gcc-patches From: Prathamesh Kulkarni Reply-To: Prathamesh Kulkarni Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" Hi, The attached patch adjusts vec_perm_const hook to accommodate the new parameter. For rationale, please see: https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595128.html Unfortunately, I am not sure how to cross test this patch. make all-gcc stage-1 seems to build fine. Is it OK to commit the patch ? Thanks, Prathamesh diff --git a/gcc/config/ia64/ia64.cc b/gcc/config/ia64/ia64.cc index f9fb681a36c..25e4a47e363 100644 --- a/gcc/config/ia64/ia64.cc +++ b/gcc/config/ia64/ia64.cc @@ -332,8 +332,8 @@ static fixed_size_mode ia64_get_reg_raw_mode (int regno); static section * ia64_hpux_function_section (tree, enum node_frequency, bool, bool); -static bool ia64_vectorize_vec_perm_const (machine_mode, rtx, rtx, rtx, - const vec_perm_indices &); +static bool ia64_vectorize_vec_perm_const (machine_mode, machine_mode, rtx, + rtx, rtx, const vec_perm_indices &); static unsigned int ia64_hard_regno_nregs (unsigned int, machine_mode); static bool ia64_hard_regno_mode_ok (unsigned int, machine_mode); @@ -11751,9 +11751,13 @@ ia64_expand_vec_perm_const_1 (struct expand_vec_perm_d *d) /* Implement TARGET_VECTORIZE_VEC_PERM_CONST. */ static bool -ia64_vectorize_vec_perm_const (machine_mode vmode, rtx target, rtx op0, - rtx op1, const vec_perm_indices &sel) +ia64_vectorize_vec_perm_const (machine_mode vmode, machine_mode op_mode, + rtx target, rtx op0, rtx op1, + const vec_perm_indices &sel) { + if (vmode != op_mode) + return false; + struct expand_vec_perm_d d; unsigned char perm[MAX_VECT_LEN]; unsigned int i, nelt, which; From patchwork Wed May 18 11:19:05 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Prathamesh Kulkarni X-Patchwork-Id: 54159 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 2E6D53857377 for ; Wed, 18 May 2022 11:26:06 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2E6D53857377 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1652873166; bh=7Ff0qDPidNZfwp8kgPMLuOhIUkBoedfPIJR4y7u1wIk=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=U1EPur6NvkAMbPHBgWyn2kqyao7OjQAuhfuLmJR2lbf1Mmg05Ces12THQ1HdxPIxz aoEEdMannL62podzueU/oj9ax4o2iH6r5bEyW56LShAhrmJN9D0Ow/bztMdCDL6sVS xZfCpm156iMJ4SmmCfbgRV2zwOZfx1iKXU4GGyQY= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [IPv6:2a00:1450:4864:20::52b]) by sourceware.org (Postfix) with ESMTPS id 6E63F3857805 for ; Wed, 18 May 2022 11:19:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 6E63F3857805 Received: by mail-ed1-x52b.google.com with SMTP id h11so1394148eda.8 for ; Wed, 18 May 2022 04:19:43 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=7Ff0qDPidNZfwp8kgPMLuOhIUkBoedfPIJR4y7u1wIk=; b=TRb+1jpGeo9yED35quCeHxZif01Jzugno/PUnLwPy91iVupa48gsH1eyY/NSVfSPuI w3cpkOcpV+3C5d1nOZxxOKkfJQGZd8Oq7PjzjSN/01jzMS84p9mmm2Rg4RRiuXq5uVmb MKASzLhqXG7N4NGs5KHyyj5mkhz7KK0lQ9WHAqb4/oTy1MpjF3AoAB8L54+BVJ9hCdx2 kxP/2nk/GZUkbAH124GCYbgSGx7l/DEOqCbBadAoh3uiOZ2IdGuZgNVKwAt2jLPgRJKa AUYkxLuwxrT6aEAjR86x3jqfmIGeWyMo737rG3gfcC0Ouxsc8KrYg/3SmLi3kdkydfjU pVuw== X-Gm-Message-State: AOAM533QkmdPll3JJ0vxXJ0H//bbLrvC9fkPodkPd0CfwIFf3BcoKijq oSjYYrdW6Yon/BjrtE/pPFJFugI5yE195eoC7tEhN4p3kHnP0Q== X-Google-Smtp-Source: ABdhPJxHVKNU8c7R48pjcv8ULAGbKEKEeN463knWzwpdbjOVBhhQnCmhRkyg/bqy72m2jR5MUP0oa5gaLI5jpPHtZOA= X-Received: by 2002:a05:6402:176b:b0:42a:a828:5d79 with SMTP id da11-20020a056402176b00b0042aa8285d79mr19513175edb.272.1652872782159; Wed, 18 May 2022 04:19:42 -0700 (PDT) MIME-Version: 1.0 Date: Wed, 18 May 2022 16:49:05 +0530 Message-ID: Subject: [8/9] s390 changes to adjust vec_perm_const hook To: gcc Patches X-Spam-Status: No, score=-9.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Prathamesh Kulkarni via Gcc-patches From: Prathamesh Kulkarni Reply-To: Prathamesh Kulkarni Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" Hi, The attached patch adjusts vec_perm_const hook to accommodate the new parameter. For rationale, please see: https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595128.html Unfortunately, I am not sure how to cross test this patch. make all-gcc stage-1 seems to build fine. Is it OK to commit the patch ? Thanks, Prathamesh diff --git a/gcc/config/s390/s390.cc b/gcc/config/s390/s390.cc index 45bbb6c3d70..e46566c526c 100644 --- a/gcc/config/s390/s390.cc +++ b/gcc/config/s390/s390.cc @@ -17175,9 +17175,12 @@ vectorize_vec_perm_const_1 (const struct expand_vec_perm_d &d) hook is supposed to emit the required INSNs. */ bool -s390_vectorize_vec_perm_const (machine_mode vmode, rtx target, rtx op0, rtx op1, - const vec_perm_indices &sel) +s390_vectorize_vec_perm_const (machine_mode vmode, machine_mode op_mode, rtx target, + rtx op0, rtx op1, const vec_perm_indices &sel) { + if (vmode != op_mode) + return false; + struct expand_vec_perm_d d; unsigned int i, nelt;