[PATCH][AArch64] Fix PR18841 ifunc relocation ordering
Nick Clifton
nickc@redhat.com
Tue Jul 18 16:24:00 GMT 2017
Hi Szabolcs,
> In order to get the ifunc relocs properly sorted the correct class
> needs to be returned. The code mimics what has been done for x86.
>
> Fixes
> FAIL: Run pr18841 with libpr18841c.so
The patch is OK, but I would like to see one change:
+ if (!bed->s->swap_symbol_in (abfd,
+ (htab->root.dynsym->contents
+ + r_symndx * bed->s->sizeof_sym),
+ 0, &sym))
+ abort ();
I strongly dislike calls to abort() inside a library. Corrupt input
files can trigger them, and they are of no help to the user. So please
replace this with a call to bfd_error_message(). (It would be nice if
there was a reloc_class_unknown so that you could return that value, but
that would be too big of a change).
Cheers
Nick
More information about the Binutils
mailing list