From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 50795 invoked by alias); 13 Dec 2019 16:04:52 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 48505 invoked by uid 89); 13 Dec 2019 16:04:52 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00,KAM_SHORT,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 spammy=H*MI:sk:mpt1rt8, H*f:sk:mpt1rt8, H*i:sk:mpt1rt8, optimise X-HELO: gate.crashing.org Received: from gate.crashing.org (HELO gate.crashing.org) (63.228.1.57) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 13 Dec 2019 16:04:50 +0000 Received: from gate.crashing.org (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.14.1) with ESMTP id xBDG4jlA017642; Fri, 13 Dec 2019 10:04:45 -0600 Received: (from segher@localhost) by gate.crashing.org (8.14.1/8.14.1/Submit) id xBDG4j6M017639; Fri, 13 Dec 2019 10:04:45 -0600 Date: Fri, 13 Dec 2019 16:04:00 -0000 From: Segher Boessenkool To: Georg-Johann Lay , gcc@gcc.gnu.org, richard.sandiford@arm.com Subject: Re: Code bloat due to silly IRA cost model? Message-ID: <20191213160445.GT3152@gate.crashing.org> References: <47b10439-21b8-81f6-3838-a2bcd0fa8048@gjlay.de> <5DEFFCD4.4080903@gcc.gnu.org> <84093aae-3567-65a1-581a-17ef599b09ad@gcc.gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.3i X-IsSubscribed: yes X-SW-Source: 2019-12/txt/msg00196.txt.bz2 On Fri, Dec 13, 2019 at 12:45:47PM +0000, Richard Sandiford wrote: > combine's to blame for the fact that we have two pseudo registers rather > than one. See the comments about the avr-elf results in: > > https://gcc.gnu.org/ml/gcc-patches/2019-11/msg02150.html > > for more details. It's not combine's fault if register allocation does a bad job. And we should *not* generate worse code in combine just because it exposes a problem in RA (with 2-2 and make_more_copies we generate better code on average, on all targets I tested, 50 or so). If having two pseudos here is not an advantage, then RA should optimise one away. It does usually, why not here? Segher