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 CA3913858D20 for ; Sun, 7 Apr 2024 16:14:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org CA3913858D20 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 CA3913858D20 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=1712506494; cv=none; b=LhLVkOIC+8/LqWwCy79yyAueKvtk6r1zG5rVlH00TAO5o0dBx8uGgwDf7qX9yHOvdGwQDFsYizG67B94AsB8t/MFic2wBnz7UzLYgulIFP1hwWBo9XRMJchvRWeziihF3WCeavNNyigKB5QMohjvsXCYbPQsA0rV99/u/OEYjBg= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1712506494; c=relaxed/simple; bh=va3zT1W5RZrTUb6vzsMLW8PTZvUGRCIeJH1RFLMG72c=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From; b=V3ZpsR7TerpOnfgpaou9VY73EnoBRZQDslXXJxTkKbrdJM1fpMf2WAxWrQasBRyA9BxMJVeRkPE9XxbjHd29I9Inj4v1v2WBmt90+wvNknYqTKIoZNhRZoWzFL4z3QkCTcDMVfKXL94M+3ExCnMGbWUdSTYGrTY0b2ibQ64/N7s= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from pps.filterd (m0353723.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 437FwtLm003656; Sun, 7 Apr 2024 16:14:52 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=F0pCRmfCSm2F4I2GSfKHfVVQ4EY3vOKNEAHAjBkrrs4=; b=PVIpBdvaQDJ00GviFyjNUnE2V9KQul8ZCLLgji2tYw8mYwkORv0mehv/DTG3yrnQCURB pOJZfAIROQuylovM3NkDXqy9WVPAfBg4T0b8J4YnTHn807wUAMNu4wysBftp89DQAU3J 91+THJjN+X1T/1lum13pB5RWvcH0UNqyjVlw4Lvu/6raK6+ix0Y8VU1A3qOTmKypaWnZ af1AvIGdyqWh6tWgIacbNsIht1MW396vTlgdzB6jSl+o/bhfQatI+d6VwqMMpUzli0sb JhhxGk6L6cZaCFoBEH5JgJPLMfPVq025I24ixkxPKf984a9OvfQvctLVW+RMqvDC89jR lA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3xbxjyr0w3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 07 Apr 2024 16:14:51 +0000 Received: from m0353723.ppops.net (m0353723.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 437GEp7l027123; Sun, 7 Apr 2024 16:14:51 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 3xbxjyr0w1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 07 Apr 2024 16:14:51 +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 437DP1je022583; Sun, 7 Apr 2024 16:14:50 GMT Received: from smtprelay06.wdc07v.mail.ibm.com ([172.16.1.73]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3xbhqnk9gv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 07 Apr 2024 16:14:50 +0000 Received: from smtpav01.dal12v.mail.ibm.com (smtpav01.dal12v.mail.ibm.com [10.241.53.100]) by smtprelay06.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 437GElOV27918958 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 7 Apr 2024 16:14:49 GMT Received: from smtpav01.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 65D9858066; Sun, 7 Apr 2024 16:14:47 +0000 (GMT) Received: from smtpav01.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0BE5E58064; Sun, 7 Apr 2024 16:14:47 +0000 (GMT) Received: from [9.61.131.238] (unknown [9.61.131.238]) by smtpav01.dal12v.mail.ibm.com (Postfix) with ESMTP; Sun, 7 Apr 2024 16:14:46 +0000 (GMT) Message-ID: <858f06ec-63c2-4066-a3f1-d5297aa9b863@linux.ibm.com> Date: Sun, 7 Apr 2024 11:14:46 -0500 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH, rs6000] Split TARGET_POWER8 from TARGET_DIRECT_MOVE [PR101865] (2/2) To: Segher Boessenkool Cc: GCC patches , David Edelsohn , "Kewen.Lin" , Michael Meissner References: <2656f0182df289ade33411ac579d2d5a229f5e4c.camel@vnet.ibm.com> <20221017180840.GJ25951@gate.crashing.org> Content-Language: en-US From: Peter Bergner In-Reply-To: <20221017180840.GJ25951@gate.crashing.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 X-Proofpoint-GUID: UuK-4yjpFc8-6HCHJtJL2DvDA39SJwZQ X-Proofpoint-ORIG-GUID: ySeNYR5Z-nUWVyUtVpU0s-PPWSLf9Fqn X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-04-07_10,2024-04-05_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 mlxscore=0 malwarescore=0 clxscore=1015 suspectscore=0 mlxlogscore=999 lowpriorityscore=0 spamscore=0 priorityscore=1501 phishscore=0 adultscore=0 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2404070129 X-Spam-Status: No, score=-3.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS,TXREP 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: I'm picking up Will's patches for this bug. As an FYI, this is the bug where _ARCH_PWR8 is conditional on TARGET_DIRECT_MOVE which can be disabled with -mno-vsx which is bad. I already posted the cleanup patch that the updated patch for this bug will rely on, that removed the OPTION_MASK_DIRECT_MOVE because it is fully redundant with OPTION_MASK_P8_VECTOR. I've also incorporated some of Ke Wen's review comments on Will's original patch. I have a couple of comments on your review though... On 10/17/22 1:08 PM, Segher Boessenkool wrote: > On Mon, Sep 19, 2022 at 11:13:20AM -0500, will schmidt wrote: >> @@ -24046,10 +24045,11 @@ static struct rs6000_opt_mask const rs6000_opt_masks[] = >> { "block-ops-vector-pair", OPTION_MASK_BLOCK_OPS_VECTOR_PAIR, >> false, true }, >> { "cmpb", OPTION_MASK_CMPB, false, true }, >> { "crypto", OPTION_MASK_CRYPTO, false, true }, >> { "direct-move", OPTION_MASK_DIRECT_MOVE, false, true }, >> + { "power8", OPTION_MASK_POWER8, false, true }, > > Why would we want a #pragma power8 ? Agreed, we don't want that. We have target attribute cpu=power8 for that. >> +mpower8 >> +Target Mask(POWER8) Var(rs6000_isa_flags) >> +Use instructions added in ISA 2.07 (power8). > > There should not be such an option. It is set by -mcpu=power8 and > later, but can never be enabled or disabled direfctly by the user. So we need an OPTION_MASK_POWER8 to be created for use in rs6000_isa_flags, but the only way I see that we can do that is to create an option in rs6000.opt. Did I miss that there is another way? Otherwise, I was thinking of creating a dummy option that is WarnRemoved from the start ala: +;; This option exists only for its MASK. It is not intended for users. +mpower8 +Target Mask(POWER8) Var(rs6000_isa_flags) WarnRemoved + Is there a better way? The problem is P8 created lots of new instructions, but they were basically all vector and htm instructions. There were no general GPR or FPR instructions (ie, what we'd think of as base architecture) added, so there's no other OPTION_MASK_*/TARGET_* we can use as a P8 base architecture test. I'll note I tried just a bare "Target Mask(POWER8) Var(rs6000_isa_flags)" with no option name mentioned at all, but that didn't work, as no OPTION_MASK_POWER8 was created. Peter