This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
gcc gcc/ChangeLog gcc/unwind-arm.h gcc/testsui ...
- From: nathan at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org, libstdc++-cvs at gcc dot gnu dot org
- Date: 20 Oct 2005 13:18:50 -0000
- Subject: gcc gcc/ChangeLog gcc/unwind-arm.h gcc/testsui ...
CVSROOT: /cvs/gcc
Module name: gcc
Branch: csl-arm-branch
Changes by: nathan@gcc.gnu.org 2005-10-20 13:18:50
Modified files:
gcc : ChangeLog unwind-arm.h
gcc/testsuite : ChangeLog
libstdc++-v3 : ChangeLog
gcc/config/arm : libunwind.S unwind-arm.c
gcc/testsuite/g++.dg/eh: forced1.C forced2.C forced3.C forced4.C
libstdc++-v3/libsupc++: eh_arm.cc eh_personality.cc eh_throw.cc
Log message:
* gcc/unwind-arm.h: Reorder interface function declarations.
(_URC_END_OF_STACK): New enumeration value.
(_US_UNWIND_ACTION_MASK, _US_FORCE_UNWIND, _US_END_OF_STACK): Likewise.
(struct _Unwind_Control_Block): Document reserved field use.
(_Unwind_Stop_Fn): New typedef.
(_Unwind_ForcedUnwind): Declare.
(_Unwind_Resume_or_Rethrow): Declare.
* gcc/config/arm/libunwind.S (UNWIND_WRAPER): Add nargs
argument. Adjust.
(_Unwind_Resume_or_Rethrow, _Unwind_ForcedUnwind): New.
* gcc/config/arm/unwind-arm.c (UCB_FORCED_STOP_FN,
UCB_FORCED_STOP_ARG): New.
(get_eit_entry): Return _URC_END_OF_STACK when cannot unwind.
(unwind_phase2): Replace for with do..while.
(unwind_phase2_forced): New.
(__gnu_Unwind_RaiseException): Replace for with do..while.
(__gnu_Unwind_ForcedUnwind): New.
(__gnu_Unwind_Resume): Set FORCE_UNWIND flag, if forced unwinding.
Use appropriate phase2 unwinder.
(__gnu_Unwind_Resume_or_Rethrow): New.
(__gnu_unwind_pr_common): Cope with forced unwinding.
* gcc/testsuite/g++.dg/eh/forced1.C: Adjust to cope with ARM EABI
structures.
* gcc/testsuite/g++.dg/eh/forced2.C: Likewise.
* gcc/testsuite/g++.dg/eh/forced3.C: Likewise.
* gcc/testsuite/g++.dg/eh/forced4.C: Likewise.
* libstdc++-v3/libsupc++/eh_arm.cc (__cxa_begin_cleanup): Remember a
foreign exception too.
(__gnu_end_cleanup): Recover a foreign exception too.
* libstdc++-v3/libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Cope
with forced unwinding.
* libstdc++-v3/libsupc++/eh_throw.cc (__cxxabiv1::__cxa_rethrow): Use
_Unwind_Resume_or_Rethrow for ARM EABI.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=2.1568.2.97&r2=2.1568.2.98
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/unwind-arm.h.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/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.3146.2.26&r2=1.3146.2.27
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/ChangeLog.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.2049.2.15&r2=1.2049.2.16
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/arm/libunwind.S.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.1.2.3&r2=1.1.2.4
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=1.1.2.9&r2=1.1.2.10
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/eh/forced1.C.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.3.16.1&r2=1.3.16.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/eh/forced2.C.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.3.16.1&r2=1.3.16.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/eh/forced3.C.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.2.22.1&r2=1.2.22.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/eh/forced4.C.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.2.22.1&r2=1.2.22.2
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=1.1.2.4&r2=1.1.2.5
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.3&r2=1.13.8.4
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.2&r2=1.7.8.3