Fix 64-bit Solaris 2/x86 IE TLS code sequence (PR target/43309)
Rainer Orth
ro@CeBiTec.Uni-Bielefeld.DE
Tue Dec 21 17:11:00 GMT 2010
Uros Bizjak <ubizjak@gmail.com> writes:
> Anyway, attached patch also generates correct code for my small tests.
> Rainer, can you please test attached patch?
Unfortunately, this doesn't work. E.g. for the g++.dg/tls/static-1.C
testcase, I get this difference (among others) for static-1a.s:
--- 11-gcc/gcc/testsuite/g++/static-1a.s 2010-12-21 17:18:41.725085343 +0
100
+++ 11-gcc.new/gcc/testsuite/g++/static-1a.s 2010-12-21 17:17:58.242204790 +0
100
@@ -6,14 +6,21 @@
_Z4testv:
.LFB0:
movq %fs:0, %rax
+ movq %rax, %rcx
addq _ZN1A1iE@gottpoff(%rip), %rax
I.e. there's an intervening insn between the movq %fs:0, %rax and the
addq, which current Sun ld cannot handle.
All the testcases that were fixed by my patch (augmented to remove the
expander) are now failing again.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
More information about the Gcc-patches
mailing list