From patchwork Wed Jun 12 10:42:42 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Ren=C3=A9_Rebe?= X-Patchwork-Id: 1946780 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=exactco.de header.i=@exactco.de header.a=rsa-sha256 header.s=x header.b=azv+G5Zs; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=patchwork.ozlabs.org) Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4Vzhzq5rx9z20Pb for ; Wed, 12 Jun 2024 20:46:31 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 1B2A93870C1E for ; Wed, 12 Jun 2024 10:46:30 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mx.exactcode.de (mx.exactcode.de [144.76.154.42]) by sourceware.org (Postfix) with ESMTPS id D6F053870C0B for ; Wed, 12 Jun 2024 10:45:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D6F053870C0B Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=exactcode.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=exactcode.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D6F053870C0B Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=144.76.154.42 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1718189109; cv=none; b=euJJK6qTPVIxaRfC4Ocpgf804Xhj4SQYrgC6mozGmD+zVXcmobIUfAMCFT9VyHnZA20bZ+J1wSb6AgchxqXvv1u3V6CUiFq/T/ELH8xRYpuF9LU1WWlHcuL6ybbG+9Ub8Hdd7SQL2Pi+ZtD1oQtCJ3D9IZSIoYpg+DCHpPhDMr4= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1718189109; c=relaxed/simple; bh=2olEfXf1WVk3ksW0JJTL/9F75kDjBi2ba0dYBBJxoNY=; h=DKIM-Signature:Date:Message-Id:To:Subject:From:Mime-Version; b=jrb1culv5b+wM4QX7pOBqN4LNqLeVQfGAKQrLhqjVVyRGNnuPePebmvhXKMGos1kwhq8cqRfHrU5s2cuexUgB7sxGJ4yD/bXmU7rMSsEz213BHGDlvNwCCg/UKb0b8EeBgtKtgQl4ZkkopjCM9Q4d5B4U8gp+XxEjbSrr802s9w= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=exactco.de; s=x; h=Content-Transfer-Encoding:Content-Type:Mime-Version:References:In-Reply-To:From:Subject:Cc:To:Message-Id:Date; bh=5/GoIzl14Pqm1GueaM5vuIYpWlSIV1Mux5sGyqLxItk=; b=azv+G5ZsYlPULiAPhuAJ5xjT69E80UOcO2jSCvnV83kjoKfqaoFVqGrrqAcUSLipcLWpsbEdieRtLLA73bVfILHNNwtOdePr3I9ORDtbtO2uHC144KaeOn1lsRkPltikkX0b2fFSKxjTWB1P6rpL/n6zUQGPAKJphXH2Gz+q/nU=; Received: from exactco.de ([90.187.5.221]) by mx.exactcode.de with esmtp (Exim 4.82) (envelope-from ) id 1sHLUA-0002ev-S6; Wed, 12 Jun 2024 10:45:46 +0000 Received: from [192.168.2.175] (helo=localhost) by exactco.de with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.86_2) (envelope-from ) id 1sHLXM-0000t8-4y; Wed, 12 Jun 2024 10:49:05 +0000 Date: Wed, 12 Jun 2024 12:42:42 +0200 (CEST) Message-Id: <20240612.124242.1291436266291405210.rene@exactcode.de> To: gcc-patches@gcc.gnu.org Cc: rguenther@suse.de, frank.scheiner@web.de Subject: [PATCH 2/3] Enabled LRA for ia64. From: Rene Rebe In-Reply-To: <20240612.123343.1340522057045758230.rene@exactcode.de> References: <3DAB006A-ACE2-4BEC-AA01-87625DBEE259@exactcode.de> <20240612.123343.1340522057045758230.rene@exactcode.de> X-Mailer: Mew version 6.9 on Emacs 29.2 Mime-Version: 1.0 X-Spam-Score: -1.2 (-) X-Spam-Status: No, score=-8.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org gcc/ * config/ia64/ia64.cc: Enable LRA for ia64. * config/ia64/ia64.md: Likewise. * config/ia64/predicates.md: Likewise. --- gcc/config/ia64/ia64.cc | 7 ++----- gcc/config/ia64/ia64.md | 4 ++-- gcc/config/ia64/predicates.md | 2 +- 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/gcc/config/ia64/ia64.cc b/gcc/config/ia64/ia64.cc index ac3d56073ac..d189bfb2cb4 100644 --- a/gcc/config/ia64/ia64.cc +++ b/gcc/config/ia64/ia64.cc @@ -618,9 +618,6 @@ static const scoped_attribute_specs *const ia64_attribute_table[] = #undef TARGET_LEGITIMATE_ADDRESS_P #define TARGET_LEGITIMATE_ADDRESS_P ia64_legitimate_address_p -#undef TARGET_LRA_P -#define TARGET_LRA_P hook_bool_void_false - #undef TARGET_CANNOT_FORCE_CONST_MEM #define TARGET_CANNOT_FORCE_CONST_MEM ia64_cannot_force_const_mem @@ -1329,7 +1326,7 @@ ia64_expand_move (rtx op0, rtx op1) { machine_mode mode = GET_MODE (op0); - if (!reload_in_progress && !reload_completed && !ia64_move_ok (op0, op1)) + if (!lra_in_progress && !reload_completed && !ia64_move_ok (op0, op1)) op1 = force_reg (mode, op1); if ((mode == Pmode || mode == ptr_mode) && symbolic_operand (op1, VOIDmode)) @@ -1776,7 +1773,7 @@ ia64_expand_movxf_movrf (machine_mode mode, rtx operands[]) } } - if (!reload_in_progress && !reload_completed) + if (!lra_in_progress && !reload_completed) { operands[1] = spill_xfmode_rfmode_operand (operands[1], 0, mode); diff --git a/gcc/config/ia64/ia64.md b/gcc/config/ia64/ia64.md index 698e302081e..d485acc0ea8 100644 --- a/gcc/config/ia64/ia64.md +++ b/gcc/config/ia64/ia64.md @@ -2318,7 +2318,7 @@ (match_operand:DI 3 "register_operand" "f")) (match_operand:DI 4 "nonmemory_operand" "rI"))) (clobber (match_scratch:DI 5 "=f"))] - "reload_in_progress" + "lra_in_progress" "#" [(set_attr "itanium_class" "unknown")]) @@ -3407,7 +3407,7 @@ (match_operand:DI 2 "shladd_operand" "n")) (match_operand:DI 3 "nonmemory_operand" "r")) (match_operand:DI 4 "nonmemory_operand" "rI")))] - "reload_in_progress" + "lra_in_progress" "* gcc_unreachable ();" "reload_completed" [(set (match_dup 0) (plus:DI (mult:DI (match_dup 1) (match_dup 2)) diff --git a/gcc/config/ia64/predicates.md b/gcc/config/ia64/predicates.md index 01a4effd339..85f5380e734 100644 --- a/gcc/config/ia64/predicates.md +++ b/gcc/config/ia64/predicates.md @@ -347,7 +347,7 @@ allows reload the opportunity to avoid spilling addresses to the stack, and instead simply substitute in the value from a REG_EQUIV. We'll split this up again when splitting the insn. */ - if (reload_in_progress || reload_completed) + if (lra_in_progress || reload_completed) return true; /* Some symbol types we allow to use with any offset. */