aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2014-01-22 23:05:23 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2014-01-22 22:05:23 +0000
commit77b7a218bbe8aca5a7b4da211cbbc4ceb2dd6270 (patch)
tree57e63d778a4dfd5c5183c4351ff4bb1398d43dff
parentbb50b870a4f326b2cb5b1eb1d8c68c3f8ff84f00 (diff)
downloadgcc-77b7a218bbe8aca5a7b4da211cbbc4ceb2dd6270.zip
gcc-77b7a218bbe8aca5a7b4da211cbbc4ceb2dd6270.tar.gz
gcc-77b7a218bbe8aca5a7b4da211cbbc4ceb2dd6270.tar.bz2
combine-stack-adj.c (combine_stack_adjustments_for_block): Remove ARG_SIZE note when adjustment was eliminated.
* combine-stack-adj.c (combine_stack_adjustments_for_block): Remove ARG_SIZE note when adjustment was eliminated. From-SVN: r206943
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/combine-stack-adj.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f6df113..af611f7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2014-01-22 Jan Hubicka <jh@suse.cz>
+
+ * combine-stack-adj.c (combine_stack_adjustments_for_block): Remove
+ ARG_SIZE note when adjustment was eliminated.
+
2014-01-22 Jeff Law <law@redhat.com>
PR tree-optimization/59597
diff --git a/gcc/combine-stack-adj.c b/gcc/combine-stack-adj.c
index 69fd5ea..c591c60 100644
--- a/gcc/combine-stack-adj.c
+++ b/gcc/combine-stack-adj.c
@@ -567,6 +567,7 @@ combine_stack_adjustments_for_block (basic_block bb)
&& try_apply_stack_adjustment (insn, reflist, 0,
-last_sp_adjust))
{
+ rtx note;
if (last2_sp_set)
maybe_move_args_size_note (last2_sp_set, last_sp_set, false);
else
@@ -576,6 +577,11 @@ combine_stack_adjustments_for_block (basic_block bb)
reflist = NULL;
last_sp_set = NULL_RTX;
last_sp_adjust = 0;
+ /* We no longer adjust stack size. Whoever adjusted it earlier
+ hopefully got the note right. */
+ note = find_reg_note (insn, REG_ARGS_SIZE, NULL_RTX);
+ if (note)
+ remove_note (insn, note);
continue;
}
}