[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