bug-binutils
[Top][All Lists]
Advanced

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

[Bug ld/22966] n64 MIPS: -mplt -msym32 is resulting in assertion ld.orig


From: address@hidden
Subject: [Bug ld/22966] n64 MIPS: -mplt -msym32 is resulting in assertion ld.orig: BFD 2.29.1 assertion fail binutils-2.29.1 /bfd/elfxx-mips.c:11234
Date: Tue, 20 Mar 2018 13:42:34 +0000

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

Maciej W. Rozycki <address@hidden> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |mips*-*-*
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2018-03-20
          Component|binutils                    |ld
                 CC|                            |address@hidden
           Assignee|unassigned at sourceware dot org   |address@hidden
     Ever confirmed|0                           |1
            Summary|MIPS -mplt -msym32 is       |n64 MIPS: -mplt -msym32 is
                   |resulting in assertion      |resulting in assertion
                   |ld.orig: BFD 2.29.1         |ld.orig: BFD 2.29.1
                   |assertion fail              |assertion fail
                   |binutils-2.29.1             |binutils-2.29.1
                   |/bfd/elfxx-mips.c:11234     |/bfd/elfxx-mips.c:11234

--- Comment #1 from Maciej W. Rozycki <address@hidden> ---
Thank you for your bug report.

Linking an n64 `-msym32'/`-mplt' executable is currently not properly
supported due to a 64-bit mapping address being used by the linker by
default with n64 links.  A solution has been discussed before:
<https://sourceware.org/ml/binutils/2012-11/msg00225.html>, however it
will require an ABI update and some effort to implement and is likely
not going to happen soon.

Meanwhile if you do require this combination of options to work, then as
a workaround I suggest using a linker option to override the default
mapping with a 32-bit address, e.g. `-Ttext-segment=0x400000' (picking
the address used with the o32 ABI), or `-Wl,-Ttext-segment=0x400000' if
passed through the GCC driver.

I'll keep this bug open for tracking purposes, as the issue hasn't been
properly recorded previously, and in the interim I will look into
converting the assertion into a proper user-comprehensible error message.

Does it help?  Let me know if you have any questions or comments.

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