From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29832 invoked by alias); 12 Oct 2018 09:04:02 -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 26322 invoked by uid 89); 12 Oct 2018 09:02:47 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-2.1 required=5.0 tests=AWL,BAYES_00,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: smtp.eu.adacore.com Received: from mel.act-europe.fr (HELO smtp.eu.adacore.com) (194.98.77.210) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 12 Oct 2018 09:02:42 +0000 Received: from localhost (localhost [127.0.0.1]) by filtered-smtp.eu.adacore.com (Postfix) with ESMTP id 9D3228150F; Fri, 12 Oct 2018 11:02:39 +0200 (CEST) Received: from smtp.eu.adacore.com ([127.0.0.1]) by localhost (smtp.eu.adacore.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id of8Z3TVfHcRy; Fri, 12 Oct 2018 11:02:39 +0200 (CEST) Received: from polaris.localnet (bon31-6-88-161-99-133.fbx.proxad.net [88.161.99.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.eu.adacore.com (Postfix) with ESMTPSA id 4A00681549; Fri, 12 Oct 2018 11:02:39 +0200 (CEST) From: Eric Botcazou To: Peter Bergner , Jeff Law Cc: gcc-patches@gcc.gnu.org, Vladimir Makarov , Christophe Lyon Subject: Re: [PATCH 2/2 v3][IRA,LRA] Fix PR86939, IRA incorrectly creates an interference between a pseudo register and a hard register Date: Fri, 12 Oct 2018 09:50:00 -0000 Message-ID: <6135818.ELtDSYq4lH@polaris> In-Reply-To: References: <641b86b8-0302-2a4f-482c-ac6377a69600@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-SW-Source: 2018-10/txt/msg00734.txt.bz2 > These are the easy ones (they default to reload): > > bergner@pike:~/gcc/gcc-fsf-mainline/gcc/config$ grep -r TARGET_LRA_P | grep > false | sort alpha/alpha.c:#define TARGET_LRA_P hook_bool_void_false > avr/avr.c:#define TARGET_LRA_P hook_bool_void_false > bfin/bfin.c:#define TARGET_LRA_P hook_bool_void_false > c6x/c6x.c:#define TARGET_LRA_P hook_bool_void_false > cr16/cr16.c:#define TARGET_LRA_P hook_bool_void_false > cris/cris.c:#define TARGET_LRA_P hook_bool_void_false > epiphany/epiphany.c:#define TARGET_LRA_P hook_bool_void_false > fr30/fr30.c:#define TARGET_LRA_P hook_bool_void_false > frv/frv.c:#define TARGET_LRA_P hook_bool_void_false > h8300/h8300.c:#define TARGET_LRA_P hook_bool_void_false > ia64/ia64.c:#define TARGET_LRA_P hook_bool_void_false > iq2000/iq2000.c:#define TARGET_LRA_P hook_bool_void_false > lm32/lm32.c:#define TARGET_LRA_P hook_bool_void_false > m32c/m32c.c:#define TARGET_LRA_P hook_bool_void_false > m32r/m32r.c:#define TARGET_LRA_P hook_bool_void_false > m68k/m68k.c:#define TARGET_LRA_P hook_bool_void_false > mcore/mcore.c:#define TARGET_LRA_P hook_bool_void_false > microblaze/microblaze.c:#define TARGET_LRA_P hook_bool_void_false > mmix/mmix.c:#define TARGET_LRA_P hook_bool_void_false > mn10300/mn10300.c:#define TARGET_LRA_P hook_bool_void_false > moxie/moxie.c:#define TARGET_LRA_P hook_bool_void_false > msp430/msp430.c:#define TARGET_LRA_P hook_bool_void_false > nvptx/nvptx.c:#define TARGET_LRA_P hook_bool_void_false > pa/pa.c:#define TARGET_LRA_P hook_bool_void_false > rl78/rl78.c:#define TARGET_LRA_P hook_bool_void_false > spu/spu.c:#define TARGET_LRA_P hook_bool_void_false > stormy16/stormy16.c:#define TARGET_LRA_P hook_bool_void_false > tilegx/tilegx.c:#define TARGET_LRA_P hook_bool_void_false > tilepro/tilepro.c:#define TARGET_LRA_P hook_bool_void_false > vax/vax.c:#define TARGET_LRA_P hook_bool_void_false > visium/visium.c:#define TARGET_LRA_P hook_bool_void_false > xtensa/xtensa.c:#define TARGET_LRA_P hook_bool_void_false > > These are harder since they support -mlra: > > arc/arc.c:#define TARGET_LRA_P arc_lra_p > ft32/ft32.c:#define TARGET_LRA_P ft32_lra_p > mips/mips.c:#define TARGET_LRA_P mips_lra_p > pdp11/pdp11.c:#define TARGET_LRA_P pdp11_lra_p > powerpcspe/powerpcspe.c:#define TARGET_LRA_P rs6000_lra_p > rx/rx.c:#define TARGET_LRA_P rx_enable_lra > s390/s390.c:#define TARGET_LRA_P s390_lra_p > sh/sh.c:#define TARGET_LRA_P sh_lra_p > sparc/sparc.c:#define TARGET_LRA_P sparc_lra_p > > Quickly looking into their *.opt files, the follwoing default to LRA: > mips, s390 > while these default to reload: > ft32, sh4 > and these I'm not sure of without looking deeper: > arc, pdp11, powerpcspe, rx, sparc > > ...if that helps. See https://gcc.gnu.org/backends.html for a more precise summary. -- Eric Botcazou