* arm.c (adjacent_mem_locations): Reject volatile memory refs.
commit94dee23105b88c9fc8dbd99f8b2895dd3009fc91
authorrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 1 Apr 2005 11:02:26 +0000 (1 11:02 +0000)
committerrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 1 Apr 2005 11:02:26 +0000 (1 11:02 +0000)
treece60104a96134fa4b842e1570d72c6e48259f9f3
parentda45cceee7f5bc85f2a69d064d49fa326c0c3fa0
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97381 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/arm/arm.c
gcc/config/arm/arm.md