Hello,

R_ARM_TARGET2 relocs are interpreted as got-relative
by the VxWorks 7 system linker for RTPs.

This patch, contributed by Jérôme Lambourg, adjusts the
ARM_TARGET2_DWARF_FORMAT definition for VxWorks RTPs accordingly.

This isn't conditioned on TARGET_VXWORKS7 because
Vx6 uses dwarf eh on ARM, so the definition is currently
valid for all the VxWorks ports relying on ARM unwind
info.

This has been exercised extensively on gcc-7 based
toolchains in-house, where it fixes broken exception
handling on binaries produced by the system linker.

Committing to mainline, where the patch applies untouched.

With Kind Regards,

Olivier


2018-10-03  Jérôme Lambourg  <lambo...@adacore.com>

        * config/arm/vxworks.h (ARM_TARGET2_DWARF_FORMAT): Adjust to
        DW_EH_PE_pcrel | DW_EH_PE_indirect for RTPs.


Attachment: vxarm-target2.diff
Description: Binary data

Reply via email to