[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug binutils/20595] New: excessive relocation for .ARM.exidx

From: akihiko.odaki.4i at stu dot hosei.ac.jp
Subject: [Bug binutils/20595] New: excessive relocation for .ARM.exidx
Date: Sat, 10 Sep 2016 12:02:45 +0000


            Bug ID: 20595
           Summary: excessive relocation for .ARM.exidx
           Product: binutils
           Version: 2.27
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: binutils
          Assignee: unassigned at sourceware dot org
          Reporter: akihiko.odaki.4i at stu dot hosei.ac.jp
  Target Milestone: ---

In some cases, BFD leaves excessive relocation for .ARM.exidx.
Though I cannot provide the actual binary, I'll detail what I figured out while
investigating the issue.

The bug reproduces if:
* merged exidx have duplicate entries, which should be deleted
* the target is relocatable executable (i.e. bfd_link_relocatable is FALSE, but
emitrelocations is TRUE)

Merged exidx can have duplicate entries, and the later ones will be marked to
be deleted if bfd_link_relocatable is FALSE (see elf32_arm_fix_exidx_coverage
in bfd/elf32-arm.c).
However, it just means it is incremental link, and it's FALSE even for
relocatable executable. In such cases, relocations should be updated, but they
won't. As the result, the excessive relocations remains the final output and
the later relocations in the section will slip from the expected offset.

You are receiving this mail because:
You are on the CC list for the bug.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]