[PATCH] Improve and consolidate sparc PIC assembler.

Torbjorn Granlund tg at gmplib.org
Sat Apr 13 12:10:33 CEST 2013


David Miller <davem at davemloft.net> writes:

  	* mpn/sparc32/sparc-defs.m4 (LEA): Remove unused local label.
  	(LEA_LEAF): Likewise.
  
This patch helped the get past the Slowlaris assembler, which
can only cope with single-digit labels.

But there are now errors when greating the shared library:

/bin/bash ./libtool --tag=CC   --mode=link gcc -std=gnu99  -O2 -pedantic \
-m64 -mptr64 -mcpu=ultrasparc3 -Wc,-m64  -version-info 11:1:1  -o \
libgmp.la -rpath /usr/local/lib assert.lo compat.lo ...

gcc -std=gnu99 -shared  -fPIC -DPIC -Wl,-z -Wl,text -Wl,-h \
-Wl,libgmp.so.10 -o .libs/libgmp.so.10.1.1  .libs/assert.o \
.libs/compat.o ... rand/.libs/randmui.o   -lc  -O2 -m64 -mptr64 \
-mcpu=ultrasparc3 -m64

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?

-- 
Torbjörn


More information about the gmp-devel mailing list