aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKai Tietz <kai.tietz@onevision.com>2009-07-27 13:34:29 +0000
committerKai Tietz <ktietz@gcc.gnu.org>2009-07-27 15:34:29 +0200
commit648abd762939ddd5e44d965f19b222d45062d425 (patch)
tree0d2c7fe71c3cf625c948fabe6a7ee056b6fb3680
parentdbf044304cdd78d56ded200412de9de0d22ee536 (diff)
downloadgcc-648abd762939ddd5e44d965f19b222d45062d425.zip
gcc-648abd762939ddd5e44d965f19b222d45062d425.tar.gz
gcc-648abd762939ddd5e44d965f19b222d45062d425.tar.bz2
cygming.h (DWARF2_UNWIND_INFO): Error build when TARGET_BI_ARCH is specified without enabling SJLJ.
2009-07-24 Kai Tietz <kai.tietz@onevision.com> * config/i386/cygming.h (DWARF2_UNWIND_INFO): Error build when TARGET_BI_ARCH is specified without enabling SJLJ. * config/i386/mingw32.h (MD_UNWIND_SUPPORT): Define MD_UNWIND_SUPPORT, if TARGET_64BIT and TARGET_BI_ARCH aren't defined. From-SVN: r150114
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/i386/cygming.h4
-rw-r--r--gcc/config/i386/mingw32.h4
3 files changed, 14 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 82f6b3d..09feedc 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2009-07-24 Kai Tietz <kai.tietz@onevision.com>
+
+ * config/i386/cygming.h (DWARF2_UNWIND_INFO): Error build when
+ TARGET_BI_ARCH is specified without enabling SJLJ.
+ * config/i386/mingw32.h (MD_UNWIND_SUPPORT): Define MD_UNWIND_SUPPORT,
+ if TARGET_64BIT and TARGET_BI_ARCH aren't defined.
+
2009-07-26 Mikael Pettersson <mikpe@it.uu.se>
* arm.md (negdi2): Use DImode if forcing a value into a register.
diff --git a/gcc/config/i386/cygming.h b/gcc/config/i386/cygming.h
index bc81554..5fc0c1d 100644
--- a/gcc/config/i386/cygming.h
+++ b/gcc/config/i386/cygming.h
@@ -287,6 +287,10 @@ do { \
/* The logic of this #if must be kept synchronised with the logic
for selecting the tmake_eh_file fragment in config.gcc. */
#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
diff --git a/gcc/config/i386/mingw32.h b/gcc/config/i386/mingw32.h
index a5657c0..e856ecd 100644
--- a/gcc/config/i386/mingw32.h
+++ b/gcc/config/i386/mingw32.h
@@ -207,7 +207,9 @@ __enable_execute_stack (void *addr) \
#include <windows.h>
#endif
-#if !TARGET_64BIT
+/* For 64-bit Windows we can't use DW2 unwind info. Also for multilib
+ builds we can't use it, too. */
+#if !TARGET_64BIT && !defined (TARGET_BI_ARCH)
#define MD_UNWIND_SUPPORT "config/i386/w32-unwind.h"
#endif