aboutsummaryrefslogtreecommitdiff
path: root/gcc/unwind-c.c
diff options
context:
space:
mode:
authorDaniel Jacobowitz <dan@codesourcery.com>2005-11-16 17:08:05 +0000
committerDaniel Jacobowitz <drow@gcc.gnu.org>2005-11-16 17:08:05 +0000
commit74d9c39f6aeaec9ed8a99167890283f4519219dd (patch)
tree099343db634a03965f65fd2dcff754e631fadd4b /gcc/unwind-c.c
parent1dcca6f3616f620f7ac81e9f4b814b06b246b093 (diff)
downloadgcc-74d9c39f6aeaec9ed8a99167890283f4519219dd.zip
gcc-74d9c39f6aeaec9ed8a99167890283f4519219dd.tar.gz
gcc-74d9c39f6aeaec9ed8a99167890283f4519219dd.tar.bz2
unwind-arm.c (abort): Add prototype here.
gcc/ * config/arm/unwind-arm.c (abort): Add prototype here. (UCB_FORCED_STOP_ARG): Correct typo in macro argument. (struct phase1_vrs): Add prev_sp. (unwind_phase2_forced): Save the original core registers instead of modifying entry_vrs. Take a new flag argument for resuming unwinding and set action flags accordingly. Always set _US_END_OF_STACK when get_eit_entry fails. Unwind before calling the stop function. (_Unwind_GetCFA): New function. (__gnu_Unwind_ForcedUnwind): Update call to unwind_phase2_forced. (__gnu_Unwind_Resume_or_Rethrow): Likewise. (__gnu_Unwind_Resume): Do not unwind here for forced unwinding; just call unwind_phase2_forced. (_Unwind_GetDataRelBase, _Unwind_GetTextRelBase): Move to here. * config/arm/unwind-arm.h (abort): Remove prototype. (_Unwind_GetDataRelBase, _Unwind_GetTextRelBase): Change to prototypes. (_Unwind_GetCFA): New prototype. * config/arm/pr-support.c (abort): Add prototype here. * unwind-c.c (PERSONALITY_FUNCTION) [__ARM_EABI_UNWINDER__]: Handle forced unwinding. * config/arm/arm.c (arm_expand_prologue, thumb_expand_prologue): Do not schedule the prologue with non-call exceptions and EABI. gcc/testsuite/ * gcc.dg/cleanup-5.c, gcc.dg/cleanup-8.c, gcc.dg/cleanup-9.c, gcc.dg/cleanup-10.c, gcc.dg/cleanup-11.c: Update for ARM EABI. From-SVN: r107091
Diffstat (limited to 'gcc/unwind-c.c')
-rw-r--r--gcc/unwind-c.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/unwind-c.c b/gcc/unwind-c.c
index 6fb66e0..e3e2eca 100644
--- a/gcc/unwind-c.c
+++ b/gcc/unwind-c.c
@@ -129,7 +129,7 @@ PERSONALITY_FUNCTION (int version,
_Unwind_Ptr landing_pad, ip;
#ifdef __ARM_EABI_UNWINDER__
- if (state != _US_UNWIND_FRAME_STARTING)
+ if ((state & _US_ACTION_MASK) != _US_UNWIND_FRAME_STARTING)
CONTINUE_UNWINDING;
/* The dwarf unwinder assumes the context structure holds things like the