From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by sourceware.org (Postfix) with ESMTPS id 6DDCC3858C35 for ; Mon, 4 Dec 2023 02:01:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6DDCC3858C35 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 6DDCC3858C35 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=148.163.156.1 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1701655321; cv=none; b=KxFZkfXV24cm44m8VH0o3BAmKP+myoS5URMU2sSktB2y0pkNQ0HHhsQa2Bj9trjznUmAIDkiPYP31XDDibDJikgVqFGwCS+pBwhF9q72uRFomiR7YGR6F+wD5dBTysIjL0U0alYIseR+vh5VH/RmTLxELx+1u/EaQOjzBwHydvQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1701655321; c=relaxed/simple; bh=h4WKLGq5kBnMBy9QBEnYDDaD+uiMPj86DwlXGWp43wU=; h=DKIM-Signature:Message-ID:Date:MIME-Version:From:Subject:To; b=ZhaWjkwQMPSsyOUJ1h/hXov7cOaJrcwHmViU+hHkS6bp3RnXZUMqtkyOaRFdvNkGaFQDoSwOtX8xP3IdHsA2lea+x65uHf5kC2kGpKVkOBoWnsy1w8MaYmZd8fzNxFYXZVwcn7UPQb1r+Ei20RdkN2OD3jbFayL2e+oh9tLG2Mw= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from pps.filterd (m0353728.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3B3MMKGt004293; Mon, 4 Dec 2023 02:01:42 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=message-id : date : mime-version : from : subject : to : cc : references : in-reply-to : content-type : content-transfer-encoding; s=pp1; bh=vJpi8LoRe79lb9sIPKfY3MZGyDsuUDyxNWo7C+E5F8A=; b=PVuGYok7t+VYgqm9DyV19ApAES8HZBWGCKbHbK792v2OkZrABynXU7Dpk/ua3G+7WPiw YOkTPdAN/T/C7qGQCYU7UFEKRcAKdXsDQm0ektzux5unnizfi806M2KGeIz2lTZFn6I1 DCA837Ruw/otNj3ufeCsd4adNMF2BR6bYXbftX9RLUwRmaj4fx5c9vrI3xwMBtQhMQJF i4XOLXDFF/oV/PljG7AX9iZMiPk32DCcNnY9c9M9mO5mfgzH0zCFi9QfMwYAOSXMdZVc iPFZvFQbPEhgglPyngYuTRt8Buf1RlnfzlYB/V9//Tnj4OtOYA77w4SG0q0o5cMtSUIc LQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3ur6vatqgs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 04 Dec 2023 02:01:41 +0000 Received: from m0353728.ppops.net (m0353728.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3B41tcAd032160; Mon, 4 Dec 2023 02:01:41 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3ur6vatqga-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 04 Dec 2023 02:01:41 +0000 Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 3B4141EI030376; Mon, 4 Dec 2023 02:01:40 GMT Received: from smtprelay07.fra02v.mail.ibm.com ([9.218.2.229]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3urv8djbqg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 04 Dec 2023 02:01:40 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay07.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3B421ada14942848 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 4 Dec 2023 02:01:36 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9256A20063; Mon, 4 Dec 2023 02:01:36 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 1CD332004B; Mon, 4 Dec 2023 02:01:34 +0000 (GMT) Received: from [9.177.13.229] (unknown [9.177.13.229]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Mon, 4 Dec 2023 02:01:33 +0000 (GMT) Message-ID: Date: Mon, 4 Dec 2023 10:01:32 +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 From: "Kewen.Lin" Subject: Re: [PATCH v2] rs6000: Add new pass for replacement of contiguous addresses vector load lxv with lxvp To: Ajit Agarwal Cc: Segher Boessenkool , David Edelsohn , Peter Bergner , Michael Meissner , GCC Patches References: <77426697-1571-e180-add9-cfb6d10f8424@linux.ibm.com> Content-Language: en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 X-Proofpoint-GUID: m6L91X2odxlH7Sg7YtyL_LCBRj3bHwr_ X-Proofpoint-ORIG-GUID: E15y6WN9eU65N5KNNH7rRMEeprTUAZca 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-03_24,2023-11-30_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501 mlxscore=0 clxscore=1015 impostorscore=0 mlxlogscore=999 malwarescore=0 spamscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311060000 definitions=main-2312040013 X-Spam-Status: No, score=-5.5 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/1 17:10, Ajit Agarwal wrote: > Hello Kewen: > > On 24/11/23 3:01 pm, Kewen.Lin wrote: >> Hi Ajit, >> >> Don't forget to CC David (CC-ed) :), some comments are inlined below. >> >> on 2023/10/8 03:04, Ajit Agarwal wrote: >>> Hello All: >>> >>> This patch add new pass to replace contiguous addresses vector load lxv with mma instruction >>> lxvp. >> >> IMHO the current binding lxvp (and lxvpx, stxvp{x,}) to MMA looks wrong, it's only >> Power10 and VSX required, these instructions should perform well without MMA support. >> So one patch to separate their support from MMA seems to go first. >> > > I will make the changes for Power10 and VSX. > >>> This patch addresses one regressions failure in ARM architecture. >> >> Could you explain this? I don't see any test case for this. > > I have submitted v1 of the patch and there were regressions failure for Linaro. > I have fixed in version V2. OK, thanks for clarifying. So some unexpected changes on generic code in v1 caused the failure exposed on arm. > > >> Besides, it seems a bad idea to put this pass after reload? as register allocation >> finishes, this pairing has to be restricted by the reg No. (I didn't see any >> checking on the reg No. relationship for paring btw.) >> > > Adding before reload pass deletes one of the lxv and replaced with lxvp. This > fails in reload pass while freeing reg_eqivs as ira populates them and then I can't find reg_eqivs, I guessed you meant reg_equivs and moved this pass right before pass_reload (between pass_ira and pass_reload)? IMHO it's unexpected as those two passes are closely correlated. I was expecting to put it somewhere before ira. > vecload pass deletes some of insns and while freeing in reload pass as insn > is already deleted in vecload pass reload pass segfaults. > > Moving vecload pass before ira will not make register pairs with lxvp and > in ira and that will be a problem. Could you elaborate the obstacle for moving such pass before pass_ira? Basing on the status quo, the lxvp is bundled with OOmode, then I'd expect we can generate OOmode move (load) and use the components with unspec (or subreg with Peter's patch) to replace all the previous use places, it looks doable to me. > > Making after reload pass is the only solution I see as ira and reload pass > makes register pairs and vecload pass will be easier with generation of > lxvp. > > Please suggest. > >> Looking forward to the comments from Segher/David/Peter/Mike etc. Still looking forward. :) BR, Kewen