Current Solaris/x86 libitm results
Rainer Orth
ro@CeBiTec.Uni-Bielefeld.DE
Thu Nov 10 16:30:00 GMT 2011
With your last patches, I get decent test results for libitm on Solaris
11/x86, both with Sun as/ld and gas/Sun ld:
=== libitm tests ===
Running target unix
FAIL: libitm.c/clone-1.c execution test
FAIL: libitm.c/memcpy-1.c execution test
FAIL: libitm.c/memset-1.c execution test
WARNING: libitm.c++/static_ctor.C compilation failed to produce executable
=== libitm Summary for unix ===
# of expected passes 20
# of unexpected failures 3
# of expected failures 5
Running target unix/-m64
FAIL: libitm.c/clone-1.c execution test
FAIL: libitm.c++/eh-1.C execution test
WARNING: libitm.c++/static_ctor.C compilation failed to produce executable
=== libitm Summary for unix/-m64 ===
# of expected passes 21
# of unexpected failures 2
# of expected failures 5
=== libitm Summary ===
# of expected passes 41
# of unexpected failures 5
# of expected failures 10
With the exception of the 64-bit libitm.c++/eh-1.C failure, they match
what I see on x86_64-unknown-linux-gnu.
This also means the current lack of CFI support in Sun as doesn't make a
difference.
To check the worst possible case, I've also tried Solaris 8/x86, also
with Sun as and gas, but ran into a couple of problems with Sun as:
* It doesn't understand .hidden (and older versions of ld may not,
either, cf. gcc/configure.ac (gcc_cv_as_hidden). One would probably
have to move the test to a common place to avoid duplicating it. For
the moment, I've just #if 0'ed the .hidden.
* Later, libitm.so fails to link:
Text relocation remains referenced
against symbol offset in file
GTM_begin_transaction 0x20 .libs/sjlj.o
ld: fatal: relocations remain against allocatable but non-writable sections
which is true, but doesn't happen on S8 with gas or S11 with either as
or gas. I've cheated, removed the -z text from libtool, and linked
with -mimpure-text.
With those hacks, I can link libitm.so, but all execution tests fail to
link due to PR middle-end/50598.
With gas and Sun ld, on the other hand, testsuite results are good:
=== libitm tests ===
Running target unix
FAIL: libitm.c/clone-1.c execution test
FAIL: libitm.c/memcpy-1.c execution test
FAIL: libitm.c/memset-1.c execution test
FAIL: libitm.c++/eh-1.C execution test
WARNING: libitm.c++/static_ctor.C compilation failed to produce executable
=== libitm Summary ===
# of expected passes 19
# of unexpected failures 4
# of expected failures 5
Only the failure of 32-bit libitm.c++/eh-1.C differs from the Solaris 11
results above.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
More information about the Gcc-patches
mailing list