diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2000-08-22 19:30:49 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2000-08-22 13:30:49 -0600 |
commit | d60eab50e172e80a6bdfbb67da40278e1a7ed5e4 (patch) | |
tree | 69200aa3f5efeb7916d16e3ba5b0e77e522e7cc1 | |
parent | 9861b0c9d63ef866cf7e5b99ffc528f978ca66e2 (diff) | |
download | gcc-d60eab50e172e80a6bdfbb67da40278e1a7ed5e4.zip gcc-d60eab50e172e80a6bdfbb67da40278e1a7ed5e4.tar.gz gcc-d60eab50e172e80a6bdfbb67da40278e1a7ed5e4.tar.bz2 |
calls.c (check_sibcall_argument_overlap_1): Adjust for ARGS_GROW_DOWNWARD.
* calls.c (check_sibcall_argument_overlap_1): Adjust for
ARGS_GROW_DOWNWARD.
(check_sibcall_argument_overlap): Likewise.
From-SVN: r35887
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/calls.c | 9 |
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fe8bbb4..ce6bf5a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -26,6 +26,10 @@ 2000-08-22 Alexandre Oliva <aoliva@redhat.com> + * calls.c (check_sibcall_argument_overlap_1): Adjust for + ARGS_GROW_DOWNWARD. + (check_sibcall_argument_overlap): Likewise. + * invoke.texi (SH Options): Document -m4-nofpu, -m4-single-only, -m4-single, -m4, -mbigtable, -mfmovd, -mhitachi, -mnomacsave, -misize, -mpadstruct, -mspace. diff --git a/gcc/calls.c b/gcc/calls.c index 2d0d52c..6784bca 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -1974,6 +1974,10 @@ check_sibcall_argument_overlap_1 (x) else return 0; +#ifdef ARGS_GROW_DOWNWARD + i = -i - GET_MODE_SIZE (GET_MODE (x)); +#endif + for (k = 0; k < GET_MODE_SIZE (GET_MODE (x)); k++) if (i + k < stored_args_map->n_bits && TEST_BIT (stored_args_map, i + k)) @@ -2025,7 +2029,12 @@ check_sibcall_argument_overlap (insn, arg) check_sibcall_argument_overlap_1 (PATTERN (insn))) break; +#ifdef ARGS_GROW_DOWNWARD + low = -arg->offset.constant - arg->size.constant; +#else low = arg->offset.constant; +#endif + for (high = low + arg->size.constant; low < high; low++) SET_BIT (stored_args_map, low); return insn != NULL_RTX; |