diff options
author | Peter S. Mazinger <ps.m@gmx.net> | 2011-03-13 20:10:13 +0100 |
---|---|---|
committer | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2012-06-15 14:00:23 +0200 |
commit | 8f86b8a1977128e2795737fed2577b377cc2b15e (patch) | |
tree | efe970f2c360ff69636f4625517e275346d9975d /include/setjmp.h | |
parent | 17967fd080face7e64a3c25b323760deab106096 (diff) |
move *longjmp related prototypes to setjmp.h
Provide common prototypes for __longjmp, __libc_longjmp, __libc_siglongjmp
_longjmp_unwind, __libc_unwind_longjmp in setjmp.h in preparation for use in LT new
Add __longjmp to h8300 and i960
Make common longjmp.c good for NPTL
Guard _longjmp_unwind use in sh's longjmp.c for NPTL (I think sh could use the common one)
Remove unneeded attribute_noreturn, prototype provides it already
Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Diffstat (limited to 'include/setjmp.h')
-rw-r--r-- | include/setjmp.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/setjmp.h b/include/setjmp.h index fb9c078f7..c70f77198 100644 --- a/include/setjmp.h +++ b/include/setjmp.h @@ -113,4 +113,14 @@ extern void siglongjmp (sigjmp_buf __env, int __val) __END_DECLS +#ifdef _LIBC +extern void __longjmp(__jmp_buf __env, int __val) attribute_noreturn; +libc_hidden_proto(__longjmp) +extern __typeof(longjmp) __libc_longjmp attribute_noreturn; +extern __typeof(siglongjmp) __libc_siglongjmp attribute_noreturn; +extern void _longjmp_unwind(jmp_buf __env, int __val); +/* We use the normal longjmp for unwinding */ +# define __libc_unwind_longjmp(buf, val) __libc_longjmp(buf, val) +#endif + #endif /* setjmp.h */ |