reload.c (find_reloads_address): Make return value tri-state.
authorUlrich Weigand <uweigand@de.ibm.com>
Sun, 22 Aug 2004 22:09:12 +0000 (22:09 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Sun, 22 Aug 2004 22:09:12 +0000 (22:09 +0000)
commit0b540f12b0f00d4ca8c282d6988cc06026527c41
treeaacc554b79463f2000c1ff1d2e71c98b7ddc340f
parent7f5e63076a3e596e2dd88825f0fe2659c20a5e84
reload.c (find_reloads_address): Make return value tri-state.

* reload.c (find_reloads_address): Make return value tri-state.
Return -1 if LEGITIMIZE_RELOAD_ADDRESS succeeded.
(find_reloads): Assume that reloaded addresses match 'o' or
EXTRA_MEMORY_CONSTRAINT constraints only if find_reloads_address
returned 1 (not -1).  Omit optional reloads for address operands
only if find_reloads_address returned 1 (not -1).

* config/s390/s390.c (legitimize_reload_address): New function.
* config/s390/s390-protos.h (legitimize_reload_address): Declare.
* config/s390/s390.h (LEGITIMIZE_RELOAD_ADDRESS): Define.  Call
legitimize_reload_address.

From-SVN: r86388
gcc/ChangeLog
gcc/config/s390/s390-protos.h
gcc/config/s390/s390.c
gcc/config/s390/s390.h
gcc/reload.c