[PATCH 0/6] PR binutils/22875: More unsupported relocation handling target backend fixes
Maciej W. Rozycki
macro@mips.com
Thu Mar 29 20:18:00 GMT 2018
Hi,
In the course of adjusting the strip-13 test case for correct MIPS target
coverage I have discovered further problems with unsupported relocation
handling across a few target backends, including the MIPS backend itself.
Here's a small patch series to address them. No regressions across the
usual targets. See individual descriptions for details.
A pattern repeats across a few targets, where out-of-bounds accesses are
made to the respective howto tables for unsupported relocations, making
behaviour unpredictable and possibly leading to a crash. I have only
adjusted those which actually triggered in my testing with strip-13 test
case adjustments to come. There may be more.
Also the x86-64 backend seems to mishandle unsupported relocations that
have the recently added (with commit 78984959cb38 ("x86-64: Add
R_X86_64_converted_reloc_bit")) R_X86_64_converted_reloc_bit bit set. I
found a possible fix too complicated for me to afford the time required to
sort it now, so I'm leaving it up to H.J. to address. More details will
follow with strip-13 test case updates. NB `readelf -r' does not handle
R_X86_64_converted_reloc_bit either and reports an unrecognized relocation
instead.
Adjustments to the strip-13 test case will follow.
Maciej
More information about the Binutils
mailing list