From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from nh503-vm7.bullet.mail.kks.yahoo.co.jp (nh503-vm7.bullet.mail.kks.yahoo.co.jp [183.79.56.193]) by sourceware.org (Postfix) with SMTP id D0B703858D32 for ; Sun, 11 Sep 2022 20:50:24 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org D0B703858D32 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=yahoo.co.jp Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=yahoo.co.jp Received: from [183.79.100.141] by nh503.bullet.mail.kks.yahoo.co.jp with NNFMP; 11 Sep 2022 20:50:22 -0000 Received: from [183.79.100.134] by t504.bullet.mail.kks.yahoo.co.jp with NNFMP; 11 Sep 2022 20:50:22 -0000 Received: from [127.0.0.1] by omp503.mail.kks.yahoo.co.jp with NNFMP; 11 Sep 2022 20:50:22 -0000 X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 234846.89823.bm@omp503.mail.kks.yahoo.co.jp Received: (qmail 93248 invoked by alias); 11 Sep 2022 20:50:22 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.jp; s=yj20110701; t=1662929422; bh=xL5K0si7d5229PG8DXWY7GhVzzuacxnAtG7J6XvETbc=; h=Received:X-YMail-JAS:X-Apparently-From:X-YMail-OSG:Message-ID:Date:MIME-Version:User-Agent:To:Cc:From:Subject:Content-Type:Content-Transfer-Encoding; b=N2j/mZlG6VMKeuEZvrLm4vLoDUdaiQYv24dDWJf6WKf/GjHBnM3D7p2cCobIve+93js071ID4CX3wU5XwZzdk32oRNlGt2lk9vsmkcllrdzrdXKOQxXXpaUVFtiSOpMcunacCVsqMd/qdoHc3/bw4CuNnxv4xj2a10DI+EAxdyo= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=yj20110701; d=yahoo.co.jp; h=Received:X-YMail-JAS:X-Apparently-From:X-YMail-OSG:Message-ID:Date:MIME-Version:User-Agent:To:Cc:From:Subject:Content-Type:Content-Transfer-Encoding; b=L2U4erd9uK9aa4YupFRMnMga6Pu7GJIpcyQRAL/FM9EpX/UUBRb41STy06RwTbre2PJ1jJtYo7xERThpTdB649B+rok/cPf4cUXw7ejaKP+P/LkKKVdumSMurUN1swqo8SHMX9k92Jl6WzIaxJI72cEyIBp+jsHcJOvf50GyMYI= ; Received: from unknown (HELO ?192.168.150.64?) (183.77.162.44 with ) by smtp6008.mail.ssk.ynwp.yahoo.co.jp with SMTP; 11 Sep 2022 20:50:22 -0000 X-YMail-JAS: Xi.m5TEVM1kdlzywUlIASHA1DcLlBtH9EUNKqM.4a0sUH6Ar26FYfdpM2XZo.ZMCUg7y3661PZ57.wsFd_ZfL5RNMyTV4AOx3CPvGsRtTXXyuwgw1V1bHGbIkthB.bjkpk6Gf_loMg-- X-Apparently-From: X-YMail-OSG: 6owLQwQVM1kH9FYTx7.WISVj.pC6SfUN02QesP_tLF.X3XL Jo3Fg3LOYk_0jnVTeDJmpqKpwyTtCxnpfnz6SCqYz.xHw2tTPLmWeqTszJbB Fc689uWdEWlrdjz8QTOfuqm4i_hOv..aVJ.LqNMTSOaBjhqh4Ltclv7BZ.XC _cHuFE3ihup9qK.IzaHhfl.yrtfPRtmsarPXjzlrtxVC_zVMhKtdje.Tlpxa fUPdRzWgu6Iwdszxrl_ME55R24QMeHg0sO49anXinmYHguOnQhH5PLErRjp. PK22eh_fCdQIPGnkWSaSiC6oQs7uzMwpIkWXz9g6X8F9SWylqd1oTj2mkWPw rpp60pZlqwRHPNAEkzPtb56s6aVRfjvHPWOtA27GpNsFMJt9apBZEMFGqzUK BY6YnW8olIewutruqHiP.eeJkWVC5kUv.SEZmCrjDD0gWlDwNQQ9D3I.ezqW ub9QVeaourw7zeJR5ZGIH.jp9LbzRG_goG.nJkEuLbaN2tk1DPWSJX6Cbjkz z2TU.llkZHTS3sFQPXgL5nXlPYTIF6I13g1t3g6.UlArXm_t.KyqycggadFf JXCkXViszgkQwl2ELIiNswfoP_B2pFE.qn.iN1cmJfZgNF.MlEyjDxMBJ4CD uxalMu9qRpteR_idW4PNEqe5iND.WDTBSS3MC5ApR0wHoTxJpRcsme7yiXHG 3E3P3u3cB25UVwPXwR0GXr.vR.EwE.Yt_NHlDTwFlQAb0NjvLC_8c7aFR1Jv Zc06anezpEXvY_Fuiqf_vKBtwrbHkxC1b0Rc7ZUyHcjCHrwfGH_Iv2MDzmWJ .0ka.2hsFiKB6sFNxyP.haMvJ0kHT5lIteU_kkMLRMx5PO2oTN7yyLztn0Sm q4_l6mfoM8ZSmBZhcFTyQOGB6A_H.vFI33r75o1bXfPFtArJP7ZaMYwkO2IX XM15UUEzLhx8F1CJ3 Message-ID: <1e87f131-93eb-0d37-d0f4-a9a69a5dc61f@yahoo.co.jp> Date: Sun, 11 Sep 2022 20:51:15 +0900 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 To: GCC Patches Cc: Max Filippov From: Takayuki 'January June' Suwa Subject: [PATCH 2/2] xtensa: Implement new target hook: TARGET_CONSTANT_OK_FOR_CPROP_P Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-11.8 required=5.0 tests=BAYES_00,DATE_IN_PAST_06_12,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,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 List-Id: This patch implements new target hook TARGET_CONSTANT_OK_FOR_CPROP_P in order to exclude CONST_INTs that cannot fit into a MOVI machine instruction from cprop. gcc/ChangeLog: * config/xtensa/xtensa.c (TARGET_CONSTANT_OK_FOR_CPROP_P): New macro definition. (xtensa_constant_ok_for_cprop_p): Implement the hook as mentioned above. --- gcc/config/xtensa/xtensa.cc | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/gcc/config/xtensa/xtensa.cc b/gcc/config/xtensa/xtensa.cc index ac52c015a94..5c432cc65aa 100644 --- a/gcc/config/xtensa/xtensa.cc +++ b/gcc/config/xtensa/xtensa.cc @@ -191,6 +191,7 @@ static bool xtensa_can_eliminate (const int from ATTRIBUTE_UNUSED, static HOST_WIDE_INT xtensa_starting_frame_offset (void); static unsigned HOST_WIDE_INT xtensa_asan_shadow_offset (void); static bool xtensa_function_ok_for_sibcall (tree, tree); +static bool xtensa_constant_ok_for_cprop_p (const_rtx); static rtx xtensa_delegitimize_address (rtx); @@ -345,12 +346,15 @@ static rtx xtensa_delegitimize_address (rtx); #undef TARGET_HAVE_SPECULATION_SAFE_VALUE #define TARGET_HAVE_SPECULATION_SAFE_VALUE speculation_safe_value_not_needed -#undef TARGET_DELEGITIMIZE_ADDRESS -#define TARGET_DELEGITIMIZE_ADDRESS xtensa_delegitimize_address - #undef TARGET_FUNCTION_OK_FOR_SIBCALL #define TARGET_FUNCTION_OK_FOR_SIBCALL xtensa_function_ok_for_sibcall +#undef TARGET_CONSTANT_OK_FOR_CPROP_P +#define TARGET_CONSTANT_OK_FOR_CPROP_P xtensa_constant_ok_for_cprop_p + +#undef TARGET_DELEGITIMIZE_ADDRESS +#define TARGET_DELEGITIMIZE_ADDRESS xtensa_delegitimize_address + struct gcc_target targetm = TARGET_INITIALIZER; @@ -4983,6 +4987,16 @@ xtensa_function_ok_for_sibcall (tree decl ATTRIBUTE_UNUSED, tree exp ATTRIBUTE_U return true; } +/* Implement TARGET_CONSTANT_OK_FOR_CPROP_P. */ +static bool +xtensa_constant_ok_for_cprop_p (const_rtx x) +{ + if (CONST_INT_P (x) && ! xtensa_simm12b (INTVAL (x))) + return false; + + return true; +} + static rtx xtensa_delegitimize_address (rtx op) { -- 2.20.1