-2014-12-16 Roland McGrath <roland@hack.frob.com>
-
- * nptl/unwind.c: Use pragma to turn on -fexceptions.
- * sysdeps/nptl/unwind-forcedunwind.c: Use pragma to turn on
- -fexceptions and -fasynchronous-unwind-tables.
- * sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c: Likewise.
- * sysdeps/gnu/unwind-resume.c: Likewise.
- * nptl/Makefile (CFLAGS-unwind.c, CFLAGS-unwind-forcedunwind.c):
- Variables removed.
- * sysdeps/gnu/Makefile
- [$(subdir) = csu] (CFLAGS-unwind-resume.c): Likewise.
- [$(subdir) = rt] (CFLAGS-rt-unwind-resume.c): Likewise.
-
2014-12-16 Joseph Myers <joseph@codesourcery.com>
[BZ #17719]
# nptl-init.c contains sigcancel_handler().
CFLAGS-nptl-init.c = -fexceptions -fasynchronous-unwind-tables
+# The unwind code itself,
+CFLAGS-unwind.c = -fexceptions
+CFLAGS-unwind-forcedunwind.c = -fexceptions -fasynchronous-unwind-tables
# The following three functions must be async-cancel safe.
CFLAGS-pthread_cancel.c = -fexceptions -fasynchronous-unwind-tables
#include "pthreadP.h"
#include <jmpbuf-unwind.h>
-#pragma GCC optimize "-fexceptions"
-
#ifdef HAVE_FORCED_UNWIND
#ifdef _STACK_GROWS_DOWN
ifeq ($(subdir),csu)
routines += unwind-resume
shared-only-routines += unwind-resume
+CFLAGS-unwind-resume.c += -fexceptions -fasynchronous-unwind-tables
endif
ifeq ($(subdir),rt)
librt-sysdep_routines += rt-unwind-resume
librt-shared-only-routines += rt-unwind-resume
+CFLAGS-rt-unwind-resume.c += -fexceptions -fasynchronous-unwind-tables
endif
#include <unwind.h>
#include <gnu/lib-names.h>
-#pragma GCC optimize ("-fexceptions", "-fasynchronous-unwind-tables")
-
static void (*libgcc_s_resume) (struct _Unwind_Exception *exc)
__attribute__ ((noreturn));
static _Unwind_Reason_Code (*libgcc_s_personality)
#include <sysdep.h>
#include <gnu/lib-names.h>
-#pragma GCC optimize ("-fexceptions", "-fasynchronous-unwind-tables")
-
static void *libgcc_s_handle;
static void (*libgcc_s_resume) (struct _Unwind_Exception *exc);
static _Unwind_Reason_Code (*libgcc_s_personality)
#include <unwind.h>
#include <pthreadP.h>
-#pragma GCC optimize ("-fexceptions", "-fasynchronous-unwind-tables")
-
static void *libgcc_s_handle;
static void (*libgcc_s_resume) (struct _Unwind_Exception *exc)
__attribute_used__;