[Bug ld/25494] [MIPS] default output as r6 when default target as r6

2020-07-24 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=25494

Maciej W. Rozycki  changed:

   What|Removed |Added

 CC||ma...@linux-mips.org

--- Comment #2 from Maciej W. Rozycki  ---
For linking in raw binary chunks of data the best approach is to use GAS
and its .incbin pseudo-op, e.g.:

$ cat xx.s
.incbin xx.dat
$ mipsisa32r6el-linux-gnu-as -o xx.o xx.s

because even if we decide to make the default ABI configurable `ld -r -b
binary' won't be able to set all the various ABI flags a given build may
require.

As to making the default ABI/ISA configurable I would recommend reusing
the approach we have taken with GCC, that is to provide `--with-abi=',
`--with-arch=', `--with-arch-32=' and `--with-arch-64=' configuration
options.  This way the toolchain will remain consistent and will not
depend on the target triplet in a different way across packages, and also
we won't have to invent more and more complicated target triplets to
handle new cases as they arise.  As I recall this design decision has
been discussed a few times over the years.

Please note that GAS/LD are low-level tools however and in ordinary use
cases they are supposed to be driven by GCC, which will set correct flags
according to its configuration and any additional options requested.  I'm
not therefore sure we need to change the semantics in the first place.
What is your use case that requires GAS/LD to be invoked directly rather
than via GCC?

Cf. PR 25136.

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


[Bug binutils/25136] mips64: set abi as N64 when the ABI section triple is gnuabi64

2020-07-24 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=25136

Maciej W. Rozycki  changed:

   What|Removed |Added

 CC||ma...@linux-mips.org

--- Comment #4 from Maciej W. Rozycki  ---
As to making the default ABI/ISA configurable I would recommend reusing
the approach we have taken with GCC, that is to provide `--with-abi=',
`--with-arch=', `--with-arch-32=' and `--with-arch-64=' configuration
options.  This way the toolchain will remain consistent and will not
depend on the target triplet in a different way across packages, and also
we won't have to invent more and more complicated target triplets to
handle new cases as they arise.  As I recall this design decision has
been discussed a few times over the years.

Please note that GAS/LD are low-level tools however and in ordinary use
cases they are supposed to be driven by GCC, which will set correct flags
according to its configuration and any additional options requested.  I'm
not therefore sure we need to change the semantics in the first place.
What is your use case that requires GAS/LD to be invoked directly rather
than via GCC?

Cf. PR ld/25494.

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


[Bug ld/26288] ET_EXEC files rejected with `--just-symbols' (PR ld/26047 fix regression)

2020-07-23 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=26288

Maciej W. Rozycki  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|ASSIGNED|RESOLVED

--- Comment #7 from Maciej W. Rozycki  ---
Fixed on master and binutils-2_35-branch.

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


[Bug ld/26288] ET_EXEC files rejected with `--just-symbols' (PR ld/26047 fix regression)

2020-07-22 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=26288

Maciej W. Rozycki  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED

--- Comment #1 from Maciej W. Rozycki  ---
I'm testing a fix along with a couple of test cases targetting 2.35.

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


[Bug ld/26288] New: ET_EXEC files rejected with `--just-symbols' (PR ld/26047 fix regression)

2020-07-22 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=26288

Bug ID: 26288
   Summary: ET_EXEC files rejected with `--just-symbols' (PR
ld/26047 fix regression)
   Product: binutils
   Version: 2.35
Status: NEW
  Severity: normal
  Priority: P2
 Component: ld
  Assignee: unassigned at sourceware dot org
  Reporter: ma...@linux-mips.org
CC: i at maskray dot me, nickc at redhat dot com
  Target Milestone: 2.35

The PR ld/26047 fix has regressed RISC-V/Linux kernel builds, causing a
link failure, by disallowing the use of ET_EXEC files as `--just-symbols'
input, which is legitimate and indeed often the most useful.

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


[Bug ld/26080] Incorrect "Common symbol override test"

2020-06-03 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=26080

--- Comment #5 from Maciej W. Rozycki  ---
(In reply to H.J. Lu from comment #2)
> > Your statement makes sense to me, however silently discarding relocations
> > against an existing symbol from a debug section makes me nervous as to
> > the impact on debugging.  Would you be able to provide a backing
> > quotation from the relevant standard (DWARF, likely)?
> 
> This is very typical for symbol addresses in debug info in shared library.
> Debuggers can find symbol addresses at run-time by other meanings.
Right, it makes no sense to produce a dynamic relocation for a reference
from a !SEC_ALLOC section, as it won't be relocated at run time anyway.

Can the bfd/elfxx-mips.c part of commit 21d790b94321 ("MIPS/BFD: Don't
make debug section relocs dynamic"),
, be reverted
as a part of your change?  I suspect it might become dead code now.

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


[Bug ld/25458] --gc-sections removes _environ symbol since version 2.21

2020-01-24 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=25458

Maciej W. Rozycki  changed:

   What|Removed |Added

 CC||amodra at gmail dot com

--- Comment #1 from Maciej W. Rozycki  ---
So here we have a weak reference from a DSO being satisfied with a weak
definition in the main executable, and the latter is incorrectly GCed.

I'll see what I can do about it, but it's been a while since I touched
this stuff and I have all the context internally dropped now.

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


[Bug ld/21375] MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2018-09-14 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

Maciej W. Rozycki  changed:

   What|Removed |Added

 Status|SUSPENDED   |RESOLVED
 Resolution|--- |FIXED

--- Comment #5 from Maciej W. Rozycki  ---
Fix committed, closing bug.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21805] MIPS: Dynamic symbol --no-export-dynamic rules not respected for SVR4 executables

2018-09-14 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21805
Bug 21805 depends on bug 21375, which changed state.

Bug 21375 Summary: MIPS: Non-zero run-time value produced for PIC references to 
undefined hidden or internal weak symbols
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

   What|Removed |Added

 Status|SUSPENDED   |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/22877] Disassemble instructions emulated by the Linux kernel

2018-07-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=22877

Maciej W. Rozycki  changed:

   What|Removed |Added

 Status|ASSIGNED|SUSPENDED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21805] MIPS: Dynamic symbol --no-export-dynamic rules not respected for SVR4 executables

2018-07-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21805

Maciej W. Rozycki  changed:

   What|Removed |Added

 Status|ASSIGNED|SUSPENDED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21375] MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2018-07-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

Maciej W. Rozycki  changed:

   What|Removed |Added

 Status|ASSIGNED|SUSPENDED

--- Comment #2 from Maciej W. Rozycki  ---
Patches posted: ,
blocked on: .

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21805] MIPS: Dynamic symbol --no-export-dynamic rules not respected for SVR4 executables

2018-07-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21805

--- Comment #1 from Maciej W. Rozycki  ---
Created attachment 11149
  --> https://sourceware.org/bugzilla/attachment.cgi?id=11149=edit
WIP fix; the handling of undefweaks has to be sorted yet

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/22570] ld fails to bind DTPMOD at link time for pie on mips

2018-07-11 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=22570

Maciej W. Rozycki  changed:

   What|Removed |Added

 CC||ma...@linux-mips.org
 Resolution|DUPLICATE   |FIXED
   Assignee|unassigned at sourceware dot org   |ma...@linux-mips.org

--- Comment #6 from Maciej W. Rozycki  ---
Not really a duplicate, and fixed now.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/22877] Disassemble instructions emulated by the Linux kernel

2018-07-02 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=22877
Bug 22877 depends on bug 8282, which changed state.

Bug 8282 Summary: MIPS port needs `set disassembler-options'
https://sourceware.org/bugzilla/show_bug.cgi?id=8282

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/12915] mips64-linux-as aborts with assertion error building a Linux/MIPS kernel

2018-07-02 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=12915

Maciej W. Rozycki  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 CC||ma...@linux-mips.org
 Resolution|--- |FIXED
   Target Milestone|--- |2.23

--- Comment #5 from Maciej W. Rozycki  ---
Closing old bug that has been resolved in 2.22.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21375] MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2018-06-29 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375
Bug 21375 depends on bug 23307, which changed state.

Bug 23307 Summary: Absolute symbols whose value is zero ignored in lookup
https://sourceware.org/bugzilla/show_bug.cgi?id=23307

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21375] MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2018-06-22 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

Maciej W. Rozycki  changed:

   What|Removed |Added

   Target Milestone|2.31|---

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21805] MIPS: Dynamic symbol --no-export-dynamic rules not respected for SVR4 executables

2018-06-22 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21805

Maciej W. Rozycki  changed:

   What|Removed |Added

   Target Milestone|2.31|---

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/23317] New: Load address invalid for n64 MIPS -msym32 executables

2018-06-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=23317

Bug ID: 23317
   Summary: Load address invalid for n64 MIPS -msym32 executables
   Product: binutils
   Version: unspecified
Status: NEW
  Severity: normal
  Priority: P2
 Component: ld
  Assignee: unassigned at sourceware dot org
  Reporter: ma...@linux-mips.org
Depends on: 22966
  Target Milestone: ---
Target: mips*-*-*

Detaching this issue from PR ld/22966 so that it can be closed.

As noted in PR ld/22966 and previously discussed 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.

To summarise: ABI annotation will be required for tools to be able to
tell regular and `-msym32' n64 relocatable objects apart.  If all
objects are regular, then the default load address remains the current
value, that is 0x12000.  If any object is `-msym32' or if a PLT
is used, then a value that fits in the 32-bit range is used instead,
such as 0x1000 currently used for n32.  This is to satisfy LUI/LD,
etc. 32-bit absolute address load sequences, used with `-msym32' in
`-mplt' and also, as a GNU extension, in SVR4 executables.

PIE and DSO binaries are unaffected as they necessarily need to use the
GOT for all address calculations


Referenced Bugs:

https://sourceware.org/bugzilla/show_bug.cgi?id=22966
[Bug 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
-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/23317] Load address invalid for n64 MIPS -msym32 executables

2018-06-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=23317
Bug 23317 depends on bug 22966, which changed state.

Bug 22966 Summary: 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
https://sourceware.org/bugzilla/show_bug.cgi?id=22966

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[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

2018-06-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=22966

Maciej W. Rozycki  changed:

   What|Removed |Added

 Blocks||23317


Referenced Bugs:

https://sourceware.org/bugzilla/show_bug.cgi?id=23317
[Bug 23317] Load address invalid for n64 MIPS -msym32 executables
-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[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

2018-06-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=22966

Maciej W. Rozycki  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED
   Target Milestone|--- |2.31

--- Comment #4 from Maciej W. Rozycki  ---
Closing bug as the original issue has been fixed.  Filed PR ld/23317 to
track the issue with the load address and `-msym32' n64 executables.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21375] MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2018-06-18 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

Maciej W. Rozycki  changed:

   What|Removed |Added

 Depends on||23307


Referenced Bugs:

https://sourceware.org/bugzilla/show_bug.cgi?id=23307
[Bug 23307] Absolute symbols whose value is zero ignored in lookup
-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21805] MIPS: Dynamic symbol --no-export-dynamic rules not respected for SVR4 executables

2018-06-16 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21805

Maciej W. Rozycki  changed:

   What|Removed |Added

   Target Milestone|--- |2.31

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21375] MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2018-06-16 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

Maciej W. Rozycki  changed:

   What|Removed |Added

   Target Milestone|--- |2.31

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/23282] "Tidy bfdio to consistenly use containing archive" patch makes strip.exe on Windows crawl

2018-06-13 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=23282

Maciej W. Rozycki  changed:

   What|Removed |Added

 CC||amodra at gmail dot com

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/23282] "Tidy bfdio to consistenly use containing archive" patch makes strip.exe on Windows crawl

2018-06-13 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=23282

Maciej W. Rozycki  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-06-13
 CC||ma...@linux-mips.org
 Ever confirmed|0   |1

--- Comment #1 from Maciej W. Rozycki  ---
GAS is also affected, see:
<https://sourceware.org/ml/binutils/2018-06/msg00140.html>.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[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

2018-03-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=22966

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Target||mips*-*-*
 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2018-03-20
  Component|binutils|ld
 CC|        |ma...@linux-mips.org
   Assignee|unassigned at sourceware dot org   |ma...@linux-mips.org
 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 <ma...@linux-mips.org> ---
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=0x40' (picking
the address used with the o32 ABI), or `-Wl,-Ttext-segment=0x40' 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.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21900] [MIPS] linking shared library with -z defs --warn-unresolved-symbols emits null relocation

2018-03-03 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21900

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC|        |ma...@linux-mips.org
 Resolution|--- |FIXED
   Assignee|unassigned at sourceware dot org   |ma...@linux-mips.org
   Target Milestone|--- |2.31

--- Comment #2 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Fixed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/22877] Disassemble instructions emulated by the Linux kernel

2018-02-23 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=22877

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Target||mips*-*-*
 Status|UNCONFIRMED |ASSIGNED
Version|HEAD|unspecified
   Last reconfirmed||2018-02-23
  Component|gdb |binutils
 Depends on||8282
   Assignee|unassigned at sourceware dot org   |ma...@linux-mips.org
 Ever confirmed|0   |1
Product|gdb |binutils

--- Comment #1 from Maciej W. Rozycki <ma...@linux-mips.org> ---
This belongs to opcodes (and then `objdump' as the primary UI), so changing
product/component accordingly.  GDB will then handle it automagically, however
PR tdep/8282 has to be addressed first for generic target disassembler option
support.


Referenced Bugs:

https://sourceware.org/bugzilla/show_bug.cgi?id=8282
[Bug 8282] MIPS port needs `set disassembler-options'
-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/21762] Use of STABS directives on MIPS causes label to be incorrectly marked as MIPS16

2017-09-21 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21762

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC|        |ma...@linux-mips.org
 Resolution|--- |FIXED
   Target Milestone|--- |2.30

--- Comment #3 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Fixed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21375] MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2017-07-23 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Blocks||21805


Referenced Bugs:

https://sourceware.org/bugzilla/show_bug.cgi?id=21805
[Bug 21805] MIPS: Dynamic symbol --no-export-dynamic rules not respected for
SVR4 executables
-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21805] MIPS: Dynamic symbol --no-export-dynamic rules not respected for SVR4 executables

2017-07-23 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21805

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 CC||amodra at gmail dot com
 Depends on||21375


Referenced Bugs:

https://sourceware.org/bugzilla/show_bug.cgi?id=21375
[Bug 21375] MIPS: Non-zero run-time value produced for PIC references to
undefined hidden or internal weak symbols
-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21805] MIPS: Dynamic symbol --no-export-dynamic rules not respected for SVR4 executables

2017-07-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21805

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 CC|        |ma...@linux-mips.org

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21805] New: MIPS: Dynamic symbol --no-export-dynamic rules not respected for SVR4 executables

2017-07-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21805

Bug ID: 21805
   Summary: MIPS: Dynamic symbol --no-export-dynamic rules not
respected for SVR4 executables
   Product: binutils
   Version: 2.30 (HEAD)
Status: NEW
  Severity: normal
  Priority: P2
 Component: ld
  Assignee: ma...@linux-mips.org
  Reporter: ma...@linux-mips.org
  Target Milestone: ---
Target: mips*-*-linux-gnu

As discussed: <https://sourceware.org/ml/binutils/2017-07/msg00181.html>
and observed in regression testing:

FAIL: Run indirect5 1
FAIL: Run indirect5 2
FAIL: indirect5a dynsym
FAIL: indirect5b dynsym
FAIL: Run indirect5 3
FAIL: Run indirect5 4
FAIL: Run indirect6 3
FAIL: Run indirect6 4
FAIL: indirect5c dynsym
FAIL: indirect5d dynsym
FAIL: indirect6c dynsym
FAIL: indirect6d dynsym

when making a SVR4 (-mno-plt) executable the MIPS BFD linker backend does
not respect our dynamic symbol export rules and always makes all global
and weak symbols dynamic, regardless of the --no-export-dynamic
command-line option, be it implied or specified.  When making a PLT
(-mplt) executable the backend does follow the rules though, and both
--export-dynamic and --no-export-dynamic command-line options work as
documented.

According to the ELF gABI: "An implementation may restrict the set of
global and weak symbols that are externally visible.", so we are allowed
to treat symbols like this.  This affects symbol preemption and therefore
is a user-visible peculiarity that is also contrary to our documentation.
So it will make sense if we make MIPS SVR4 executables consistent in this
respect with MIPS PLT executables, as well as other targets.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/16656] mipsisa32r2el-unknown-linux-gnu testsuite failures

2017-07-19 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=16656

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC|        |ma...@linux-mips.org
 Resolution|--- |FIXED

--- Comment #2 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Fixed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/13813] ld-mips-elf/comm-data.exp failures for mipsisa32r2el-unknown-linux-gnu

2017-07-19 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=13813

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC|        |ma...@linux-mips.org
 Resolution|--- |FIXED

--- Comment #3 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Long fixed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21334] [MIPS] Undefined hidden symbols cause assertion failure bfd/elfxx-mips.c:3860

2017-04-27 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21334

--- Comment #14 from Maciej W. Rozycki <ma...@linux-mips.org> ---
It's there on master: ld/testsuite/ld-mips-elf/pr21334.*; not backported
to 2.28 to avoid new features (`readelf -A' static GOT addition) on a
release branch.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21334] [MIPS] Undefined hidden symbols cause assertion failure bfd/elfxx-mips.c:3860

2017-04-26 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21334

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #12 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Alastair, thanks for testing, however in the course of review we have
settled on a slightly different change, which as far as the MIPS target
is concerned is functionally equivalent to one you have validated.
That change has now been committed to master and backported to 2.28, as
per the automatic commit messages, closing bug.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21389] --version-script --soname is broken

2017-04-15 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21389

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at sourceware dot org   |ma...@linux-mips.org

--- Comment #1 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Created attachment 9995
  --> https://sourceware.org/bugzilla/attachment.cgi?id=9995=edit
WIP bug fix

I'll handle this next week, including a proper test suite case.  Thanks
for reporting and sorry about the breakage.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21233] Internal error, /usr/bin/ld: BFD (GNU Binutils for Debian) 2.28 assertion fail ../../bfd/elfxx-mips.c:3861

2017-04-12 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21233

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

  Component|binutils|ld

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20402] ld.bfd for emits *_RELATIVE relocations against SHN_ABS symbols

2017-04-11 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20402

--- Comment #6 from Maciej W. Rozycki <ma...@linux-mips.org> ---
See also PR 19818, for the corresponding GNU dynamic loader issue.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20402] ld.bfd for emits *_RELATIVE relocations against SHN_ABS symbols

2017-04-11 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20402

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 CC|        |ma...@linux-mips.org

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21375] MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2017-04-11 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

--- Comment #1 from Maciej W. Rozycki <ma...@linux-mips.org> ---
The corresponding GNU dynamic loader issue is preexisting PR 19818, now
updated accordingly.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21375] MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2017-04-11 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Depends on||19818


Referenced Bugs:

https://sourceware.org/bugzilla/show_bug.cgi?id=19818
[Bug 19818] Absolute (SHN_ABS) symbols incorrectly relocated by the base
address
-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21375] MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2017-04-11 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|NEW |ASSIGNED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21334] [MIPS] Undefined hidden symbols cause assertion failure bfd/elfxx-mips.c:3860

2017-04-11 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21334

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|WAITING |ASSIGNED

--- Comment #8 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Incorrect dynamic relocation arrangement for undefined hidden and
internal weak symbols now filed as PR ld/21375.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21375] New: MIPS: Non-zero run-time value produced for PIC references to undefined hidden or internal weak symbols

2017-04-11 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21375

Bug ID: 21375
   Summary: MIPS: Non-zero run-time value produced for PIC
references to undefined hidden or internal weak
symbols
   Product: binutils
   Version: 2.29 (HEAD)
Status: NEW
  Severity: normal
  Priority: P2
 Component: ld
  Assignee: ma...@linux-mips.org
  Reporter: ma...@linux-mips.org
  Target Milestone: ---
Target: mips*-*-linux-gnu

Created attachment 9986
  --> https://sourceware.org/bugzilla/attachment.cgi?id=9986=edit
WIP bug fix

This has been discovered in the course of PR ld/21334 investigation.

We have an issue in the MIPS backend, with handling undefined hidden
and internal weak symbols.  References to such symbols are supposed to
resolve to 0 according to the ELF gABI[1]:

"Unresolved weak symbols have a zero value."

and the 64-bit MIPS psABI[2]:

"If a symbol with one of these [hidden or internal] attributes has no
definition within the executable/DSO being linked, then it must be
resolved to allocated space if common, resolved to zero if weak, or an
error reported otherwise."

however if a GOT relocation is used, then a local GOT entry is created
and used to satisfy the reference.  Such an entry is then (in DSO and
PIE binaries) subject to the usual load-time relocation, which means a
non-zero value will be returned if the base address is non-zero.  This
will defeat the usual run-time sequence like:

void a (void) __attribute__ ((visibility ("hidden"), weak));

void
x (void)
{
  if (a)
a ();
}

This can be reproduced with this simple code:

$ cat libtest.c
extern int a __attribute__ ((visibility ("hidden"), weak));

int *
x (void)
{
  return 
}
$ cat test.c
#include 

int *x (void);

int
main (void)
{
  printf ("a: %p\n", x ());

  return 0;
}
$ gcc -shared -fPIC -o libtest.so libtest.c
$ gcc -o test test.c -Wl,-rpath,$(pwd) libtest.so
$ ./test
a: 0x77184000
$ 

What instead we should do I believe is create an *external* GOT entry
for the weak undefined symbol entered in the dynamic symbol table as
hidden or internal external absolute and having the value of 0.  Having
a hidden or internal dynamic symbol is as from 22 June 2000 contrary to
the ELF gABI [3]:

"A hidden symbol contained in a relocatable object must be either
removed or converted to STB_LOCAL binding by the link-editor when the
relocatable object is included in an executable file or shared object."

"An internal symbol contained in a relocatable object must be either
removed or converted to STB_LOCAL binding by the link-editor when the
relocatable object is included in an executable file or shared object."

however so is having a non-zero undefined weak symbol.  Furthermore the
gABI's requirement was introduced after the MIPS psABI first defined
hidden and internal symbol export classes, and with the psABI's
definition of DT_MIPS_HIDDEN_GOTIDX [4]:

"This member contains the index in the GOT of the first entry for a
hidden symbol.  It is mandatory if there are hidden symbol entries."

indicating support for hidden symbols in the dynamic symbol table,
clearly without consideration what the implications for the MIPS psABI
of the gABI's requirement might be.

As from glibc commit b6084a958f20 ("Treat STV_HIDDEN and STV_INTERNAL
symbols as STB_LOCAL") the GNU dynamic loader handles hidden and internal
dynamic symbols correctly and I think producing a non-compliant binary
file that produces a result that is generally expected is more reasonable
than producing one that is neither compliant nor works as expected.

With this approach there is still an issue with the GNU dynamic loader
that does not tell regular and absolute symbols apart and relocates the
latter as if they were regular.  This actually causes the linker solution
outlined here to make no change at all in run-time behaviour, but this is
not a regression and is clearly a bug in the dynamic loader which can be
addressed in a simple manner.  A separate bug report will be filed to
handle that problem and referred here.

References:

[1] "System V Application Binary Interface - DRAFT - 19 October 2010",
The SCO Group, Section "Symbol Table",
<http://www.sco.com/developers/gabi/2012-12-31/ch4.symtab.html>

[2] "64-bit ELF Object File Specification, Draft Version 2.5", MIPS
Technologies / Silicon Graphics Computer Systems, Order Number
007-4658-001, Section 2.5 "Symbol Table", p. 22,
   
<http://techpubs.sgi.com/library/manuals/4000/007-4658-001/pdf/007-4658-001.pdf>

[3] "System V Application Binary Interface - DRAFT - 22 June 2000",
The Santa Cruz Operation, Inc., Section "Symbol Table",
<http://www.sco.com/developers/gabi/2000-07-17/ch4.symtab.html>

[4] same as [2], Se

[Bug ld/21334] [MIPS] Undefined hidden symbols cause assertion failure bfd/elfxx-mips.c:3860

2017-04-07 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21334

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

   Attachment #9975|0   |1
is obsolete||

--- Comment #6 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Created attachment 9977
  --> https://sourceware.org/bugzilla/attachment.cgi?id=9977=edit
WIP bug fix v2

I have looked into it and it looks to me like rewriting MIPS backend code
to make it avoid relying on dynsym sorting in the case of the presence
of GOT relocations in a static binary (i.e. linking in PIC code such as
pieces of libgcc.a into a static binary) requiring the backend to set up
what in a dynamic binary would become the local part of the GOT would be
too costly to be justified for such a corner case.

So let's make `_bfd_elf_link_renumber_dynsyms' called in all cases, which
I hope is going to be safe for all backends.

In fact, based on the observation previously made that this function is
already inconsistently called in the `--gc-sections' case even in the
static case, making the call unconditionally should have been largely
validated by Debian packaging already, which has been using
`--gc-sections' distribution-wide across all its targets for a while now.
James, can you confirm this has been the case?

James and Alastair, can you please see if this updated version of the
the patch attached fixes the issue for you?

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/21334] [MIPS] Undefined hidden symbols cause assertion failure bfd/elfxx-mips.c:3860

2017-04-06 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21334

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2017-04-06
   Assignee|unassigned at sourceware dot org   |ma...@linux-mips.org
 Ever confirmed|0   |1

--- Comment #4 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Created attachment 9975
  --> https://sourceware.org/bugzilla/attachment.cgi?id=9975=edit
WIP bug fix

The problem here is the MIPS backend sorts the dynamic symbol table
even if no dynamic sections have been created.  The latter means
`local_dynsymcount' remains unchanged from its initial 0 value even
though `a' is local and has been speculatively assigned a `dynindx'
upon LD encountering a GOT relocation (NB you need to compile test.c
with `-fPIE' or suchlike for the issue to trigger).

Normally `_bfd_elf_link_renumber_dynsyms', first called from
`bfd_elf_size_dynsym_hash_dynstr', would have set `local_dynsymcount'. 
This situation then results in the assertion failure, as `a' despite
being local has been assigned a `dynindx' beyond `local_dynsymcount'.

James and Alastair, can you please try the patch attached then and see
if it fixes the issue for you?  I'll proceed with the usual integration
dance if so.

NB we have what looks like a bug to me in that another call to
`_bfd_elf_link_renumber_dynsyms', arranged in
`bfd_elf_size_dynamic_sections' after section GC has completed,
is made even if no dynamic sections have been created.  Consequently
you can work this PR around by using `--gc-sections' with LD (and with
James's test case also say `-e x' so that the reference to `a' itself
is not GCed).  I'll be sending a fix proposal for this bug separately.

Finally I think we have another issue in the MIPS backend, with handling
hidden and internal weak undefined symbols.  References to such symbols
are supposed to resolve to 0, however if a GOT relocation is used, then
a local GOT entry is created and used to satisfy the reference.  Such an
entry is then subject to the usual constant load-time relocation, which
means a non-zero value will be returned if the base address is non-zero.
This will defeat the usual run-time sequence like:

void a (void) __attribute__ ((visibility ("hidden"), weak));

void
x (void)
{
  if (a)
a ();
}

What instead we should do I believe is create an *external* GOT entry
for the weak undefined symbol entered in the dynamic symbol table as
local absolute and having the value of 0.  I'll handle this separately
as well.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/21233] Internal error, /usr/bin/ld: BFD (GNU Binutils for Debian) 2.28 assertion fail ../../bfd/elfxx-mips.c:3861

2017-04-05 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21233

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #19 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Fixed on master and backported to 2.28, as per the automatic commit
messages.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/21233] Internal error, /usr/bin/ld: BFD (GNU Binutils for Debian) 2.28 assertion fail ../../bfd/elfxx-mips.c:3861

2017-03-27 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21233

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|WAITING |ASSIGNED

--- Comment #14 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Alastair, preferably I'll need all the objects (static and dynamic) and
linker scripts used in the link, and the `ld' invocation line, to be able
to reproduce the problem.  You can ask GCC to show the invocation line
with the `-v' option; the line will be buried in the output produced as
`collect2' invocation.

If making the objects available is not possible, then I'll have to think
how to reduce it or I might ask you to try diagnostic patches, though
given how the circumstances of these failures are subtle this could make
tracking down the cause of the issue really tough.  This particular
assertion failure you have observed means that a local dynamic symbol was
somehow missed by the generic ELF linker in counting and the MIPS backend
chokes as it breaks its symbol index management.  Output from `readelf
--dyn-syms' with the binary produced with commit e7ec0c47c550 reverted
might give a clue though.

Also can you check if this happens on trunk too?

And yes, this will have to be a separate PR.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/21233] Internal error, /usr/bin/ld: BFD (GNU Binutils for Debian) 2.28 assertion fail ../../bfd/elfxx-mips.c:3861

2017-03-21 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21233

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|ASSIGNED|WAITING

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/21233] Internal error, /usr/bin/ld: BFD (GNU Binutils for Debian) 2.28 assertion fail ../../bfd/elfxx-mips.c:3861

2017-03-21 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21233

--- Comment #9 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Created attachment 9925
  --> https://sourceware.org/bugzilla/attachment.cgi?id=9925=edit
WIP bug fix

This is indeed another incorrectly handled scenario that would have
qualified under PR ld/20828.

Here we have a symbol which has been forced local, however it has
retained its GGA_NORMAL GOT assignment.  Consequently it is considered
external by the MIPS backend and assigned to the global part of both
GOT and the dynamic symbol table.  However the generic ELF linker has
already included it in the local symbol count and as a result a
mismatch happens in the MIPS backend between the number of symbols
expected and actually assigned to the non-GOT-mapped and GOT-mapped
parts of the dynamic symbol table, which is caught by the:

BFD_ASSERT (hsd.max_non_got_dynindx <= hsd.min_got_dynindx)

assertion, saving the linker's skin as with this assertion removed
a broken binary (with the offending symbol missing due to a wrong
dynamic symbol index assignment) would be produced:

Symbol table '.dynsym' contains 10 entries:
   Num:Value  Size TypeBind   Vis  Ndx Name
 0:  0 NOTYPE  LOCAL  DEFAULT  UND
 1:  0 NOTYPE  LOCAL  DEFAULT  UND
 2: 0001200104f0 0 NOTYPE  GLOBAL DEFAULT7 _fdata
 3: 0001 0 SECTION GLOBAL DEFAULT  ABS _DYNAMIC_LINKING
 4: 000124db 0 NOTYPE  GLOBAL DEFAULT6 _ftext
 5: 0001200104f0 0 OBJECT  GLOBAL DEFAULT7 __RLD_MAP
 6: 000120010518 0 NOTYPE  GLOBAL DEFAULT8 __bss_start
 7: 000120010518 0 NOTYPE  GLOBAL DEFAULT8 _edata
 8: 000120010518 0 NOTYPE  GLOBAL DEFAULT8 _end
 9: 000120010518 0 NOTYPE  GLOBAL DEFAULT8 _fbss

-- notice the bad entry at 1, where `alpha' should be if considered
local.

Here is another similarity though to what has already been covered in
PR ld/20828 in that I think with `alpha' chosen with `-u' (or, for that
matter `--require-defined') or the equivalent EXTERN linker script
command the symbol shouldn't have been garbage-collected in the first
place, as this defeats the purpose of these constructs.  So I believe
that by these contstructs' definition symbols thus created have to be
retained and therefore remain external.

That has led me to the patch proposed, which obviously fixes James's
reduced test case.  Unfortunately I am unable to reproduce the libgomp's
configuration failure and trying to build ghc is out of question too,
so I do not know if they are cases of `-u'/`--require-defined'/EXTERN
or maybe there is yet another way for forced local GGA_NORMAL symbols to
make it through linking.

So, Gianfranco and Alastair, would you please try the patch proposed
and see if it fixes the issue for you?  If so, then I'll proceed with
creating suitable linker test suite cases and following the usual
procedure to apply the fix to binutils sources, or at least trunk where
it also triggers.

For 2.28, like with PR ld/20828, I may instead choose to limit the
solution to the MIPS backend, and only use a workaround where forced
local symbols are made GGA_NONE, which I'm leaning towards doing anyway.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/21233] Internal error, /usr/bin/ld: BFD (GNU Binutils for Debian) 2.28 assertion fail ../../bfd/elfxx-mips.c:3861

2017-03-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21233

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|WAITING |ASSIGNED

--- Comment #8 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Thanks for the update, I can reproduce it now -- with -fPIE, or any
other options causing a SVR4 rather than PLT binary to be produced
(I can see now from your `readelf' dump rather than options used,
that you originally chose an n64 binary to be made and those are
normally SVR4).

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/21233] Internal error, /usr/bin/ld: BFD (GNU Binutils for Debian) 2.28 assertion fail ../../bfd/elfxx-mips.c:3861

2017-03-20 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21233

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2017-03-20
   Assignee|unassigned at sourceware dot org   |ma...@linux-mips.org
 Ever confirmed|0   |1

--- Comment #3 from Maciej W. Rozycki <ma...@linux-mips.org> ---
James,

Your reduced test case seems the best hope right now, however I cannot
reproduce the problem with the 2.28 branch using the recipe provided.
The cause might be a difference in binaries produced originating from
a different compiler version for example, so can you please supply the
exact objects (i.e. main.o and alpha-lib.so) you have that trigger the
assertion?

Maciej

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/16288] Specifying an ISA in a .set directive causes a warning if "lower" than set from command-line

2017-02-22 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=16288

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #1 from Maciej W. Rozycki <ma...@linux-mips.org> ---
This seems to have been fixed long ago with:

commit 919731affbef19fcad8dddb0a595bb05755cb345
Author: mfortune <matthew.fort...@imgtec.com>
Date:   Tue May 20 13:28:20 2014 +0100

Add MIPS .module directive

so I am closing this bug.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20828] GC-ed DSO symbols make corresponding symbols defined by a linker script local

2017-02-22 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20828

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #35 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Fixed again, hopefully for real this time.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20828] GC-ed DSO symbols make corresponding symbols defined by a linker script local

2017-01-30 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20828

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|REOPENED|ASSIGNED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20828] GC-ed DSO symbols make corresponding symbols defined by a linker script local

2017-01-18 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20828

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #20 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Fixed as per the automatic commit messages.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/20649] [MIPS] Can't find matching LO16 reloc

2017-01-18 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20649

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #11 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Fixed as per the automatic commit messages.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20828] GC-ed DSO symbols make corresponding symbols defined by a linker script local

2017-01-16 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20828

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

Summary|[MIPS] produces invalid |GC-ed DSO symbols make
   |dynamic symbol table when   |corresponding symbols
   |--gc-sections is used since |defined by a linker script
   |PR ld/13177 fix |local

--- Comment #17 from Maciej W. Rozycki <ma...@linux-mips.org> ---
I've got down to the bottom of this issue now and as it turns out our
initial understanding was completely wrong.

The real issue is the presence of unused (and GC-ed) symbols in a DSO
used in a link makes identically named symbols ordinarily defined (not
hidden or PROVIDEd) by a linker script local, even though the latter
symbols are supposed to be global as if no DSO defined them as well.  So
rather than removing the local entries made in the dynamic symbol table
produced we actually need to make them global.  See
<https://sourceware.org/ml/binutils/2017-01/msg00263.html> for the full
analysis, proposed patch, test cases and results.

The issue applies to our all ELF targets with DSO support and the outcome
just happens to hurt MIPS binaries in the most spectacular way, due to
this target psABI's peculiarity and our handling of it, by making any
affected binaries produced invalid, in addition to being incorrect as
with the remaining ELF targets.

Regardless I have made a MIPS dynamic symbol table sorting update in case
we have a valid reason sometime to have (non-section) local entries
there.  This turned out simpler than I had thought as by the time
`mips_elf_sort_hash_table' is called all the necessary information has
already been gathered by the generic ELF linker and the MIPS backend, as
applicable.  So all that has to be done is using it properly to assign
final indices.

With the fix for this issue in place the problematic case of dynamic
symbol table sorting cannot be triggered however, so no test case is
possible, and I will be only pushing the sorting change, along with a
couple of preparatory clean-ups to code affected, to our master branch,
with no backport to 2.28 planned.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20828] [MIPS] produces invalid dynamic symbol table when --gc-sections is used since PR ld/13177 fix

2017-01-11 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20828

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|NEW |ASSIGNED

--- Comment #15 from Maciej W. Rozycki <ma...@linux-mips.org> ---
I can't comment on individual distribution policies here, this is not the
right place to discuss them.

As per the milestone set this will be fixed with 2.28.  If this does not
satisfy your distribution's requirements, then you have several options
to choose from, including but possibly not limited to these:

1. Propose a change suitable for inclusion with our sources; I have
   outlined one earlier on although there may be other acceptable ways to
   do it too.

2. Temporarily use one of the quick fixes proposed here.

3. Work the problem around by disabling linker GC.

It is then up to individual distribution's maintainers to decide which of
these options suits them best; in particular submitting a change that can
be accepted right away is always welcome and guarantees quick processing.

NB while I'll implement the missing dynsym ordering case for the MIPS
backend so that it follows the ELF gABI even if weird output is somehow
produced by the generic BFD ELF linker I maintain that dropping symbols
that have been GC-ed (but not other forced local ones) is the right
solution.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20828] [MIPS] produces invalid dynamic symbol table when --gc-sections is used since PR ld/13177 fix

2016-12-10 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20828

--- Comment #12 from Maciej W. Rozycki <ma...@linux-mips.org> ---
There's been no further feedback from other people and myself I haven't
made up my mind about this bug yet, so if you are blocked with your
work, then for the time being please use one of the proposals posted
here as a temporary workaround.

I will come up with a proper dynsym sorting implementation (which I
think we ought to have for general robustness, and which I think I will
implement by splitting GGA_NONE into two subclasses, so that we don't
need any extra passes over the dynsym table to get it sorted) before
2.28, and then whether we want to keep local dynamic symbols or not can
be decided independently; for consistency I'd be leaning towards doing
exactly the same what a linker version script does with symbols that
end up forced local, and the details of which I don't remember offhand.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/20649] [MIPS] Can't find matching LO16 reloc

2016-12-01 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20649

--- Comment #7 from Maciej W. Rozycki <ma...@linux-mips.org> ---
I yet need to integrate the test case with the test suite,
but please be assured this fix will make it to 2.28.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/20649] [MIPS] Can't find matching LO16 reloc

2016-11-29 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20649

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

   Target Milestone|--- |2.28

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20828] [MIPS] produces invalid dynamic symbol table when --gc-sections is used since PR ld/13177 fix

2016-11-29 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20828

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

   Assignee|unassigned at sourceware dot org   |ma...@linux-mips.org
   Target Milestone|--- |2.28

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20828] [MIPS] produces invalid dynamic symbol table when --gc-sections is used since PR ld/13177 fix

2016-11-24 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20828

--- Comment #8 from Maciej W. Rozycki <ma...@linux-mips.org> ---
By the MIPS psABI's definition you shall not have external GGA_NONE
symbols as any GGA_NONE symbols will be assigned to the local GOT part,
whose entries are only relocated by the base address at the load time.
Symbols in the GGA_NONE class will normally not have dynsym entries,
except from selected section symbols.

Any external symbols belong to the GGA_NORMAL and GGA_RELOC_ONLY
classes -- depending on whether there are any GOT relocations implying
signed 16-bit GP-relative access referring to them or not -- and they
will be assigned to the global GOT part.  The indices of those symbols
will be mapped between the GOT and the dynsym table, as mandated by the
MIPS psABI, according to the DT_MIPS_LOCAL_GOTNO and DT_MIPS_GOTSYM
dynamic tags, such that individual entry's indices relative to the
beginning of the global part of both tables will be the same.

NB GGA stands for Global GOT Area.

I agree the presence of (non-section) local symbols in the dynsym table
is a generic issue, and given that `elf_gc_sweep_symbol' appears to be
the only place where they are created I think that rather than
adjusting this piece of code to assign these symbols to the GGA_NONE
class it will make sense to discard them altogether.  Unless there is
an actual need for them, that is, which I yet need to be told about.
FAOD it is not incorrect to have them -- it is just useless.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20828] [MIPS] produces invalid dynamic symbol table when --gc-sections is used since PR ld/13177 fix

2016-11-24 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20828

--- Comment #6 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Do we need to have these hidden symbols in the dynsym table at all in
the first place?  It looks like unnecessary clutter to me, they won't
ever be used for anything as their references have been gc-ed.  Or am
I missing anything -- can someone confirm my conclusion or contradict
it by providing a use case?

If we do need these symbols in the dynsym table, then I think we just
need to set GGA_NONE for them correctly as they're being hidden and the
existing dynsym index selection code will DTRT.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20828] [MIPS] produces invalid dynamic symbol table when --gc-sections is used since PR ld/13177 fix

2016-11-16 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20828

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 CC|        |ma...@linux-mips.org

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/19908] MIPS/ELF: Hidden and internal dynamic symbols produced

2016-10-10 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=19908

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 CC||james410 at cowgill dot org.uk

--- Comment #4 from Maciej W. Rozycki <ma...@linux-mips.org> ---
*** Bug 17560 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/17560] mips: assertion failure with --as-needed + weak + hidden main function

2016-10-10 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=17560

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 CC|        |ma...@linux-mips.org
 Resolution|FIXED   |DUPLICATE

--- Comment #2 from Maciej W. Rozycki <ma...@linux-mips.org> ---


*** This bug has been marked as a duplicate of bug 19908 ***

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/20649] [MIPS] Can't find matching LO16 reloc

2016-10-06 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20649

--- Comment #5 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Sure, the GNU GPL applies.  Due to other commitments it'll take me a
few days yet to get the test cases made, but I don't plan to change the
code update itself any further, so any future merge from upstream
Debian people will make should result in an easy to resolve "can be
reverse-applied" result.

NB I'm still waiting to have my Bugzilla permissions restored (there's
been some confusion around it), which is why I wasn't able to update
the status of this bug.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/20649] [MIPS] Can't find matching LO16 reloc

2016-09-29 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20649

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 CC|        |ma...@linux-mips.org

--- Comment #2 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Created attachment 9544
  --> https://sourceware.org/bugzilla/attachment.cgi?id=9544=edit
Intended bug fix

Thank you for your bug report.

I have looked into this problem and it looks like a GAS regression to
me, albeit a very old one.  It was introduced with commit 861467f9,
which unfortunately was bundled with an unrelated change, made with no
discussion or justification posted, had no test case included, and only
a terse notification was sent afterwards ("Traditional MIPS patches"),
<https://sourceware.org/ml/binutils/2000-07/msg00018.html>.

It made symbols in linkonce or what is these days known as comdat
sections to be treated as external for the purpose of PIC relocation
generation even if their binding remains STB_LOCAL.  This in turn
disabled GOT16/LO16 relocation pairing as no complementing LO16
relocation is expected for external GOT16 references in the o32 ABI.

Please try the patch attached which seems to fix the issue for me and
causes no regressions in `mips-linux-gnu' binutils testing.  I'll be
committing it as soon as I have suitable test cases made and it has
passed full regression testing across the relevant targets.

NB GCC has done a pretty decent job here as in actual code execution
the GOT16 reference just below $L15 is actually paired with the
complementing LO16 reference at $L17 as it's in a delay slot of a
branch going to the latter location.  So the GOT16 reference is not
orphan even though it is duplicate from the ELF file's point of view.

gas/
* config/tc-mips.c (pic_need_relax): Don't check for linkonce
symbols, remove the `segtype' parameter.
(mips_frob_file, md_estimate_size_before_relax): Adjust
accordingly.
(s_is_linkonce): Add an explanatory comment.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/15428] Linker crash on R_MIPS_GOT_PAGE relocations referring to absolute symbols

2016-08-10 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=15428

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #5 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Fixed with:

commit b75d42bce5609effad86fb8b5d902f4c337e0cf9
Author: Alan Modra <amo...@gmail.com>
Date:   Thu Jan 16 11:50:28 2014 +1030

Fix mips segfault on GOT access of absolute symbol

There is indeed no need for a separate test case as the `__ehdr_start'
test 2 covers it, and is actually what the case posted with the bug
here has been derived from.  Closing issue then.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20453] MIPS LA25 stub not bypassed in direct PIC-to-PIC jumps with incrementally linked code

2016-08-09 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20453

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Target|mips-*-*|mips*-*-*

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/20453] New: MIPS LA25 stub not bypassed in direct PIC-to-PIC jumps with incrementally linked code

2016-08-09 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20453

Bug ID: 20453
   Summary: MIPS LA25 stub not bypassed in direct PIC-to-PIC jumps
with incrementally linked code
   Product: binutils
   Version: 2.28 (HEAD)
Status: UNCONFIRMED
  Severity: minor
  Priority: P2
 Component: ld
  Assignee: unassigned at sourceware dot org
  Reporter: ma...@linux-mips.org
  Target Milestone: ---
Target: mips-*-*

We have a special case in `mips_elf_relocation_needs_la25_stub' for
direct jumps (and branches) between PIC functions which causes the LA25
stub to be bypassed under the principle that any need for $25 to be set
up correctly shall be handled by code's originator:

/* We specifically ignore branches and jumps from EF_PIC objects,
   where the onus is on the compiler or programmer to perform any
   necessary initialization of $25.  Sometimes such initialization
   is unnecessary; for example, -mno-shared functions do not use
   the incoming value of $25, and may therefore be called directly.  */

This works by checking the EF_MIPS_PIC flag of the incoming object file
where the relocation associated with the jump comes from.  This flag
however is cleared for the outcoming object file in an incremental link
which involves an incoming non-PIC object as well.

Consequently when such an incrementally linked object file is used in the
final link in place of the individual original object files the LA25 stub
is not bypassed anymore where it would otherwise be, leading to different
code produced from identical original objects and to a small run-time
performance loss from the extraneous instructions executed.  Additionally
in the case where all direct jumps are PIC-to-PIC an LA25 stub would have
not been produced if an incremental link wasn't done on the way, so the
issue may cause a slight code size increase as well.

This can be reproduced with these sources and steps:

$ cat la25a.s
.abicalls

.global f1
.entf1
f1:
.setnoreorder
.cpload $25
.setreorder
.option pic0
jal f2
.option pic2
jr  $31
.endf1

.global f2
.entf2
f2:
jr  $31
.endf2
$ cat la25b.s
.abicalls
.option pic0

.global __start
.ent__start
__start:
jal f1
jal f2
.end__start
$ as -32 -EB -o la25a.o la25a.s
$ as -32 -EB -o la25b.o la25b.s
$ ld -melf32btsmip -o la25 la25a.o la25b.o
$ ld -melf32btsmip -r -o la25-r.o la25a.o la25b.o
$ ld -melf32btsmip -o la25-r la25-r.o
$ objdump -d la25

la25: file format elf32-tradbigmips


Disassembly of section .text:

004000d0 <.pic.f2>:
  4000d0:   3c190040lui t9,0x40
  4000d4:   08100043j   40010c 
  4000d8:   2739010caddiu   t9,t9,268
...

004000e8 <.pic.f1>:
  4000e8:   3c190040lui t9,0x40
  4000ec:   273900f0addiu   t9,t9,240

004000f0 :
  4000f0:   3c1c0002lui gp,0x2
  4000f4:   279c8030addiu   gp,gp,-32720
  4000f8:   0399e021addugp,gp,t9
  4000fc:   0c100043jal 40010c 
  400100:   nop
  400104:   03e8jr  ra
  400108:   nop

0040010c :
  40010c:   03e8jr  ra
  400110:   nop
...

00400120 <__start>:
  400120:   0c10003ajal 4000e8 <.pic.f1>
  400124:   nop
  400128:   0c100034jal 4000d0 <.pic.f2>
  40012c:   nop
$ objdump -d la25-r

la25-r: file format elf32-tradbigmips


Disassembly of section .text:

004000d0 <.pic.f2>:
  4000d0:   3c190040lui t9,0x40
  4000d4:   08100043j   40010c 
  4000d8:   2739010caddiu   t9,t9,268
...

004000e8 <.pic.f1>:
  4000e8:   3c190040lui t9,0x40
  4000ec:   273900f0addiu   t9,t9,240

004000f0 :
  4000f0:   3c1c0002lui gp,0x2
  4000f4:   279c8030addiu   gp,gp,-32720
  4000f8:   0399e021addugp,gp,t9
  4000fc:   0c100034jal 4000d0 <.pic.f2>
  400100:   nop
  400104:   03e8jr  ra
  400108:   nop

0040010c :
  40010c:   03e8jr  ra
  400110:   nop
...

00400120 <__start>:
  400120:   0c10003ajal 4000e8 <.pic.f1>
  400124:   nop
  400128:   0c100034jal 4000d0 <.pic.f2>
  40012c:   nop
$ diff -u la25 la25-r
--- la25.dump   2016-08-09 13:45:33.435771000 +0100
+++ la25-r.dump 2016-08-09 13:45:40.734859000 +0100
@@ -1,5 +1,5 @@

-la25: file f

[Bug gas/20312] [2.24 regression] Assertion failure from an attempt to decrease text section alignment to 0 on unsuccessful assembly

2016-06-30 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20312

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #2 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Fixed on trunk as per the commit message.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/20312] New: [2.24 regression] Assertion failure from an attempt to decrease text section alignment to 0 on unsuccessful assembly

2016-06-28 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=20312

Bug ID: 20312
   Summary: [2.24 regression] Assertion failure from an attempt to
decrease text section alignment to 0 on unsuccessful
assembly
   Product: binutils
   Version: 2.27 (HEAD)
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: gas
  Assignee: unassigned at sourceware dot org
  Reporter: ma...@linux-mips.org
CC: amodra at gmail dot com
  Target Milestone: ---

This issue affects any targets whose default text section alignment is above 0,
typically RISC machines.  On unsuccessful assembly, which may be due to any
reason, such supplying as a valid source like this:

.text
.byte   0
.err

processing is terminated with an assertion failure like:

test.s: Assembler messages:
test.s:3: Error: .err encountered
../as-new: BFD (GNU Binutils) 2.24.51.20140628 internal error, aborting at
.../gas/write.c line 608 in size_seg
../as-new: Please report this bug.

This is due to an attempt to decrease text section alignment to 0, requested
from `subsegs_finish_section' where `frag_align_code (alignment, 0)' is called
with `alignment' set to 0.  This has been caused by commit 85024cd8bcb9 ("Run
write_object_file after errors") which enabled a call to
`subsegs_finish_section' from `subsegs_finish' from `write_object_file' at
unsuccessful completion, which previously wasn't made.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/16288] Specifying an ISA in a .set directive causes a warning if "lower" than set from command-line

2016-04-22 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=16288

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 CC|        |ma...@linux-mips.org

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/19908] MIPS/ELF: Hidden and internal dynamic symbols produced

2016-04-05 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=19908

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #2 from Maciej W. Rozycki <ma...@linux-mips.org> ---
Fixed as per the automatically entered commit message.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/19908] MIPS/ELF: Hidden and internal dynamic symbols produced

2016-04-04 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=19908

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 Status|NEW |ASSIGNED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/19908] New: MIPS/ELF: Hidden and internal dynamic symbols produced

2016-04-04 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=19908

Bug ID: 19908
   Summary: MIPS/ELF: Hidden and internal dynamic symbols produced
   Product: binutils
   Version: 2.27 (HEAD)
Status: NEW
  Severity: normal
  Priority: P2
 Component: ld
  Assignee: ma...@linux-mips.org
  Reporter: ma...@linux-mips.org
  Target Milestone: ---
Target: mips-linux-gnu

It is required by the the ELF gABI[1] that hidden and internal symbols
must not appear in the dynamic symbol table:

"A hidden symbol contained in a relocatable object must be either
removed or converted to STB_LOCAL binding by the link-editor when the
relocatable object is included in an executable file or shared object."

"An internal symbol contained in a relocatable object must be either
removed or converted to STB_LOCAL binding by the link-editor when the
relocatable object is included in an executable file or shared object."

The ELF linker usually respects this requirement, however in the case
where a dynamic symbol has been preallocated due to a reference of the
default export class aka visibility from the object being linked, and
then merged with a hidden or internal symbol definition from within the
same object, then the original export class is carried over to the
output dynamic symbol table, because while merging the generic ELF
linker only converts affected dynamic symbols to local when they are
defined or referenced by the object being linked and a dynamic object
involved in the link both at a time.

The dynamic symbol produced confuses then the dynamic loader at the run
time -- the hidden or internal export class is ignored and the symbol
follows preemption rules as with the default export class.

In the MIPS target it happens when `mips_elf_record_global_got_symbol'
creates a dynamic symbol when a call relocation is encountered.
Additionally if the undefined symbol referred by such a relocation does
specify the intended export class, then a local dynamic symbol is
created instead, which is harmless and allowed, but useless.  Normally
no local dynamic symbols are created, except for a single dummy one at
the beginning.

This can be reproduced with these simple C sources (bash syntax):

$ cat f0.c
#include 

int f1 (void);
int f2 (void);

int
main (void)
{
  printf ("%d\n", f1 ());
  printf ("%d\n", f2 ());
  return 0;
}
$ cat f1.c
int
f1 (void)
{
  return 1;
}
$ cat f2.c
int
f1 (void)
{
  return 2;
}
int
f2 (void)
{
  return f1 ();
}
$ mips-linux-gnu-gcc -fPIC -c f0.c
$ mips-linux-gnu-gcc -fPIC -fvisibility=hidden -c f1.c
$ mips-linux-gnu-gcc -fPIC -c f2.c
$ mips-linux-gnu-gcc -fPIC -shared -Wl,-soname,libf2.so -o libf2.so f2.o
$ mips-linux-gnu-gcc -Wl,-rpath,$(pwd) -L$(pwd) -o f f0.o f1.o -lf2
$ mips-linux-gnu-readelf --dyn-syms f
$ ./f
1
1
$ 

Add attribute annotation to `f1' in f0.c for the other (local) case (in
which case 1 and 2 will be correctly printed).

I'll be providing suitably reduced assembly sources as test cases along
the upcoming fix.

References:

[1] "System V Application Binary Interface - DRAFT - 24 April 2001",
The Santa Cruz Operation, Inc., "Symbol Table",
<http://www.sco.com/developers/gabi/2001-04-24/ch4.symtab.html>

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug binutils/19587] Some of the less-well used targets won't compile with gcc-6 due to static vars in opcode headers

2016-02-09 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=19587

Maciej W. Rozycki <ma...@linux-mips.org> changed:

   What|Removed |Added

 CC|        |ma...@linux-mips.org

--- Comment #2 from Maciej W. Rozycki <ma...@linux-mips.org> ---
AFAICT mips_isa_table is always used, so I'd rather keep it without
useless annotation so that if it ever becomes unused indeed an error
is spat in the face right away.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/18297] ld does not report truncated relocation for R_MIPS_26 for calls from .init

2015-04-23 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=18297

Maciej W. Rozycki ma...@linux-mips.org changed:

   What|Removed |Added

 CC||ma...@linux-mips.org

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

___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/15428] Linker crash on R_MIPS_GOT_PAGE relocations referring to absolute symbols

2014-10-29 Thread ma...@linux-mips.org
https://sourceware.org/bugzilla/show_bug.cgi?id=15428

--- Comment #2 from Maciej W. Rozycki ma...@linux-mips.org ---
James, good to know, thanks.  I see there was no test case included
with the fix so one I posted here should be integrated in the test
suite instead.  I'll see if I can do it sometime; I can't afford
doing it right away, I'm afraid.

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

___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/15365] MIPS linker hits assertion with -mabi=64 accessing __ehdr_start

2013-05-03 Thread ma...@linux-mips.org
http://sourceware.org/bugzilla/show_bug.cgi?id=15365

Maciej W. Rozycki ma...@linux-mips.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED

--- Comment #3 from Maciej W. Rozycki ma...@linux-mips.org 2013-05-03 
19:35:52 UTC ---
Discussed here: http://sourceware.org/ml/binutils/2013-04/msg00260.html
continued here: http://sourceware.org/ml/binutils/2013-05/msg00045.html
and now fixed with the commit referred.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/15428] New: Linker crash on R_MIPS_GOT_PAGE relocations referring to absolute symbols

2013-05-01 Thread ma...@linux-mips.org
http://sourceware.org/bugzilla/show_bug.cgi?id=15428

 Bug #: 15428
   Summary: Linker crash on R_MIPS_GOT_PAGE relocations referring
to absolute symbols
   Product: binutils
   Version: 2.24 (HEAD)
Status: NEW
  Severity: normal
  Priority: P2
 Component: ld
AssignedTo: unassig...@sourceware.org
ReportedBy: ma...@linux-mips.org
Classification: Unclassified
Target: mips-linux-gnu


Given this program:

$ cat assign.s
.abicalls
.text
.weakassign
.globl__start
.ent__start
.frame$29, 0, $31
.mask0x, 0
__start:
.cplocal $2
.cpsetup $t9, $zero, __start
lw$2, assign
jr$31
.end__start
$

and this linker script:

$ cat assign.ld
ENTRY (__start)
SECTIONS
{
  . = 0x1230 + SIZEOF_HEADERS;
  .text : { *(.text) }
  . = 0x2340;
  assign = .;
  HIDDEN (_gp = ALIGN (16) + 0x7ff0);
  .got : { *(.got) }
}
$

I get a segmentation fault in LD:

$ mips-linux-gnu-as -64 -o assign.o assign.s
$ mips-linux-gnu-ld -melf64btsmip -T assign.ld -o assign assign.o
Segmentation fault
$

This happens to be in bfd_zalloc called from mips_elf_record_got_page_entry
because assign is an absolute symbol and therefore it's section's owner
member is set to NULL.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/15365] MIPS linker hits assertion with -mabi=64 accessing __ehdr_start

2013-04-22 Thread ma...@linux-mips.org
http://sourceware.org/bugzilla/show_bug.cgi?id=15365

Maciej W. Rozycki ma...@linux-mips.org changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 CC||ma...@linux-mips.org
 AssignedTo|unassigned at sourceware|ma...@linux-mips.org
   |dot org |

--- Comment #1 from Maciej W. Rozycki ma...@linux-mips.org 2013-04-22 
20:27:52 UTC ---
I'm working on this problem.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores

2012-12-03 Thread ma...@linux-mips.org
http://sourceware.org/bugzilla/show_bug.cgi?id=10629

Maciej W. Rozycki ma...@linux-mips.org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 CC||ma...@linux-mips.org
 Resolution||FIXED

--- Comment #11 from Maciej W. Rozycki ma...@linux-mips.org 2012-12-03 
16:59:47 UTC ---
Bill,

 I have now applied a change that I believe should address the problem you saw.
Regrettably nobody around including myself seems to have Irix 6 access anymore,
so the correction is based on documentation only that unfortunately does not
appear to be complete for the area concerned.  So if you are still interested
in using GNU binutils on Irix 6, then please verify that the change I made
does the right thing for you and feel free to reopen this bug if you think
there is something wrong with it.

 Long-term, given the lack of access to Irix 6 among binutils developers, I am
afraid the port will probably have to be obsoleted and unless someone steps in
to maintain it, finally discarded.

  Maciej

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/12282] .note.GNU-stack is referenced in .ARM.exidx

2010-12-06 Thread ma...@linux-mips.org
http://sourceware.org/bugzilla/show_bug.cgi?id=12282

Maciej W. Rozycki ma...@linux-mips.org changed:

   What|Removed |Added

 CC||sje at cup dot hp.com

--- Comment #3 from Maciej W. Rozycki ma...@linux-mips.org 2010-12-06 
17:33:43 UTC ---
*** Bug 12287 has been marked as a duplicate of this bug. ***

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/12287] C++ throws fail when using latest GNU assembler on IA64

2010-12-06 Thread ma...@linux-mips.org
http://sourceware.org/bugzilla/show_bug.cgi?id=12287

Maciej W. Rozycki ma...@linux-mips.org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 CC||ma...@linux-mips.org
 Resolution||DUPLICATE

--- Comment #2 from Maciej W. Rozycki ma...@linux-mips.org 2010-12-06 
17:33:43 UTC ---


*** This bug has been marked as a duplicate of bug 12282 ***

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gas/12282] .note.GNU-stack is referenced in .ARM.exidx

2010-12-03 Thread ma...@linux-mips.org
http://sourceware.org/bugzilla/show_bug.cgi?id=12282

Maciej W. Rozycki ma...@linux-mips.org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||ma...@linux-mips.org
 Resolution||FIXED

--- Comment #2 from Maciej W. Rozycki ma...@linux-mips.org 2010-12-04 
00:26:00 UTC ---
Fixed.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/10144] mips/ld: non-dynamic relocations refer to dynamic symbol

2010-11-04 Thread ma...@linux-mips.org
http://sourceware.org/bugzilla/show_bug.cgi?id=10144

Maciej W. Rozycki ma...@linux-mips.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED

--- Comment #15 from Maciej W. Rozycki ma...@linux-mips.org 2010-11-04 
18:09:18 UTC ---
 The fix for this issue will be included in the upcoming 2.21 release.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils