This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

#18378 Add s390 support for gold


Here's my attempt at https://sourceware.org/bugzilla/show_bug.cgi?id=18378
(adding s390 support to gold). I get a full testsuite pass on
qemu-system-s390x with 64-bit gentoo, but I haven't been able to test on
a 32-bit system yet (doing anything with non-accelerated qemu is
horribly slow, and compiling C++ doubly so).

Two bugs have been found along the way: #18959 (in gold, affecting all
arches) and #18960 (in glibc, affecting likely only s390).  The first
patch in the series is my attempt at #18959.

I had to disable 4 tests since they use symbol values that are not
a multiple of 2. Such values cannot be loaded by larl instruction that
gcc uses to get addresses of all symbols, and hence can never pass on
s390.  This is the same issue that causes #18960.

Aside of the usual target-specific code, I had to add support for 64-bit
archive maps (/SYM64/) and 64-bit SHT_HASH entries (s390 seems to be
the only architecture using these).

Does that look OK?



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]