From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate.crashing.org (gate.crashing.org [63.228.1.57]) by sourceware.org (Postfix) with ESMTP id 33A2A3858D3C for ; Mon, 14 Feb 2022 21:37:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 33A2A3858D3C Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=kernel.crashing.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=kernel.crashing.org Received: from gate.crashing.org (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.14.1) with ESMTP id 21ELapPx017125; Mon, 14 Feb 2022 15:36:51 -0600 Received: (from segher@localhost) by gate.crashing.org (8.14.1/8.14.1/Submit) id 21ELaoHQ017124; Mon, 14 Feb 2022 15:36:50 -0600 X-Authentication-Warning: gate.crashing.org: segher set sender to segher@kernel.crashing.org using -f Date: Mon, 14 Feb 2022 15:36:50 -0600 From: Segher Boessenkool To: HAO CHEN GUI Cc: gcc-patches , David , Bill Schmidt Subject: Re: [PATCH, rs6000] Remove TImode from mode iterator BOOL_128 [PR100694] Message-ID: <20220214213650.GA614@gate.crashing.org> References: <9fb9370d-52ef-e7f8-54cf-c245aba14e62@linux.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <9fb9370d-52ef-e7f8-54cf-c245aba14e62@linux.ibm.com> User-Agent: Mutt/1.4.2.3i X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00, JMQ_SPF_NEUTRAL, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) 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-List-Received-Date: Mon, 14 Feb 2022 21:37:53 -0000 Hi! On Wed, Feb 09, 2022 at 10:43:17AM +0800, HAO CHEN GUI wrote: > This patch removes TImode from mode iterator BOOL_128. Thus, bool operations (AND, IOR, XOR, NOT) > on TImode will be split to the relevant operations on word mode during expand (in optabs.c). But we also want to allow TImode in VSRs. This of course is a never- ending story, no choice works very well here. > Potential > optimizations can be implemented after the split. The former practice splits it after the reload > pass which is too later for some optimizations. The new test case illustrates it. All that are arguments for expanding to split form, not for removing TImode from the iterator. And you leave PTImode, which *always* is in GPRs! It may be that only leaving the "V" modes there works well; that needs testing though, more than just asaserting this. Just doing it and handling the ICEs later is fine, but in stage 1. (You'll also have to show it is *correct*, you need to prove (or show it really likely :-) ) that after this change there are no TImode things generated anywhere (anywhere!) that are no longer handled now). Segher