[AArch64] Reject (high (const (plus anchor offset)))
authorRichard Sandiford <richard.sandiford@linaro.org>
Tue, 9 Jan 2018 14:31:25 +0000 (14:31 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Tue, 9 Jan 2018 14:31:25 +0000 (14:31 +0000)
commit509bb9b647516bbf6af77778d2ffe7e756be26df
tree988f7d6b12c07b237320541649d1abc670a59c9e
parent7ad429a4de1197b4b032da0981a2c91ac5d0dd06
[AArch64] Reject (high (const (plus anchor offset)))

The aarch64_legitimate_constant_p tests for HIGH and CONST seem
to be the wrong way round: (high (const ...)) is valid rtl that
could be passed in, but (const (high ...)) isn't.  As it stands,
we disallow anchor+offset but allow (high anchor+offset).

2018-01-09  Richard Sandiford  <richard.sandiford@linaro.org>

gcc/
* config/aarch64/aarch64.c (aarch64_legitimate_constant_p): Fix
order of HIGH and CONST checks.

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