diff options
author | Mike Stump <mrs@wrs.com> | 1998-06-02 20:11:21 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1998-06-02 14:11:21 -0600 |
commit | 0bc02db4e61cfc1ab8e408d88f7a2e09f8b1cef0 (patch) | |
tree | 149e177d352af6c612cef699a23f5ac907ea20ec /gcc/expr.c | |
parent | 666e0f5ad52098975ed535bc3f3a128aa5c8bf51 (diff) | |
download | gcc-0bc02db4e61cfc1ab8e408d88f7a2e09f8b1cef0.zip gcc-0bc02db4e61cfc1ab8e408d88f7a2e09f8b1cef0.tar.gz gcc-0bc02db4e61cfc1ab8e408d88f7a2e09f8b1cef0.tar.bz2 |
expr.c (expand_builtin_setjmp): Handle BUILTIN_SETJMP_FRAME_VALUE.
* expr.c (expand_builtin_setjmp): Handle BUILTIN_SETJMP_FRAME_VALUE.
* i960.h (SETUP_FRAME_ADDRESSES, BUILTIN_SETJMP_FRAME_VALUE): Define.
* i960.md (ret, flush_register_windows): Define.
(nonlocal_goto): Likewise. Nested function nonlocal gotos don't
work yet.
* tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Document new macro.
From-SVN: r20192
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -7725,11 +7725,15 @@ expand_builtin_setjmp (buf_addr, target, first_label, next_label) emit_queue (); +#ifndef BUILTIN_SETJMP_FRAME_VALUE +#define BUILTIN_SETJMP_FRAME_VALUE virtual_stack_vars_rtx +#endif + /* We store the frame pointer and the address of lab1 in the buffer and use the rest of it for the stack save area, which is machine-dependent. */ emit_move_insn (gen_rtx_MEM (Pmode, buf_addr), - virtual_stack_vars_rtx); + BUILTIN_SETJMP_FRAME_VALUE); emit_move_insn (validize_mem (gen_rtx_MEM (Pmode, plus_constant (buf_addr, |