r254499 - in /trunk/gcc: ChangeLog config/aarch...
rsandifo@gcc.gnu.org
rsandifo@gcc.gnu.org
Tue Nov 7 16:08:00 GMT 2017
Author: rsandifo
Date: Tue Nov 7 16:08:47 2017
New Revision: 254499
URL: https://gcc.gnu.org/viewcvs?rev=254499&root=gcc&view=rev
Log:
[AArch64] Use aarch64_reg_or_imm instead of nonmemory_operand
Some of the shift expanders accepted nonmemory_operands but were only
able to handle register_operands or CONST_INTs. This is probably
academic without SVE, since we're not likely to see shifts by other
types of constant (const_wide_ints, consts, etc). But for SVE,
it's possible for a vectorised shift induction to have a CONST_POLY_INT
shift amount.
This patch makes the expanders use aarch64_reg_or_imm instead.
2017-11-07 Richard Sandiford <richard.sandiford@linaro.org>
gcc/
* config/aarch64/aarch64.md (ashl<mode>3, ashr<mode>3, lshr<mode>3)
(rotr<mode>3, rotl<mode>3): Use aarch64_reg_or_imm instead of
nonmmory_operand.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/aarch64/aarch64.md
More information about the Gcc-cvs
mailing list