diff options
author | Cary Coutant <ccoutant@google.com> | 2009-09-25 20:51:40 +0000 |
---|---|---|
committer | Cary Coutant <ccoutant@google.com> | 2009-09-25 20:51:40 +0000 |
commit | 90ff80ffce47736ab7319058a44a0704a7fdb31e (patch) | |
tree | 3de65ba61f89a48c0ec028672acb475ea3f1819b /gcc/stmt.c | |
parent | ebd9739bcfd2dc4c6409fb0b96d95894191b2c28 (diff) |
Merged revisions 151950:152181 from trunk.dwarf4
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/dwarf4@152186 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/stmt.c')
-rw-r--r-- | gcc/stmt.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/stmt.c b/gcc/stmt.c index ffd180ec112..d2583ca5458 100644 --- a/gcc/stmt.c +++ b/gcc/stmt.c @@ -1799,13 +1799,17 @@ expand_return (tree retval) static void expand_nl_goto_receiver (void) { + rtx chain; + /* Clobber the FP when we get here, so we have to make sure it's marked as used by this function. */ emit_use (hard_frame_pointer_rtx); /* Mark the static chain as clobbered here so life information doesn't get messed up for it. */ - emit_clobber (static_chain_rtx); + chain = targetm.calls.static_chain (current_function_decl, true); + if (chain && REG_P (chain)) + emit_clobber (chain); #ifdef HAVE_nonlocal_goto if (! HAVE_nonlocal_goto) |