#include "unwind.h"

Go to the source code of this file.
| #define DEMAND_SAVE_VFP 1 |
| #define EXIDX_CANTUNWIND 1 |
Referenced by get_eit_entry().
| #define R_IP 12 |
| #define R_LR 14 |
| #define R_PC 15 |
| #define R_SP 13 |
| #define UCB_FORCED_STOP_ARG | ( | ucbp | ) | ((ucbp)->unwinder_cache.reserved4) |
Referenced by __gnu_Unwind_ForcedUnwind(), and unwind_phase2_forced().
| #define UCB_FORCED_STOP_FN | ( | ucbp | ) | ((ucbp)->unwinder_cache.reserved1) |
| #define UCB_PR_ADDR | ( | ucbp | ) | ((ucbp)->unwinder_cache.reserved2) |
Referenced by __gnu_Unwind_RaiseException(), __gnu_Unwind_Resume(), get_eit_entry(), and unwind_phase2_forced().
| #define UCB_SAVED_CALLSITE_ADDR | ( | ucbp | ) | ((ucbp)->unwinder_cache.reserved3) |
Referenced by __gnu_Unwind_Resume(), and unwind_phase2_forced().
| #define uint32_highbit (((_uw) 1) << 31) |
| typedef unsigned char bool |
Definition at line 36 of file unwind-arm.c.
Definition at line 38 of file unwind-arm.c.
| _Unwind_Reason_Code __aeabi_unwind_cpp_pr0 | ( | _Unwind_State | state, | |
| _Unwind_Control_Block * | ucbp, | |||
| _Unwind_Context * | context | |||
| ) |
Definition at line 982 of file unwind-arm.c.
References __gnu_unwind_pr_common().
Referenced by get_eit_entry().
| _Unwind_Reason_Code __aeabi_unwind_cpp_pr1 | ( | _Unwind_State | state, | |
| _Unwind_Control_Block * | ucbp, | |||
| _Unwind_Context * | context | |||
| ) |
| _Unwind_Reason_Code __aeabi_unwind_cpp_pr1 | ( | extern _Unwind_Reason_Code __aeabi_unwind_cpp_pr2 ( | _Unwind_State, | |
| extern _Unwind_Reason_Code __aeabi_unwind_cpp_pr2 ( | _Unwind_Control_Block *, | |||
| _Unwind_Context * | ||||
| ) |
Definition at line 169 of file unwind-arm.c.
References _UVRSC_CORE, _UVRSC_FPA, _UVRSC_VFP, _UVRSC_WMMXC, _UVRSC_WMMXD, _UVRSD_UINT32, _UVRSR_FAILED, _UVRSR_NOT_IMPLEMENTED, _UVRSR_OK, and phase1_vrs::core.
Referenced by get_eit_entry().
| _Unwind_Reason_Code __aeabi_unwind_cpp_pr2 | ( | _Unwind_State | state, | |
| _Unwind_Control_Block * | ucbp, | |||
| _Unwind_Context * | context | |||
| ) |
Definition at line 998 of file unwind-arm.c.
References __gnu_unwind_pr_common().
Referenced by get_eit_entry().
| void __attribute__ | ( | (noreturn) | ) |
| void __attribute__ | ( | (weak) | ) |
| _Unwind_Reason_Code __gnu_Unwind_ForcedUnwind | ( | _Unwind_Control_Block * | ucbp, | |
| _Unwind_Stop_Fn | stop_fn, | |||
| void * | stop_arg, | |||
| phase2_vrs * | entry_vrs | |||
| ) |
Definition at line 657 of file unwind-arm.c.
References phase2_vrs::core, R_LR, R_PC, UCB_FORCED_STOP_ARG, UCB_FORCED_STOP_FN, and unwind_phase2_forced().
| static _Unwind_Reason_Code __gnu_unwind_pr_common | ( | _Unwind_State | state, | |
| _Unwind_Control_Block * | ucbp, | |||
| _Unwind_Context * | context, | |||
| int | id | |||
| ) | [static] |
Definition at line 755 of file unwind-arm.c.
References __gnu_unwind_execute(), _Unwind_decode_target2(), _Unwind_GetGR(), _Unwind_SetGR(), _URC_CONTINUE_UNWIND, _URC_FAILURE, _URC_HANDLER_FOUND, _URC_INSTALL_CONTEXT, _URC_OK, _US_ACTION_MASK, _US_FORCE_UNWIND, _US_UNWIND_FRAME_RESUME, _US_VIRTUAL_UNWIND_FRAME, _Unwind_Control_Block::additional, addr(), _Unwind_Control_Block::barrier_cache, _Unwind_Control_Block::bitpattern, __gnu_unwind_state::bytes_left, _Unwind_Control_Block::cleanup_cache, __gnu_unwind_state::data, _Unwind_Control_Block::ehtp, _Unwind_Control_Block::fnstart, i, if(), len, __gnu_unwind_state::next, offset, _Unwind_Control_Block::pr_cache, R_LR, R_PC, R_SP, selfrel_offset31(), _Unwind_Control_Block::sp, uint32_highbit, and __gnu_unwind_state::words_left.
Referenced by __aeabi_unwind_cpp_pr0(), __aeabi_unwind_cpp_pr1(), and __aeabi_unwind_cpp_pr2().
| _Unwind_Reason_Code __gnu_Unwind_RaiseException | ( | _Unwind_Control_Block * | ucbp, | |
| phase2_vrs * | entry_vrs | |||
| ) |
Definition at line 609 of file unwind-arm.c.
References _URC_CONTINUE_UNWIND, _URC_FAILURE, _URC_HANDLER_FOUND, _URC_OK, _US_VIRTUAL_UNWIND_FRAME, phase1_vrs::core, phase2_vrs::core, phase1_vrs::demand_save_flags, get_eit_entry(), R_LR, R_PC, and UCB_PR_ADDR.
Referenced by __gnu_Unwind_Resume_or_Rethrow().
| _Unwind_Reason_Code __gnu_Unwind_Resume | ( | _Unwind_Control_Block * | ucbp, | |
| phase2_vrs * | entry_vrs | |||
| ) |
Definition at line 674 of file unwind-arm.c.
References _URC_CONTINUE_UNWIND, _URC_INSTALL_CONTEXT, _US_UNWIND_FRAME_RESUME, abort, phase2_vrs::core, R_PC, UCB_FORCED_STOP_FN, UCB_PR_ADDR, UCB_SAVED_CALLSITE_ADDR, and unwind_phase2_forced().
| _Unwind_Reason_Code __gnu_Unwind_Resume_or_Rethrow | ( | _Unwind_Control_Block * | ucbp, | |
| phase2_vrs * | entry_vrs | |||
| ) |
Definition at line 712 of file unwind-arm.c.
References __gnu_Unwind_RaiseException(), phase2_vrs::core, R_LR, R_PC, UCB_FORCED_STOP_FN, and unwind_phase2_forced().
| void _Unwind_Complete | ( | _Unwind_Control_Block *ucbp | __attribute__(unused) | ) |
Definition at line 726 of file unwind-arm.c.
| void _Unwind_DeleteException | ( | _Unwind_Exception * | exc | ) |
Definition at line 743 of file unwind-arm.c.
References _URC_FOREIGN_EXCEPTION_CAUGHT, and _Unwind_Exception::exception_cleanup.
| _Unwind_Word _Unwind_GetCFA | ( | _Unwind_Context * | context | ) |
Definition at line 597 of file unwind-arm.c.
| _Unwind_Ptr _Unwind_GetDataRelBase | ( | _Unwind_Context *context | __attribute__(unused) | ) |
| _Unwind_Ptr _Unwind_GetTextRelBase | ( | _Unwind_Context *context | __attribute__(unused) | ) |
| _Unwind_VRS_Result _Unwind_VRS_Pop | ( | _Unwind_Context * | context, | |
| _Unwind_VRS_RegClass | regclass, | |||
| _uw | discriminator, | |||
| _Unwind_VRS_DataRepresentation | representation | |||
| ) |
Definition at line 239 of file unwind-arm.c.
References _UVRSC_CORE, _UVRSC_FPA, _UVRSC_VFP, _UVRSC_WMMXC, _UVRSC_WMMXD, _UVRSD_DOUBLE, _UVRSD_UINT32, _UVRSD_VFPX, _UVRSR_FAILED, _UVRSR_NOT_IMPLEMENTED, _UVRSR_OK, phase1_vrs::core, count, vfp_regs::d, phase1_vrs::demand_save_flags, DEMAND_SAVE_VFP, dest, for(), i, ptr, R_SP, sp, start, and phase1_vrs::vfp.
Referenced by __gnu_unwind_execute().
| _Unwind_VRS_Result _Unwind_VRS_Set | ( | _Unwind_Context * | context, | |
| _Unwind_VRS_RegClass | regclass, | |||
| _uw | regno, | |||
| _Unwind_VRS_DataRepresentation | representation, | |||
| void * | valuep | |||
| ) |
Definition at line 207 of file unwind-arm.c.
References _UVRSC_CORE, _UVRSC_FPA, _UVRSC_VFP, _UVRSC_WMMXC, _UVRSC_WMMXD, _UVRSD_UINT32, _UVRSR_FAILED, _UVRSR_NOT_IMPLEMENTED, _UVRSR_OK, and phase1_vrs::core.
Referenced by __gnu_unwind_execute(), and _Unwind_SetGR().
| static _Unwind_Reason_Code get_eit_entry | ( | _Unwind_Control_Block * | ucbp, | |
| _uw | return_address | |||
| ) | [static] |
Definition at line 390 of file unwind-arm.c.
References __aeabi_unwind_cpp_pr0(), __aeabi_unwind_cpp_pr1(), __aeabi_unwind_cpp_pr2(), _URC_END_OF_STACK, _URC_FAILURE, _URC_OK, _Unwind_Control_Block::additional, __EIT_entry::content, _Unwind_Control_Block::ehtp, EXIDX_CANTUNWIND, __EIT_entry::fnoffset, _Unwind_Control_Block::fnstart, idx, _Unwind_Control_Block::pr_cache, search_EIT_table(), selfrel_offset31(), UCB_PR_ADDR, and uint32_highbit.
Referenced by __gnu_Unwind_RaiseException(), and unwind_phase2_forced().
| static const __EIT_entry* search_EIT_table | ( | const __EIT_entry * | table, | |
| int | nrec, | |||
| _uw | return_address | |||
| ) | [static] |
Definition at line 351 of file unwind-arm.c.
References n, and selfrel_offset31().
Referenced by get_eit_entry().
| static _Unwind_Reason_Code unwind_phase2_forced | ( | _Unwind_Control_Block * | ucbp, | |
| phase2_vrs * | entry_vrs, | |||
| int | resuming | |||
| ) | [static] |
Definition at line 507 of file unwind-arm.c.
References _URC_CONTINUE_UNWIND, _URC_FAILURE, _URC_INSTALL_CONTEXT, _URC_NO_REASON, _URC_OK, _US_END_OF_STACK, _US_FORCE_UNWIND, _US_UNWIND_FRAME_RESUME, _US_UNWIND_FRAME_STARTING, phase1_vrs::core, phase2_vrs::core, phase1_vrs::demand_save_flags, _Unwind_Control_Block::exception_class, get_eit_entry(), phase1_vrs::prev_sp, R_PC, R_SP, UCB_FORCED_STOP_ARG, UCB_FORCED_STOP_FN, UCB_PR_ADDR, and UCB_SAVED_CALLSITE_ADDR.
Referenced by __gnu_Unwind_ForcedUnwind(), __gnu_Unwind_Resume(), and __gnu_Unwind_Resume_or_Rethrow().
| static _Unwind_Control_Block* unwind_UCB_from_context | ( | _Unwind_Context * | context | ) | [inline, static] |
| int __data_start |
| int __text_start |
1.5.6