Commit d60eab50 by Alexandre Oliva Committed by Jeff Law

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
parent 9861b0c9
......@@ -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.
......
......@@ -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;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment