function.h (struct function): Remove calls_longjmp.
authorZack Weinberg <zack@gcc.gnu.org>
Tue, 23 Nov 2004 19:55:24 +0000 (19:55 +0000)
committerZack Weinberg <zack@gcc.gnu.org>
Tue, 23 Nov 2004 19:55:24 +0000 (19:55 +0000)
commit6e14af161c7d61b280c187b1a91a0fd853249bd1
tree67f41f708633dc69a022149ee3dee19b259e910b
parente9c00ceb85406d1f78d1752f27742ac7bb05b47b
function.h (struct function): Remove calls_longjmp.

* function.h (struct function): Remove calls_longjmp.
(current_function_calls_longjmp): Delete.
* tree.h (ECF_LONGJMP): Delete.
(ECF_SIBCALL, ECF_PURE, ECF_SP_DEPRESSED, ECF_ALWAYS_RETURN)
(ECF_LIBCALL_BLOCK): Everybody slide down one.
(ECF_CONST, ECF_NORETURN, ECF_SIBCALL): Clarify comments.
* builtins.c (expand_builtin_longjmp): Don't set
current_function_calls_longjmp.
* calls.c (special_function_p): Mark longjmp and siglongjmp
with ECF_NORETURN, not ECF_LONGJMP.
(emit_call_1, expand_call, emit_library_call_value_1):
Don't check for ECF_LONGJMP.
* tree-cfg.c (make_exit_edges, is_ctrl_altering_stmt)
(need_fake_edge_p): Likewise.

* config/avr/avr.h, config/ip2k/ip2k.h: Don't define NON_SAVING_SETJMP.
* system.h: Poison NON_SAVING_SETJMP.
* function.c (use_register_for_decl)
* gcse.c (compute_hash_table_work, compute_store_table)
* postreload-gcse.c (record_opr_changes)
* reload.c (find_equiv_reg)
* reload1.c (reload)
* config/i386/i386.c (ix86_can_use_return_insn_p):
Remove code conditional on NON_SAVING_SETJMP.
* doc/tm.texi: Delete documentation of NON_SAVING_SETJMP.

* config/i386/sysv3.h: Delete file.
* config/i386/i386.c (ix86_svr3_asm_out_constructor): Delete.

From-SVN: r91101
17 files changed:
gcc/ChangeLog
gcc/builtins.c
gcc/calls.c
gcc/config/avr/avr.h
gcc/config/i386/i386.c
gcc/config/i386/sysv3.h [deleted file]
gcc/config/ip2k/ip2k.h
gcc/doc/tm.texi
gcc/function.c
gcc/function.h
gcc/gcse.c
gcc/postreload-gcse.c
gcc/reload.c
gcc/reload1.c
gcc/system.h
gcc/tree-cfg.c
gcc/tree.h