arm: MVE: Relax addressing modes for full loads and stores
authorAndre Vieira <andre.simoesdiasvieira@arm.com>
Tue, 8 Mar 2022 17:46:40 +0000 (17:46 +0000)
committerAndre Vieira <andre.simoesdiasvieira@arm.com>
Tue, 8 Mar 2022 17:50:51 +0000 (17:50 +0000)
commit796f5220c808bc37adbd1081476589ab1a5d7ac3
tree6aced8f7717aec1f6bc765875b7c90d201a91b38
parent6319391d5634ceb07abfadfaabee25e403f5110a
arm: MVE: Relax addressing modes for full loads and stores

This patch relaxes the addressing modes for the mve full load and stores (by
full loads and stores I mean non-widening or narrowing loads and stores resp).
The code before was requiring a LO_REGNUM for these, where this is only a
requirement if the load is widening or the store narrowing.

gcc/ChangeLog:

PR target/104790
* config/arm/arm.h (MVE_STN_LDW_MODE): New MACRO.
* config/arm/arm.cc (mve_vector_mem_operand): Relax constraint on base
register for non widening loads or narrowing stores.
gcc/config/arm/arm.cc
gcc/config/arm/arm.h