diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-06-09 06:17:12 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-06-09 06:17:12 +0000 |
commit | f62cadce1ea98102bfbafd86bc920986e74f8b59 (patch) | |
tree | 9e6b89b147d770090200e227d5974784b83e66cb /gcc/combine-stack-adj.c | |
parent | c7474a2d896f054401dae945da381931cc6ae4b6 (diff) | |
download | gcc-f62cadce1ea98102bfbafd86bc920986e74f8b59.tar.gz |
PR c++/53602
* combine-stack-adj.c (force_move_args_size_note): Add ARGS_SIZE
note to a clobber insn when no other insn is available.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@188357 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/combine-stack-adj.c')
-rw-r--r-- | gcc/combine-stack-adj.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/gcc/combine-stack-adj.c b/gcc/combine-stack-adj.c index b3ee785711a..b46fe3bcb38 100644 --- a/gcc/combine-stack-adj.c +++ b/gcc/combine-stack-adj.c @@ -1,7 +1,7 @@ /* Combine stack adjustments. Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, - 2010 Free Software Foundation, Inc. + 2010, 2012 Free Software Foundation, Inc. This file is part of GCC. @@ -414,9 +414,10 @@ force_move_args_size_note (basic_block bb, rtx prev, rtx insn) { /* ??? We *must* have a place, lest we ICE on the lost adjustment. Options are: dummy clobber insn, nop, or prevent the removal of - the sp += 0 insn. Defer that decision until we can prove this - can actually happen. */ - gcc_unreachable (); + the sp += 0 insn. */ + /* TODO: Find another way to indicate to the dwarf2 code that we + have not in fact lost an adjustment. */ + test = emit_insn_before (gen_rtx_CLOBBER (VOIDmode, const0_rtx), insn); } add_reg_note (test, REG_ARGS_SIZE, XEXP (note, 0)); } |