diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-05-07 13:02:36 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-05-07 13:02:36 +0000 |
commit | 3621f68e3b552b877a84ef9fb97fb4cf419267bc (patch) | |
tree | 526d59f90336916a5e5f4f289babd36470843647 /gcc/calls.c | |
parent | e0e03aa1a484646a0dea60c00180235fdff4dc7c (diff) | |
download | gcc-3621f68e3b552b877a84ef9fb97fb4cf419267bc.tar.gz |
2013-05-07 Richard Biener <rguenther@suse.de>
* calls.c (special_function_p): setjmp-like functions are leaf.
* builtins.def (BUILT_IN_SETJMP): setjmp is leaf.
* tree-inline.c (update_ssa_across_abnormal_edges): Remove assert.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198681 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/calls.c')
-rw-r--r-- | gcc/calls.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index cdab8e04617..0c7f22566bc 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -545,7 +545,7 @@ special_function_p (const_tree fndecl, int flags) && ! strcmp (tname, "sigsetjmp")) || (tname[1] == 'a' && ! strcmp (tname, "savectx"))) - flags |= ECF_RETURNS_TWICE; + flags |= ECF_RETURNS_TWICE | ECF_LEAF; if (tname[1] == 'i' && ! strcmp (tname, "siglongjmp")) @@ -557,7 +557,7 @@ special_function_p (const_tree fndecl, int flags) && ! strcmp (tname, "vfork")) || (tname[0] == 'g' && tname[1] == 'e' && !strcmp (tname, "getcontext"))) - flags |= ECF_RETURNS_TWICE; + flags |= ECF_RETURNS_TWICE | ECF_LEAF; else if (tname[0] == 'l' && tname[1] == 'o' && ! strcmp (tname, "longjmp")) |