diff options
author | Andre Vieira <andre.simoesdiasvieira@arm.com> | 2020-04-27 14:54:46 +0100 |
---|---|---|
committer | Andre Vieira <andre.simoesdiasvieira@arm.com> | 2020-04-27 14:59:56 +0100 |
commit | 6b6a77d25e83e071ba5d08648c5bd3953d8a0c03 (patch) | |
tree | 7f80902a4684fe80603f175640458443dec9ceba | |
parent | 5328710be314dee43da8027dbff547d48b85e35e (diff) | |
download | gcc-6b6a77d25e83e071ba5d08648c5bd3953d8a0c03.zip gcc-6b6a77d25e83e071ba5d08648c5bd3953d8a0c03.tar.gz gcc-6b6a77d25e83e071ba5d08648c5bd3953d8a0c03.tar.bz2 |
arm: Fix bootstrap failure with rtl-checking
The code change that caused this regression was not meant to affect neon
code-gen, however I missed the REG fall through. This patch makes sure we only
get the left-hand of the PLUS if it is indeed a PLUS expr.
gcc/ChangeLog:
2020-04-27 Andre Vieira <andre.simoesdiasvieira@arm.com>
* config/arm/arm.c (output_move_neon): Only get the first operand if
addr is PLUS.
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/arm/arm.c | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bd5e95a..0027071 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2020-04-27 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * config/arm/arm.c (output_move_neon): Only get the first operand if + addr is PLUS. + 2020-04-27 Felix Yang <felix.yang@huawei.com> PR tree-optimization/94784 diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 0151bda..74454dd 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -20145,7 +20145,8 @@ output_move_neon (rtx *operands) } /* Fall through. */ case PLUS: - addr = XEXP (addr, 0); + if (GET_CODE (addr) == PLUS) + addr = XEXP (addr, 0); /* Fall through. */ case LABEL_REF: { |