diff options
author | Mikael Pettersson <mikpe@it.uu.se> | 2011-06-06 13:43:31 +0200 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2011-06-06 11:43:31 +0000 |
commit | 275311c494a330790748a27d28fa494bd4a18933 (patch) | |
tree | 4cf2bc8dd32967087e36ff5664d882cd396e5b51 /gcc/calls.c | |
parent | 38fbfaf6fb23fdcd130cc524839686b9ad28f752 (diff) | |
download | gcc-275311c494a330790748a27d28fa494bd4a18933.zip gcc-275311c494a330790748a27d28fa494bd4a18933.tar.gz gcc-275311c494a330790748a27d28fa494bd4a18933.tar.bz2 |
re PR tree-optimization/49243 (attribute((returns_twice)) doesn't work)
2011-06-06 Mikael Pettersson <mikpe@it.uu.se>
PR tree-optimization/49243
* calls.c (setjmp_call_p): Also check if fndecl has the
returns_twice attribute.
* gcc.dg/pr49243.c: New.
From-SVN: r174695
Diffstat (limited to 'gcc/calls.c')
-rw-r--r-- | gcc/calls.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index f5592c5..feb98d2 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -567,6 +567,8 @@ special_function_p (const_tree fndecl, int flags) int setjmp_call_p (const_tree fndecl) { + if (DECL_IS_RETURNS_TWICE (fndecl)) + return ECF_RETURNS_TWICE; return special_function_p (fndecl, 0) & ECF_RETURNS_TWICE; } |