* except.h (MUST_USE_SJLJ_EXCEPTIONS): Revert 2003-09-23 change.
Allow override.
* doc/tm.texi (MUST_USE_SJLJ_EXCEPTIONS): Document.
From-SVN: r71985
+2003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * except.h (MUST_USE_SJLJ_EXCEPTIONS): Revert 2003-09-23 change.
+ Allow override.
+ * doc/tm.texi (MUST_USE_SJLJ_EXCEPTIONS): Document.
+
2003-09-23 David S. Miller <davem@redhat.com>
* config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Undefine
instead of inline unwinders and @code{__unwind_function} in the non-@code{setjmp} case.
@end defmac
+@defmac MUST_USE_SJLJ_EXCEPTIONS
+This macro need only be defined if @code{DWARF2_UNWIND_INFO} is
+runtime-variable. In that case, @file{except.h} cannot correctly
+determine the corresponding definition of
+@code{MUST_USE_SJLJ_EXCEPTIONS}, so the target must provide it directly.
+@end defmac
+
@defmac DWARF_CIE_DATA_ALIGNMENT
This macro need only be defined if the target might save registers in the
function prologue at an offset to the stack pointer that is not aligned to
mean that we can use call frame exceptions. Detect that the target
has appropriate support. */
-#if ! (defined (EH_RETURN_DATA_REGNO) \
+#ifndef MUST_USE_SJLJ_EXCEPTIONS
+# if !(defined (EH_RETURN_DATA_REGNO) \
&& (defined (IA64_UNWIND_INFO) \
|| (DWARF2_UNWIND_INFO \
&& (defined (EH_RETURN_HANDLER_RTX) \
|| defined (HAVE_eh_return)))))
-# define MUST_USE_SJLJ_EXCEPTIONS 1
-#else
-# ifdef IA64_UNWIND_INFO
-# define MUST_USE_SJLJ_EXCEPTIONS 0
+# define MUST_USE_SJLJ_EXCEPTIONS 1
# else
-# define MUST_USE_SJLJ_EXCEPTIONS (DWARF2_UNWIND_INFO == 0)
+# define MUST_USE_SJLJ_EXCEPTIONS 0
# endif
#endif