|
From: Christian B. <bor...@de...> - 2010-10-26 14:38:02
|
Hi all,
sometimes I see some of the helgrind testcases fail on s390x, because
the stack trace shows pthread_create_WRK called directly instead of
pthread_create@*. This turns out to be sibling-call related.
I verified that gdb also does handle sibling calls in the same way,
so it is not a valgrind-only problem. (IOW, there is no stack frame
to unwind).
I suggest to use -fno-optimize-sibling-calls for the valgrind preload
libraries:
--- Makefile.all.am (revision 876)
+++ Makefile.all.am (working copy)
@@ -99,7 +99,7 @@
AM_CFLAGS_PIC = -dynamic -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
-mno-dynamic-no-pic -fpic -fPIC
else
-AM_CFLAGS_PIC = -fpic -O -g -fno-omit-frame-pointer -fno-strict-aliasing
+AM_CFLAGS_PIC = -fpic -O -g -fno-omit-frame-pointer -fno-strict-aliasing -fno-optimize-sibling-calls
endif
Dont know about darwin. This might be useful there as well.
Christian
|