bug-binutils
[Top][All Lists]
Advanced

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

[Bug ld/16163] ld generates static relocations in shared library


From: jonas.maebe at elis dot ugent.be
Subject: [Bug ld/16163] ld generates static relocations in shared library
Date: Wed, 19 Nov 2014 14:45:12 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=16163

Jonas Maebe <jonas.maebe at elis dot ugent.be> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jonas.maebe at elis dot 
ugent.be

--- Comment #3 from Jonas Maebe <jonas.maebe at elis dot ugent.be> ---
While I would personally agree with your interpretation of the ARM ELF ABI and
would consider this a linker bug, ARM themselves have an Application Note in
which they say that dynamic R_ARM_ABS32 relocations are perfectly fine:
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dai0242a/BCGHDBCB.html

Quote (emphasis mine):

"
... When the ELF object, generated from this example code, is statically linked
with the shared library (Example 7.2) that defines bar and x, a dynamic
relocation section, .dyn, is generated in the executable image, for example:

** Section #5 '.dyn' (SHT_REL)
    Size    : 16 bytes (alignment 4)
    Symbol table #3 '.dynsym'
    2 relocations applied to section #0 '[Anonymous Section]'

    #    Offset        Relocation Type      Wrt    Symbol    Defined in

    0    0x0000800C    2 R_ARM_ABS32        2      bar       Ref
    1    0x00008024    2 R_ARM_ABS32        3      x         Ref

The relocation type added to the image is R_ARM_ABS32 (relocation number 2 from
section 4.6.18 of the ABI ELF for the ARM Architecture document). This is an
ARM absolute 32-bit relocation, which is commonly found in static *and dynamic*
relocation sections.

...

At load or run-time the dynamic linker might load the shared library into
memory, if it is required by the application or another shared library
(module).
"

-- 
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]