diff options
author | Jakub Jelinek <jakub@redhat.com> | 2012-02-06 13:33:05 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2012-02-06 13:33:05 +0000 |
commit | c47dcffcfd467f4511f9f0147cd8adf20223824c (patch) | |
tree | e8130221fccd6c95f373dd8407bd131492de17a5 /gcc/calls.c | |
parent | 4fc62d47d2cfe0399319e0f41b41211aaa0c5ad2 (diff) |
PR target/52129
* calls.c (mem_overlaps_already_clobbered_arg_p): If val is
CONST_INT_P, subtract resp. add crtl->args.pretend_args_size to it.
* gcc.c-torture/execute/pr52129.c: New test.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@183933 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/calls.c')
-rw-r--r-- | gcc/calls.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index 943ab093c0f..53c03354726 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -1808,6 +1808,11 @@ mem_overlaps_already_clobbered_arg_p (rtx addr, unsigned HOST_WIDE_INT size) return true; else i = INTVAL (val); +#ifdef STACK_GROWS_DOWNWARD + i -= crtl->args.pretend_args_size; +#else + i += crtl->args.pretend_args_size; +#endif #ifdef ARGS_GROW_DOWNWARD i = -i - size; |