From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by sourceware.org (Postfix) with ESMTPS id 20F173858C78 for ; Tue, 12 Dec 2023 06:28:21 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 20F173858C78 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=linux.ibm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linux.ibm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 20F173858C78 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=148.163.158.5 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1702362502; cv=none; b=S/7E2E3uNnzzUrGbMJYdDnTjDdceBwRW8r6CF9nkM9Lh+C83d36+1UIQKTO6kVTWDSbu2z1P/QqT6dZru+KxxsZ4LnM/J8zBCQnc6BUEHOiTPXiZI5MsILOVSMOs0qKOkrz1cqHGST62FPOyBuhvhmPymkxCSSExbcIINxeg4u8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1702362502; c=relaxed/simple; bh=Ce1ohPjHElRaY4QYNMmv0Aoe9cghjGpy+yPqYSGhMP4=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From; b=rYhc71z8w7MnsFnvZ0XDwLO+5Azo7ozDfGtjVjdKLNNps07cYWSqp7prSf/CfNM69S4j+Ufr966bnfML+trIqC4Zj6Te4Xk/DNEYrlz6OyQQKEaxByuBZyu5S77f3S7qUm0pD41blEtwXqgBNYHu6cf7QSlKtyjZ+jzboUFeDn0= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from pps.filterd (m0360072.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BC6I7xW030133; Tue, 12 Dec 2023 06:28:20 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=message-id : date : mime-version : subject : to : cc : references : from : in-reply-to : content-type : content-transfer-encoding; s=pp1; bh=fQCYhtJaDRm1oYkODyk7lJEmDB7ur7JUOHHKsPEnc6w=; b=eN3AlJhrUfMZTLLR2u2DyiDq00iYwQbdXy309lk+BNKzA5NjbKxb2kZaK2+TjOt/NliL 4QEU+mxJKO9szBsBx3eyebbXK/PqyAfzvRhY3irSPiQgNZZwbiBFAg6BJwukJBjqbb7h p840PTlTQofsR8Ixb31SPlT8zZpjQVACRgX2dcDGKzYoMpXUEXN6B1H8ngwQrHSliGe7 mddOFa2FDOFNwHMO8OEtCvR7majHSxe2x+KIfHlIb9zzNGeqIydoeN05AE2NViOJyeDv +NN/Rex/ajVX4T1SPZLAYKvo2CdIgYhMrD93c8lk9yNIJCSZ2kI7dJUD+MnUZt94eHPb qg== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uxf1vvc73-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 12 Dec 2023 06:28:20 +0000 Received: from m0360072.ppops.net (m0360072.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BC5uc8J007068; Tue, 12 Dec 2023 06:28:19 GMT Received: from ppma12.dal12v.mail.ibm.com (dc.9e.1632.ip4.static.sl-reverse.com [50.22.158.220]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uxf1vvc6p-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 12 Dec 2023 06:28:19 +0000 Received: from pps.filterd (ppma12.dal12v.mail.ibm.com [127.0.0.1]) by ppma12.dal12v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 3BC4mp7T008544; Tue, 12 Dec 2023 06:28:19 GMT Received: from smtprelay06.fra02v.mail.ibm.com ([9.218.2.230]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw2jt7b2v-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 12 Dec 2023 06:28:19 +0000 Received: from smtpav03.fra02v.mail.ibm.com (smtpav03.fra02v.mail.ibm.com [10.20.54.102]) by smtprelay06.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BC6SG2k45547790 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 12 Dec 2023 06:28:16 GMT Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 568BF20040; Tue, 12 Dec 2023 06:28:16 +0000 (GMT) Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0B39420043; Tue, 12 Dec 2023 06:28:14 +0000 (GMT) Received: from [9.200.53.32] (unknown [9.200.53.32]) by smtpav03.fra02v.mail.ibm.com (Postfix) with ESMTP; Tue, 12 Dec 2023 06:28:13 +0000 (GMT) Message-ID: <8d07e569-5f58-1193-920e-7440f3590397@linux.ibm.com> Date: Tue, 12 Dec 2023 14:28:12 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.6.1 Subject: Re: [PATCH v2] rs6000: Add new pass for replacement of contiguous addresses vector load lxv with lxvp Content-Language: en-US To: Ajit Agarwal Cc: Segher Boessenkool , David Edelsohn , Peter Bergner , Michael Meissner , GCC Patches References: <77426697-1571-e180-add9-cfb6d10f8424@linux.ibm.com> <57d3fbcb-98b6-4658-8d08-e30f8c68a18c@linux.ibm.com> <11198028-5b04-4ebd-9374-a78dc85376a8@linux.ibm.com> <5467f44c-7b16-444d-a292-8da237f7a9f5@linux.ibm.com> <75bdc1fc-23c9-4ca2-a338-fc1328319114@linux.ibm.com> From: "Kewen.Lin" In-Reply-To: <75bdc1fc-23c9-4ca2-a338-fc1328319114@linux.ibm.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 X-Proofpoint-GUID: Q9u82VeMSfJFmqRayLV8EnDUES14WsV8 X-Proofpoint-ORIG-GUID: g9NyEMoD26yJrS6Vyae8Ygp2H3GtsiY8 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-12_02,2023-12-07_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=0 clxscore=1015 mlxscore=0 mlxlogscore=999 bulkscore=0 adultscore=0 impostorscore=0 phishscore=0 malwarescore=0 lowpriorityscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312120049 X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,NICE_REPLY_A,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,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 List-Id: Hi Ajit, on 2023/12/8 16:01, Ajit Agarwal wrote: > Hello Kewen: > [snip...] > With UNSPEC_MMA_EXTRACT I could generate the register pair but functionally here is the > below code which is incorrect. > > l lxvp %vs0,0(%r4) > xxlor %vs32,%vs0,%vs0 > xvf32ger 0,%vs34,%vs32 > xvf32gerpp 0,%vs34,%vs33 > xxmfacc 0 > stxvp %vs2,0(%r3) > stxvp %vs0,32(%r3) > blr > > > Here is the RTL Code: > > (insn 19 4 20 2 (set (reg:OO 124 [ *ptr_4(D) ]) > (mem:OO (reg/v/f:DI 122 [ ptr ]) [0 *ptr_4(D)+0 S16 A128])) -1 > (nil)) > (insn 20 19 9 2 (set (reg:V16QI 129 [orig:124 *ptr_4(D) ] [124]) > (subreg:V16QI (reg:OO 124 [ *ptr_4(D) ]) 0)) -1 > (nil)) > (insn 9 20 11 2 (set (reg:XO 119 [ _7 ]) > (unspec:XO [ > (reg/v:V16QI 123 [ src ]) > (reg:V16QI 129 [orig:124 *ptr_4(D) ] [124]) > ] UNSPEC_MMA_XVF32GER)) 2195 {mma_xvf32ger} > (expr_list:REG_DEAD (reg:OO 124 [ *ptr_4(D) ]) > (nil))) > (insn 11 9 12 2 (set (reg:XO 120 [ _9 ]) > (unspec:XO [ > (reg:XO 119 [ _7 ]) > (reg/v:V16QI 123 [ src ]) > (reg:V16QI 125 [ MEM[(__vector unsigned char *)ptr_4(D) + 16B] ]) > ] UNSPEC_MMA_XVF32GERPP)) 2209 {mma_xvf32gerpp} > (expr_list:REG_DEAD (reg:V16QI 125 [ MEM[(__vector unsigned char *)ptr_4(D) + 16B] ]) > (expr_list:REG_DEAD (reg/v:V16QI 123 [ src ]) > (expr_list:REG_DEAD (reg:XO 119 [ _7 ]) > (nil))))) > (insn 12 11 18 2 (set (mem:XO (reg:DI 126) [1 *dst_10(D)+0 S64 A128]) > (reg:XO 120 [ _9 ])) "../gcc/testsuite/g++.target/powerpc/vecload.C":13:8 2182 {*movxo} > (expr_list:REG_DEAD (reg:DI 126) > (expr_list:REG_DEAD (reg:XO 120 [ _9 ]) > (nil)))) > (note 18 12 0 NOTE_INSN_DELETED) > > r124 and r129 conflicts live range amd ira generates different registers which will not > serve our purpose. > > Making r124 and r129 as same will not allocate register by ira as r124 could have both OOmode > and V16QImode. > > Doing this pass before ira_pass has such above issues and we could solve them after making > after reload pass. Could you also attach your latest WIP patch? I'm going to look into the extra move issue with it. Thanks! BR, Kewen