arm.c (adjacent_mem_locations): Reject volatile memory refs.
authorRichard Earnshaw <rearnsha@arm.com>
Fri, 1 Apr 2005 11:02:26 +0000 (11:02 +0000)
committerRichard Earnshaw <rearnsha@gcc.gnu.org>
Fri, 1 Apr 2005 11:02:26 +0000 (11:02 +0000)
commit15b5c4c191599912334662eb6dbec02bfdc3b4d8
treece60104a96134fa4b842e1570d72c6e48259f9f3
parent7fac69e5b3a6a544dbb80e04434067b0a67aaf33
arm.c (adjacent_mem_locations): Reject volatile memory refs.

* arm.c (adjacent_mem_locations): Reject volatile memory refs.
Also reject cases where this pattern will cause load delay stalls
unless optimizing for size and it will produce a shorter sequence.
* arm.md (arith_adjacent_mem): Make better use of ldm addressing
variants to avoid pre-adjusting the base when possible.

From-SVN: r97381
gcc/ChangeLog
gcc/config/arm/arm.c
gcc/config/arm/arm.md