diff options
author | Jan Hubicka <jh@suse.cz> | 2001-08-08 21:07:47 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2001-08-08 19:07:47 +0000 |
commit | 9d98f8f9c4bea7b6ddcc1cb935e3b17d498b4beb (patch) | |
tree | b641fa444ecc5e0162540715896c50029c4ef59f /gcc/rtl.h | |
parent | 82423cbad3a82b066e23d0c5aa569c24fc12cc66 (diff) | |
download | gcc-9d98f8f9c4bea7b6ddcc1cb935e3b17d498b4beb.zip gcc-9d98f8f9c4bea7b6ddcc1cb935e3b17d498b4beb.tar.gz gcc-9d98f8f9c4bea7b6ddcc1cb935e3b17d498b4beb.tar.bz2 |
calls.c (ECF_ALWAYS_RETURN): New constant.
* calls.c (ECF_ALWAYS_RETURN): New constant.
(emit_call_1): Add REG_ALWAYS_RETURN note if needed.
(expand_call): Use LCF_ALWAYS_RETURN for __bb_fork_func.
(emit_library_call_value_1): Handle LCT_ALWAYS_RETRUN.
* flow.c (need_fake_edge_p): Handle REG_ALWAYS_RETURN.
* rtl.c (reg_note_name): New name.
* rtl.h (enum reg_note): Add REG_ALWAYS_RETURN.
From-SVN: r44722
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r-- | gcc/rtl.h | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -566,7 +566,10 @@ enum reg_note /* This kind of note is generated at each to `setjmp', and similar functions that can return twice. */ - REG_SETJMP + REG_SETJMP, + + /* Indicate calls that always returns. */ + REG_ALWAYS_RETURN }; /* The base value for branch probability notes. */ @@ -1952,7 +1955,8 @@ enum libcall_type LCT_CONST_MAKE_BLOCK = 3, LCT_PURE_MAKE_BLOCK = 4, LCT_NORETURN = 5, - LCT_THROW = 6 + LCT_THROW = 6, + LCT_ALWAYS_RETURN = 7 }; extern void emit_library_call PARAMS ((rtx, enum libcall_type, |