This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r137217 - in /branches/gcc-4_3-branch/gcc: Chan...
- From: uweigand at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Sat, 28 Jun 2008 10:43:12 -0000
- Subject: r137217 - in /branches/gcc-4_3-branch/gcc: Chan...
Author: uweigand
Date: Sat Jun 28 10:43:12 2008
New Revision: 137217
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=137217
Log:
* targhooks.h (struct gcc_target): New member unwind_word_mode.
(default_unwind_word_mode): Add prototype.
* targhooks.c (default_unwind_word_mode): New function.
(default_eh_return_filter_mode): Return targetm.unwind_word_mode ()
instead of word_mode.
* target-def.h (TARGET_UNWIND_WORD_MODE): New macro.
(TARGET_INITIALIZER): Use it.
* c-common.c (handle_mode_attribute): Support "unwind_word"
mode attribute.
* unwind-generic.h (_Unwind_Word, _Unwind_Sword): Use it.
* except.c (init_eh): Use targetm.unwind_word_mode () instead of
word_mode to access SjLj_Function_Context member "data".
(sjlj_emit_dispatch_table): Likewise. Also, perform type
conversion from targetm.eh_return_filter_mode () to
targetm.unwind_word_mode () if they differ.
* builtin-types.def (BT_UNWINDWORD): New primitive type.
(BT_FN_UNWINDWORD_PTR): New function type.
(BT_FN_WORD_PTR): Remove.
* builtins.def (BUILT_IN_EXTEND_POINTER): Use BT_FN_UNWINDWORD_PTR.
* except.c (expand_builtin_extend_pointer): Convert pointer to
targetm.unwind_word_mode () instead of word_mode.
* config/spu/spu-protos.h (spu_eh_return_filter_mode): Remove.
* config/spu/spu.c (spu_eh_return_filter_mode): Remove.
(spu_unwind_word_mode): New function.
(TARGET_EH_RETURN_FILTER_MODE): Do not define.
(TARGET_UNWIND_WORD_MODE): Define.
* config/spu/t-spu-elf (TARGET_LIBGCC2_CFLAGS): Remove -D__word__=SI.
Modified:
branches/gcc-4_3-branch/gcc/ChangeLog
branches/gcc-4_3-branch/gcc/builtin-types.def
branches/gcc-4_3-branch/gcc/builtins.def
branches/gcc-4_3-branch/gcc/c-common.c
branches/gcc-4_3-branch/gcc/config/spu/spu-protos.h
branches/gcc-4_3-branch/gcc/config/spu/spu.c
branches/gcc-4_3-branch/gcc/config/spu/t-spu-elf
branches/gcc-4_3-branch/gcc/except.c
branches/gcc-4_3-branch/gcc/target-def.h
branches/gcc-4_3-branch/gcc/target.h
branches/gcc-4_3-branch/gcc/targhooks.c
branches/gcc-4_3-branch/gcc/targhooks.h
branches/gcc-4_3-branch/gcc/unwind-generic.h