diff options
author | Paul Brook <paul@codesourcery.com> | 2011-09-13 12:48:33 +0000 |
---|---|---|
committer | Paul Brook <pbrook@gcc.gnu.org> | 2011-09-13 12:48:33 +0000 |
commit | 1e874273f8d6e8a7bdfe7bc76fceb7d20d1f1ef2 (patch) | |
tree | 919ab69e4bf163c2220a80d2baee8cd54fe40723 /libgcc/unwind-c.c | |
parent | 3e0cef6dddb0eeba482ef43bbca8eeac4b57666a (diff) | |
download | gcc-1e874273f8d6e8a7bdfe7bc76fceb7d20d1f1ef2.tar.gz |
arm.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
2011-09-13 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
(ARM_TARGET2_DWARF_FORMAT): Provide default definition.
* config/arm/linux-eabi.h (ARM_TARGET2_DWARF_FORMAT): Define.
* config/arm/symbian.h (ARM_TARGET2_DWARF_FORMAT): Define.
* config/arm/uclinux-eabi.h(ARM_TARGET2_DWARF_FORMAT): Define.
* config/arm/t-bpabi (EXTRA_HEADERS): Add unwind-arm-common.h.
* config/arm/t-symbian (EXTRA_HEADERS): Add unwind-arm-common.h.
* config/c6x/c6x.c (c6x_output_file_unwind): Don't rely on dwarf2 code
enabling unwind tables.
(c6x_debug_unwind_info): New function.
(TARGET_ARM_EABI_UNWINDER): Define.
(TARGET_DEBUG_UNWIND_INFO): Define.
* config/c6x/c6x.h (DWARF_FRAME_RETURN_COLUMN): Define.
(TARGET_EXTRA_CFI_SECTION): Remove.
* config/c6x/t-c6x-elf (EXTRA_HEADERS): Set.
* ginclude/unwind-arm-common.h: New file.
libgcc/
* config.host (tic6x-*-*): Add c6x/t-c6x-elf. Set unwind_header.
* unwind-c.c (PERSONALITY_FUNCTION): Use UNWIND_POINTER_REG.
* unwind-arm-common.inc: New file.
* config/arm/unwind-arm.c: Use unwind-arm-common.inc.
* config/arm/unwind-arm.h: Use unwind-arm-common.h.
(_GLIBCXX_OVERRIDE_TTYPE_ENCODING): Define.
* config/c6x/libunwind.S: New file.
* config/c6x/pr-support.c: New file.
* config/c6x/unwind-c6x.c: New file.
* config/c6x/unwind-c6x.h: New file.
* config/c6x/t-c6x-elf: New file.
libstdc++-v3/
* libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
* libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
* libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
__ARM_EABI_UNWINDER__ check.
(parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
(get_ttype_entry): Use generic implementation on ARM EABI.
(check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
UNWIND_STACK_REG.
(PERSONALITY_FUNCTION): Set ttype_base.
From-SVN: r178808
Diffstat (limited to 'libgcc/unwind-c.c')
-rw-r--r-- | libgcc/unwind-c.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libgcc/unwind-c.c b/libgcc/unwind-c.c index 86b9f557048..bd4941db3e2 100644 --- a/libgcc/unwind-c.c +++ b/libgcc/unwind-c.c @@ -130,10 +130,10 @@ PERSONALITY_FUNCTION (int version, /* The dwarf unwinder assumes the context structure holds things like the function and LSDA pointers. The ARM implementation caches these in - the exception header (UCB). To avoid rewriting everything we make the - virtual IP register point at the UCB. */ + the exception header (UCB). To avoid rewriting everything we make a + virtual scratch register point at the UCB. */ ip = (_Unwind_Ptr) ue_header; - _Unwind_SetGR (context, 12, ip); + _Unwind_SetGR (context, UNWIND_POINTER_REG, ip); #else if (version != 1) return _URC_FATAL_PHASE1_ERROR; |