gcc-patches has rejected the original message as it contained invalid MIME type. Therefore I am re-sending it.

-------- Forwarded Message --------
Subject: Re: [lra] Cleanup the use of offmemok and don't count spilling cost for it
Date:   Mon, 4 Jul 2016 15:44:25 -0400
From:   Vladimir Makarov <vmaka...@redhat.com>
To:     Jiong Wang <jiong.w...@foss.arm.com>, gcc-patches@gcc.gnu.org
CC: Andreas Krebbel <kreb...@linux.vnet.ibm.com>, v...@linux.vnet.ibm.com, Jeff Law <l...@redhat.com>, Robin Dapp <rd...@linux.vnet.ibm.com>



On 06/30/2016 01:22 PM, Jiong Wang wrote:

Here is the patch,

From my understanding, "offmemok" is used to represent a memory operand who's address we want to reload, and searching of it's reference location seems confirmed my understanding as it's always used together with MEM_P check. So this patch does the following modifications: * Only set offmemok to true if MEM_P is also true, as otherwise offmemok is not used. * Remove redundant MEM_P check which was used together with offmemok. * Avoid the addition of spilling cost if offmemok be true as an address calculation reload is not spilling. bootstrap & gcc/g++ regression OK on x86_64/aarch64/arm. OK for trunk?

Yes. The patch looks OK to me. Thank you for working on the solution, Jiong. As I wrote the code is very sensitive and any its change might affect some targets. Usually patches for this part of LRA can take a few iterations.


2016-06-30 Jiong Wang <jiong.w...@arm.com> gcc * lra-constraints.c (process_alt_operands): Only set "offmemok" for MEM_P. Remove redundant MEM_P check if it's used together with "offmemok" check. Don't add spilling cost for "offmemok". (curr_insn_transform): Remove redundant MEM_P check.




Reply via email to