This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Improve spillcost of literal pool loads


On 10/29/14 07:21, Wilco Dijkstra wrote:
This patch adjusts the spill cost of literal pool loads to reduce the chance of them being
caller-saved (which is inefficient). Such loads should be rematerialized and thus should not include
the cost of a spill store. This was done only on constants for which legitimate_constant_p is true,
however it is right thing to do for any constant, including constants in literal pools (which are
typically not legitimate). Also use ALL_REGS rather than GENERAL_REGS as ALL_REGS has the correct
floating point register costs.

ChangeLog:
2014-10-29  Wilco Dijkstra  <wdijkstr@arm.com>

	* gcc/ira-costs.c (scan_one_insn): Improve spill cost adjustment.
Do you have a testcase that shows the expected improvements from this change? It's OK if it's specific to a target.

Have you bootstrapped and regression tested this change?

With a test for the testsuite and assuming it passes bootstrap and regression testing, this will almost certainly be OK.

jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]