[PATCH] Improve and consolidate sparc PIC assembler.
tg at gmplib.org
Sat Apr 13 21:10:35 CEST 2013
> ld: fatal: relocation error: R_SPARC_GOTDATA_OP_LOX10: file mpn/.libs/gcd_1.o: symbol ctz_table: relocation illegal for TLS symbol
> ld: fatal: relocation error: R_SPARC_GOTDATA_OP: file mpn/.libs/gcd_1.o: symbol ctz_table: relocation illegal for TLS symbol
> TLS? Thread local storage?
Sun's tools give the worst diagnostics in the world. Yes, that's what it
means by TLS.
Which seems nonsensical.
And no I have no idea why it's complaining like this :-/
Maybe because ctz_zero is in .rodata? That shouldn't matter at all, gcc
emits things like that all the time.
Is there a "ctz_table" in libc.so by chance? If so, then changing the
name of the table should be sufficient to fix the problem.
No ctz_zero in libc according to nm.
Since GMP supports Solaris, and since Solaris is different, you need
Solaris access for GMP hacking. I am probably not able to help, since I
don't have any sparc-solaris in the GMP test environment.
(I'll get sparc64 added to the test environment the day qemu actually
works for that target.)
More information about the gmp-devel