r254388 - in /trunk/gcc: ChangeLog config/aarch...
wilco@gcc.gnu.org
wilco@gcc.gnu.org
Fri Nov 3 18:19:00 GMT 2017
Author: wilco
Date: Fri Nov 3 18:19:33 2017
New Revision: 254388
URL: https://gcc.gnu.org/viewcvs?rev=254388&root=gcc&view=rev
Log:
Improve aarch64_legitimate_constant_p
This patch further improves aarch64_legitimate_constant_p. Allow all
integer, floating point and vector constants. Allow label references
and non-anchor symbols with an immediate offset. This allows such
constants to be rematerialized, resulting in smaller code and fewer stack
spills. SPEC2006 codesize reduces by 0.08%, SPEC2017 by 0.13%.
gcc/
* config/aarch64/aarch64.c (aarch64_legitimate_constant_p):
Return true for more constants, symbols and label references.
(aarch64_valid_floating_const): Remove unused function.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/aarch64/aarch64.c
More information about the Gcc-cvs
mailing list