From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 108040 invoked by alias); 19 Apr 2019 19:08:54 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 108032 invoked by uid 89); 19 Apr 2019 19:08:53 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-1.5 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.1 spammy=hello!, H*f:sk:CAFULd4, bizjak, Bizjak X-HELO: mail-oi1-f194.google.com Received: from mail-oi1-f194.google.com (HELO mail-oi1-f194.google.com) (209.85.167.194) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 19 Apr 2019 19:08:52 +0000 Received: by mail-oi1-f194.google.com with SMTP id f196so4605375oib.7 for ; Fri, 19 Apr 2019 12:08:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=97+HwS9gUKz11WLIIKKVJXFebN69mCNaXYaAXrkql3Q=; b=bec5/gElBcLEsK5KFKxK7/T2OJCFESVf8VmS/o5Nepbl+pPPRwhy7QIrTdZEjwiksr rxVE8jgBAnBIGzlAeL5wCcFro9nNcFfNb8ECW3zevAgMtuUADuu3pDStIIvTLjGUdXOK KzjUpcrhqEDpTuDfR0kukoARnKPQHc1zZ6dIhbxvrt0xF63s8cUdJrlxbcIMoOxI2aRd uoW7NTChzukAL2rRz1i5B4eB6XkZuC5ACOv4inoe8gUBKOHbY7nVy39gqb/CcgLhu25C UmTm9snhsVO2ow0XQRLtMkli/6ihqRr3okQt5G+RBSiDQz4WdSTS1wefSzgSJc9NFAOJ gXVQ== MIME-Version: 1.0 References: <5ee3d889-bdc2-c56a-ef44-ac7e2c6860bf@redhat.com> In-Reply-To: <5ee3d889-bdc2-c56a-ef44-ac7e2c6860bf@redhat.com> From: "H.J. Lu" Date: Fri, 19 Apr 2019 19:12:00 -0000 Message-ID: Subject: Re: [PATCH, LRA]: Revert the revert of removal of usless move insns. To: Vladimir Makarov Cc: Uros Bizjak , "gcc-patches@gcc.gnu.org" , Jeff Law Content-Type: text/plain; charset="UTF-8" X-IsSubscribed: yes X-SW-Source: 2019-04/txt/msg00812.txt.bz2 On Wed, Nov 21, 2018 at 1:45 PM Vladimir Makarov wrote: > > > > On 11/21/2018 02:33 PM, Uros Bizjak wrote: > > Hello! > > > > Before the recent patch to post-reload mode switching, vzeroupper > > insertion depended on the existence of the return copy instructions > > pair in functions that return a value. The first instruction in the > > pair represents a move to a function return hard register, and the > > second was a USE of the function return hard register. Sometimes a nop > > move was generated (e.g. %eax->%eax) for the first instruction of the > > return copy instructions pair and the patch [1] teached LRA to remove > > these useless instructions on the fly. > > > > The removal caused optimize mode switching to trigger the assert, > > since the first instruction of a return pair was not found. The > > relevant part of the patch was later reverted. With the recent > > optimize mode switching patch, this is no longer necessary for > > vzeroupper insertion pass, so attached patch reverts the revert. > > > > 2018-11-21 Uros Bizjak > > > > Revert the revert: > > 2013-10-26 Vladimir Makarov > > > > Revert: > > 2013-10-25 Vladimir Makarov > > > > * lra-spills.c (lra_final_code_change): Remove useless move insns. > > > > Patch was bootstrapped and regression tested on x86_64-linux-gnu {,-m32}. > > > > OK for mainline? > Sure. Thank you, Uros. > > [1] https://gcc.gnu.org/ml/gcc-patches/2013-10/msg02208.html > > > > Uros. > This caused: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90178 -- H.J.