[PATCH] C6X unwinding table generation
Nick Clifton
nickc@redhat.com
Fri Apr 8 16:15:00 GMT 2011
Hi Paul,
> 2011-04-07 Paul Brook<paul@codesourcery.com>
>
> bfd/
> * elf32-tic6x.c (is_tic6x_elf_unwind_section_name,
> elf32_tic6x_fake_sections): New functions.
> (elf_backend_fake_sections): Define.
>
> gas/
> * config/tc-tic6x.c (streq): Define.
> (unwind): New variable.
> (s_tic6x_cantunwind, s_tic6x_handlerdata, s_tic6x_endp,
> s_tic6x_personalityindex, s_tic6x_personality): New functions.
> (md_pseudo_table): Add "endp", "handlerdata", "personalityindex",
> "personality" and "cantunwind".
> (tic6x_regname_to_dw2regnum, tic6x_frame_initial_instructions,
> start_unwind_section, unwind_frame_regs, pop_rts_offset_little,
> pop_rts_offset_big, unwind_reg_from_dwarf, flush_unwind_word,
> unwind_byte, unwind_2byte, unwind_uleb, tic6x_cfi_startproc,
> output_exidx_entry, tic6x_output_unwinding, tic6x_cfi_endproc,
> * config/tc-tic6x.h (tic6x_segment_info_type): Add
> marked_pr_dependency.
> (TARGET_USE_CFIPOP, tc_regname_to_dw2regnum,
> tc_cfi_frame_initial_instructions, DWARF2_DEFAULT_RETURN_COLUMN,
> DWARF2_CIE_DATA_ALIGNMENT, tc_cfi_startproc, tc_cfi_endproc,
> tc_cfi_section_name): Define.
> * doc/c-tic6x.texi: Document new unwinding directives.
> * dw2gencfi.c (tc_cfi_startproc, tc_cfi_endproc): Add default
> definitions.
> (cfi_insn_data, fde_entry, CFI_adjust_cfa_offset, CFI_return_column,
> CFI_rel_offset, CFI_escape, CFI_signal_frame, CFI_val_encoded_addr):
> Move to dw2gencfi.h.
> (CFI_EMIT_target): Define.
> (dot_cfi_sections): Check tc_cfi_section_name.
> (dot_cfi_startproc): Use tc_cfi_startproc.
> (dot_cfi_endproc): Use tc_cfi_endproc.
> * dw2gencfi.h (cfi_insn_data, fde_entry, CFI_adjust_cfa_offset,
> CFI_return_column, CFI_rel_offset, CFI_escape, CFI_signal_frame,
> CFI_val_encoded_addr): Move to here from dw2gencfi.c.
>
> gas/testsuite:
> * gas/tic6x/unwind-1.d: New test.
> * gas/tic6x/unwind-1.s: New test.
> * gas/tic6x/unwind-2.d: New test.
> * gas/tic6x/unwind-2.s: New test.
>
> include/
> * elf/tic6x.h (ELF_STRING_C6000_unwind,
> ELF_STRING_C6000_unwind_info, ELF_STRING_C6000_unwind_once,
> ELF_STRING_C6000_unwind_info_once): Define.
Approved - please apply.
Cheers
Nick
More information about the Binutils
mailing list