Hi,
This patch fixes output of dependencies on ARM EABI personality routines
for stack unwinding, using R_ARM_NONE relocations. It should output only
one dependency per-section, and should handle .pushsection/.popsection
correctly. These are the previous version of the patch:
http://sourceware.org/ml/binutils/2005-03/msg00126.html
http://sourceware.org/ml/binutils/2005-02/msg00172.html
Tested on arm-none-eabi and i686-pc-linux-gnu with all targets.
OK to apply?
ChangeLog:
* gas/config/tc-arm.c (marked_pr_dependency): New bitmap, bit N
indicates whether personality routine index N has been output for this
section.
(mapping_state): tc_segment_info_data now struct not enum.
(arm_elf_change_section): Likewise, and marked_pr_dependency is now
handled on section change.
(create_unwind_entry): Previous code to output dependency removed.
(s_arm_unwind_fnend): Output dependency if it hasn't been done
already for this section.
* gas/config/tc-arm.h (TC_SEGMENT_INFO_TYPE): Redefined as struct
arm_segment_info_type.
(arm_segment_info_type): New struct.
* gas/testsuite/gas/arm/unwind.d: Update expected output.
______________________________________________________________________