mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-11-27 22:03:57 +08:00
cygming.h (DWARF2_UNWIND_INFO): Allow --disable-sjlj-exceptions for TARGET_BI_ARCH to select DWARF-2 EH for...
2016-05-19 Sandra Loosemore <sandra@codesourcery.com> gcc/ * config/i386/cygming.h (DWARF2_UNWIND_INFO): Allow --disable-sjlj-exceptions for TARGET_BI_ARCH to select DWARF-2 EH for 32-bit mode and SEH for 64-bit. * config/i386/mingw32.h (SHARED_LIBGCC_UNDEFS_SPEC): Handle TARGET_64BIT_DEFAULT. libgcc/ * config.host [x86_64-*-cygwin*]: Handle tmake_eh_file for mixed dw2/seh configuration. [x86_64-*-mingw*]: Likewise. From-SVN: r236490
This commit is contained in:
parent
8a40fef310
commit
6befaff666
@ -1,3 +1,11 @@
|
||||
2016-05-19 Sandra Loosemore <sandra@codesourcery.com>
|
||||
|
||||
* config/i386/cygming.h (DWARF2_UNWIND_INFO): Allow
|
||||
--disable-sjlj-exceptions for TARGET_BI_ARCH to select DWARF-2 EH
|
||||
for 32-bit mode and SEH for 64-bit.
|
||||
* config/i386/mingw32.h (SHARED_LIBGCC_UNDEFS_SPEC): Handle
|
||||
TARGET_64BIT_DEFAULT.
|
||||
|
||||
2016-05-16 Ryan Burn <contact@rnburn.com>
|
||||
|
||||
* Makefile.in (GTFILES): Add cilk.h and cilk-common.c.
|
||||
|
@ -339,16 +339,13 @@ do { \
|
||||
#define ASM_COMMENT_START " #"
|
||||
|
||||
#ifndef DWARF2_UNWIND_INFO
|
||||
/* If configured with --disable-sjlj-exceptions, use DWARF2, else
|
||||
default to SJLJ. */
|
||||
/* If configured with --disable-sjlj-exceptions, use DWARF2 for 32-bit
|
||||
mode else default to SJLJ. 64-bit code uses SEH unless you request
|
||||
SJLJ. */
|
||||
#if (defined (CONFIG_SJLJ_EXCEPTIONS) && !CONFIG_SJLJ_EXCEPTIONS)
|
||||
/* The logic of this #if must be kept synchronised with the logic
|
||||
for selecting the tmake_eh_file fragment in config.gcc. */
|
||||
for selecting the tmake_eh_file fragment in libgcc/config.host. */
|
||||
#define DWARF2_UNWIND_INFO 1
|
||||
/* If multilib is selected break build as sjlj is required. */
|
||||
#if defined (TARGET_BI_ARCH)
|
||||
#error For 64-bit windows and 32-bit based multilib version of gcc just SJLJ exceptions are supported.
|
||||
#endif
|
||||
#else
|
||||
#define DWARF2_UNWIND_INFO 0
|
||||
#endif
|
||||
|
@ -100,10 +100,12 @@ along with GCC; see the file COPYING3. If not see
|
||||
#if DWARF2_UNWIND_INFO
|
||||
/* DW2-unwind is just available for 32-bit mode. */
|
||||
#if TARGET_64BIT_DEFAULT
|
||||
#error DW2 unwind is not available for 64-bit.
|
||||
#endif
|
||||
#define SHARED_LIBGCC_UNDEFS_SPEC \
|
||||
"%{m32: %{shared-libgcc: -u ___register_frame_info -u ___deregister_frame_info}}"
|
||||
#else
|
||||
#define SHARED_LIBGCC_UNDEFS_SPEC \
|
||||
"%{shared-libgcc: -u ___register_frame_info -u ___deregister_frame_info}"
|
||||
#endif
|
||||
#else
|
||||
#define SHARED_LIBGCC_UNDEFS_SPEC ""
|
||||
#endif
|
||||
|
@ -1,3 +1,9 @@
|
||||
2016-05-19 Sandra Loosemore <sandra@codesourcery.com>
|
||||
|
||||
* config.host [x86_64-*-cygwin*]: Handle tmake_eh_file for mixed
|
||||
dw2/seh configuration.
|
||||
[x86_64-*-mingw*]: Likewise.
|
||||
|
||||
2016-05-10 Joel Sherrill <joel@rtems.org>
|
||||
|
||||
PR libgcc/70720
|
||||
|
@ -678,6 +678,9 @@ x86_64-*-cygwin*)
|
||||
# This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
|
||||
if test x$ac_cv_sjlj_exceptions = xyes; then
|
||||
tmake_eh_file="i386/t-sjlj-eh"
|
||||
elif test "${host_address}" = 32; then
|
||||
# biarch -m32 with --disable-sjlj-exceptions
|
||||
tmake_eh_file="i386/t-dw2-eh"
|
||||
else
|
||||
tmake_eh_file="i386/t-seh-eh"
|
||||
fi
|
||||
@ -730,6 +733,10 @@ x86_64-*-mingw*)
|
||||
# This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
|
||||
if test x$ac_cv_sjlj_exceptions = xyes; then
|
||||
tmake_eh_file="i386/t-sjlj-eh"
|
||||
elif test "${host_address}" = 32; then
|
||||
# biarch -m32 with --disable-sjlj-exceptions
|
||||
tmake_eh_file="i386/t-dw2-eh"
|
||||
md_unwind_header=i386/w32-unwind.h
|
||||
else
|
||||
tmake_eh_file="i386/t-seh-eh"
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user