* targhooks.c (default_except_unwind_info): Remove
authorfroydnj <froydnj@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 24 Nov 2010 23:37:33 +0000 (23:37 +0000)
committerfroydnj <froydnj@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 24 Nov 2010 23:37:33 +0000 (23:37 +0000)
MUST_USE_SJLJ_EXCEPTIONS case.
* config/h8300/h8300.h (MUST_USE_SJLJ_EXCEPTIONS): Delete.
* config/h8300/h8300.c (TARGET_EXCEPT_UNWIND_INFO): Define.
* doc/tm.texi.in (MUST_USE_SJLJ_EXCEPTIONS): Delete.
* doc/tm.texi: Regenerate.
* system.h (MUST_USE_SJLJ_EXCEPTIONS): Poison.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167131 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/h8300/h8300.c
gcc/config/h8300/h8300.h
gcc/doc/tm.texi
gcc/doc/tm.texi.in
gcc/system.h
gcc/targhooks.c

index 85ff5a9..a637c6c 100644 (file)
@@ -1,5 +1,15 @@
 2010-11-24  Nathan Froyd  <froydnj@codesourcery.com>
 
+       * targhooks.c (default_except_unwind_info): Remove
+       MUST_USE_SJLJ_EXCEPTIONS case.
+       * config/h8300/h8300.h (MUST_USE_SJLJ_EXCEPTIONS): Delete.
+       * config/h8300/h8300.c (TARGET_EXCEPT_UNWIND_INFO): Define.
+       * doc/tm.texi.in (MUST_USE_SJLJ_EXCEPTIONS): Delete.
+       * doc/tm.texi: Regenerate.
+       * system.h (MUST_USE_SJLJ_EXCEPTIONS): Poison.
+
+2010-11-24  Nathan Froyd  <froydnj@codesourcery.com>
+
        * cppbuiltin.c (define_builtin_macros_for_type_sizes): Define
        __FLOAT_WORD_ORDER__ according to FLOAT_WORDS_BIG_ENDIAN.
        * config/dfp-bit.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Delete.
index 1c7c27b..31aa54c 100644 (file)
@@ -5975,4 +5975,7 @@ h8300_trampoline_init (rtx m_tramp, tree fndecl, rtx cxt)
 #undef TARGET_OPTION_OPTIMIZATION_TABLE
 #define TARGET_OPTION_OPTIMIZATION_TABLE h8300_option_optimization_table
 
+#undef TARGET_EXCEPT_UNWIND_INFO
+#define TARGET_EXCEPT_UNWIND_INFO sjlj_except_unwind_info
+
 struct gcc_target targetm = TARGET_INITIALIZER;
index 35094de..589b70f 100644 (file)
@@ -125,10 +125,8 @@ extern const char * const *h8_reg_names;
 #define TARGET_DEFAULT (MASK_QUICKCALL)
 #endif
 
-/* We want dwarf2 info available to gdb...  */
+/* We want dwarf2 info available to gdb.  */
 #define DWARF2_DEBUGGING_INFO        1
-/* ... but we don't actually support full dwarf2 EH.  */
-#define MUST_USE_SJLJ_EXCEPTIONS 1
 
 /* The return address is pushed on the stack.  */
 #define INCOMING_RETURN_ADDR_RTX   gen_rtx_MEM (Pmode, gen_rtx_REG (Pmode, STACK_POINTER_REGNUM))
index b58ee7b..6cb2507 100644 (file)
@@ -8888,13 +8888,6 @@ This variable should be set to @code{true} if the target ABI requires unwinding
 tables even when exceptions are not used.
 @end deftypevr
 
-@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 DONT_USE_BUILTIN_SETJMP
 Define this macro to 1 if the @code{setjmp}/@code{longjmp}-based scheme
 should use the @code{setjmp}/@code{longjmp} functions from the C library
index f230307..1e4432b 100644 (file)
@@ -8858,13 +8858,6 @@ This variable should be set to @code{true} if the target ABI requires unwinding
 tables even when exceptions are not used.
 @end deftypevr
 
-@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 DONT_USE_BUILTIN_SETJMP
 Define this macro to 1 if the @code{setjmp}/@code{longjmp}-based scheme
 should use the @code{setjmp}/@code{longjmp} functions from the C library
index fbeab0f..41e8657 100644 (file)
@@ -786,7 +786,7 @@ extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
        SWITCH_CURTAILS_COMPILATION SWITCH_TAKES_ARG WORD_SWITCH_TAKES_ARG \
        TARGET_OPTION_TRANSLATE_TABLE HANDLE_PRAGMA_PACK_PUSH_POP          \
        HANDLE_SYSV_PRAGMA HANDLE_PRAGMA_WEAK CONDITIONAL_REGISTER_USAGE   \
-       FUNCTION_ARG_BOUNDARY
+       FUNCTION_ARG_BOUNDARY MUST_USE_SJLJ_EXCEPTIONS
 
 /* Hooks that are no longer used.  */
  #pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE  \
index 35cd592..f55fa85 100644 (file)
@@ -1311,12 +1311,6 @@ default_debug_unwind_info (void)
 enum unwind_info_type
 default_except_unwind_info (void)
 {
-  /* ??? Change the one user to the hook, then poison this.  */
-#ifdef MUST_USE_SJLJ_EXCEPTIONS
-  if (MUST_USE_SJLJ_EXCEPTIONS)
-    return UI_SJLJ;
-#endif
-
   /* Obey the configure switch to turn on sjlj exceptions.  */
 #ifdef CONFIG_SJLJ_EXCEPTIONS
   if (CONFIG_SJLJ_EXCEPTIONS)