Commit 3635c2bf by Wilco Dijkstra Committed by Wilco Dijkstra

[ARM] Tweak HONOR_REG_ALLOC_ORDER

Setting HONOR_REG_ALLOC_ORDER improves codesize with -Os, however it generates
slower and larger code with -O2 and higher.  So only set it when optimizing for
size.  On Cortex-A57 this improves SPECINT2006 by 0.15% and SPECFP2006 by 0.25%
while reducing codesize.

    gcc/
	* config/arm/arm.h (HONOR_REG_ALLOC_ORDER): Set when optimizing for
	size.

From-SVN: r276887
parent bd01f4da
2019-10-11 Wilco Dijkstra <wdijkstr@arm.com>
* config/arm/arm.h (HONOR_REG_ALLOC_ORDER): Set when optimizing for
size.
2019-10-11 Bernd Edlinger <bernd.edlinger@hotmail.de> 2019-10-11 Bernd Edlinger <bernd.edlinger@hotmail.de>
* tree-vect-loop.c (vect_analyze_loop_operations): Adjust call to * tree-vect-loop.c (vect_analyze_loop_operations): Adjust call to
......
...@@ -1068,9 +1068,8 @@ extern int arm_regs_in_sequence[]; ...@@ -1068,9 +1068,8 @@ extern int arm_regs_in_sequence[];
/* Use different register alloc ordering for Thumb. */ /* Use different register alloc ordering for Thumb. */
#define ADJUST_REG_ALLOC_ORDER arm_order_regs_for_local_alloc () #define ADJUST_REG_ALLOC_ORDER arm_order_regs_for_local_alloc ()
/* Tell IRA to use the order we define rather than messing it up with its /* Tell IRA to use the order we define when optimizing for size. */
own cost calculations. */ #define HONOR_REG_ALLOC_ORDER optimize_function_for_size_p (cfun)
#define HONOR_REG_ALLOC_ORDER 1
/* Interrupt functions can only use registers that have already been /* Interrupt functions can only use registers that have already been
saved by the prologue, even if they would normally be saved by the prologue, even if they would normally be
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment