Mark symbols as constant
authorWilco Dijkstra <wdijkstr@arm.com>
Wed, 21 Jun 2017 10:40:21 +0000 (10:40 +0000)
committerWilco Dijkstra <wilco@gcc.gnu.org>
Wed, 21 Jun 2017 10:40:21 +0000 (10:40 +0000)
commitf28e54bd06f3733ff147128107a8da6d3e6d428e
tree75e5d4aa2430008c006906269cdaa5febd0dc848
parent9a85b75fc414653f4a691ea57b83722489cd3d61
Mark symbols as constant

Aarch64_legitimate_constant_p currently returns false for symbols,
eventhough they are always valid constants.  This means LOSYM isn't
CSEd correctly.  If we return true CSE works better, resulting in
smaller/faster code (0.3% smaller code on SPEC2006).  Avoid this
for TLS symbols since their sequence is complex.

    gcc/
* config/aarch64/aarch64.c (aarch64_legitimate_constant_p):
Return true for non-tls symbols.

From-SVN: r249442
gcc/ChangeLog
gcc/config/aarch64/aarch64.c