This is the mail archive of the libstdc++-cvs@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gcc ./ChangeLog.csl-arm gcc/ChangeLog.csl-arm ...


CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	csl-arm-branch
Changes by:	pbrook@gcc.gnu.org	2004-09-22 15:40:34

Modified files:
	.              : ChangeLog.csl-arm 
	gcc            : ChangeLog.csl-arm Makefile.in except.c 
	                 target-def.h target.h unwind-c.c unwind.h 
	gcc/config/arm : arm.c arm.h bpabi.h elf.h lib1funcs.asm t-bpabi 
	                 t-symbian 
	gcc/doc        : tm.texi 
	libstdc++-v3/libsupc++: Makefile.am Makefile.in eh_catch.cc 
	                        eh_personality.cc eh_throw.cc 
	                        unwind-cxx.h 
Added files:
	gcc            : unwind-arm.h 
	gcc/config/arm : libunwind.S unwind-arm.c 
	libstdc++-v3/libsupc++: eh_arm.cc eh_call.cc 

Log message:
	* Makefile.in (USER_H): Add unwind-arm.h.
	* except.c (fnspec_ttable_indirect): Add.
	(init_eh): Set it.
	(add_ehspec_entry): Handle fnspec_ttable_indirect.
	(output_ttype): New function.
	(output_function_exception_table): Use it.  Handle
	fnspec_ttable_indirect.
	* target-def.h (TARGET_ASM_TTYPE): Define.
	(TARGET_EH_FNSPEC_TTABLE_INDIRECT): Ditto.
	* target.h (struct gcc_target): Add asm_out.ttype and
	eh_fnspec_ttable_indirect.
	* unwind-arm.h: New file.
	* unwind-c.c (CONTINUE_UNWINDING): Define.
	(PERSONALITY_FUNCTION): Add ARM EABI prototype and initialization
	code.  Use CONTINUE_UNWINDING.
	* unwind.h: Include unwind-arm.h when using ARM EABI unwinder.
	* config/arm/arm.c (arm_unwind_emit, arm_output_ttype): New functions.
	(arm_unwind_emit_stm, arm_unwind_emit_set): New functions.
	(TARGET_UNWIND_EMIT, TARGET_ASM_TTYPE): Define.
	(TARGET_EH_FNSPEC_TTABLE_INDIRECT): Ditto.
	(thumb_pushpop, thumb_output_function_prologue): Output frame
	unwinding directives.
	* config/arm/arm.h (MUST_USE_SJLJ_EXCEPTIONS): Only define when
	!TARGET_UNWIND_INFO.
	* config/arm/bpabi.h (TARGET_UNWIND_INFO): Define.
	* config/arm/elf.h (ASM_DECLARE_FUNCTION_NAME,
	ASM_DECLARE_FUNCTION_SIZE): Output frame unwinding annotatons.
	* config/arm/lib1funcs.asm: Include libunwind.s
	* config/arm/libunwind.S: New file.
	* config/arm/t-bpabi (LIB1ASMFUNCS): Add _unwind.
	(LIB2ADDEH, LIB2ADDEHDEP): Set.
	* config/arm/t-symbian (LIB2ADDEH, LIB2ADDEHDEP): Set.
	* config/arm/unwind-arm.c: New file.
	* doc/tm.texi: Document TARGET_ASM_TTYPE and
	TARGET_EH_FNSPEC_TTABLE_INDIRECT.
	libstdc++/
	Add support for ARM EABI unwinding library.
	* libsupc++/Makefile.am (sources): Add eh_arm.cc and eh_call.cc.
	* libsupc++/Makefile.in: Regenerate.
	* libsupc++/eh_arm.cc: New file.
	* libsupc++/eh_call.cc: New file.
	* libsupc++/eh_catch.cc (__cxa_begin_catch): Call _Unwind_Complete.
	Use __is_gxx_exception_class.
	(__cxa_end_catch): Use __is_gxx_exception_class.
	* libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Define if
	using ARM EABI unwinder.
	(_throw_typet): Declare.
	(check_exception_spec, get_ttype_entry, get_adjusted_ptr): Add
	ARM EABI implementations.
	(CONTINUE_UNWINDING): Define.
	(PERSONALITY_FUNCTION): Use CONTINUE_UNWINDING and
	__cxa_call_terminate.  Add Support for ARM EABI.  Including changes
	to function prototype, initialization code, exception object format,
	and calling __cxa_begin_cleanup.
	(__cxa_call_unexpected): Disable on arm systems.
	* libsupc++/eh_throw.cc (__cxa_throw): Use __GXX_INIT_EXCEPTION_CLASS.
	(__cxa_rethrow): Use __is_gxx_exception_class.  Always call
	_Unwind_RaiseException on ARM EABI targets.
	* libsupc++/unwind-cxx.h (__cxa_call_terminate): Declare.
	(__cxa_type_match, __cxa_begin_cleanup, __cxa_end_cleanup): Declare.
	(__is_gxx_exception_class, __GXX_INIT_EXCEPTION_CLASS): Define.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/ChangeLog.csl-arm.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.1.2.7&r2=1.1.2.8
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/unwind-arm.h.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.csl-arm.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.1.2.35&r2=1.1.2.36
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/Makefile.in.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.1185.2.5&r2=1.1185.2.6
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/except.c.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.253.4.4&r2=1.253.4.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/target-def.h.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.59.2.10&r2=1.59.2.11
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/target.h.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.67.2.12&r2=1.67.2.13
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/unwind-c.c.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.5&r2=1.5.8.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/unwind.h.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.13.4.2&r2=1.13.4.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/libunwind.S.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/unwind-arm.c.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/arm.c.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.303.2.52&r2=1.303.2.53
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/arm.h.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.210.2.40&r2=1.210.2.41
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/bpabi.h.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.1.4.7&r2=1.1.4.8
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/elf.h.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.44.8.4&r2=1.44.8.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/lib1funcs.asm.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.26.4.8&r2=1.26.4.9
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/t-bpabi.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.1.4.1&r2=1.1.4.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/t-symbian.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.1.2.4&r2=1.1.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/tm.texi.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.264.2.17&r2=1.264.2.18
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/libsupc++/eh_arm.cc.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/libsupc++/eh_call.cc.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/libsupc++/Makefile.am.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.48.4.2&r2=1.48.4.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/libsupc++/Makefile.in.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.104.4.6&r2=1.104.4.7
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/libsupc++/eh_catch.cc.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.5.10.3&r2=1.5.10.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/libsupc++/eh_personality.cc.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.13.8.1&r2=1.13.8.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/libsupc++/eh_throw.cc.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.7.8.1&r2=1.7.8.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/libsupc++/unwind-cxx.h.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.6.8.1&r2=1.6.8.2


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]