+2014-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.c (SANITIZER_SPEC): Don't error on -fsanitize=thread
+ without -pie or -shared, error on -fsanitize=thread -static instead.
+
2014-11-26 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR ipa/61190
%{!nostdlib:%{!nodefaultlibs:%{%:sanitize(address):" LIBASAN_SPEC "\
%{static:%ecannot specify -static with -fsanitize=address}}\
%{%:sanitize(thread):" LIBTSAN_SPEC "\
- %{!pie:%{!shared:%e-fsanitize=thread linking must be done with -pie or -shared}}}\
+ %{static:%ecannot specify -static with -fsanitize=thread}}\
%{%:sanitize(undefined):" LIBUBSAN_SPEC "}\
%{%:sanitize(leak):" LIBLSAN_SPEC "}}}"
#endif
+2014-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ * lib/tsan-dg.exp (check_effective_target_fsanitize_thread,
+ tsan_init): Don't use -fPIE or -pie.
+
2014-11-26 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR ipa/61190
# code, 0 otherwise.
proc check_effective_target_fsanitize_thread {} {
- return [check_no_compiler_messages fanitize_thread executable {
+ return [check_no_compiler_messages fsanitize_thread executable {
int main (void) { return 0; }
- } "-fPIE -pie -fsanitize=thread"]
+ } "-fsanitize=thread"]
}
#
if [info exists ALWAYS_CXXFLAGS] {
set tsan_saved_ALWAYS_CXXFLAGS $ALWAYS_CXXFLAGS
set ALWAYS_CXXFLAGS [concat "{ldflags=$link_flags}" $ALWAYS_CXXFLAGS]
- set ALWAYS_CXXFLAGS [concat "{additional_flags=-fPIE -pie -fsanitize=thread -g}" $ALWAYS_CXXFLAGS]
+ set ALWAYS_CXXFLAGS [concat "{additional_flags=-fsanitize=thread -g}" $ALWAYS_CXXFLAGS]
} else {
if [info exists TEST_ALWAYS_FLAGS] {
- set TEST_ALWAYS_FLAGS "$link_flags -fPIE -pie -fsanitize=thread -g $TEST_ALWAYS_FLAGS"
+ set TEST_ALWAYS_FLAGS "$link_flags -fsanitize=thread -g $TEST_ALWAYS_FLAGS"
} else {
- set TEST_ALWAYS_FLAGS "$link_flags -fPIE -pie -fsanitize=thread -g"
+ set TEST_ALWAYS_FLAGS "$link_flags -fsanitize=thread -g"
}
}
set individual_timeout 20
if [check_runtime_nocache tsan_works {
int main () { return 0; }
- } "-fPIE -pie -fsanitize=thread -g"] {
+ } "-fsanitize=thread -g"] {
set dg-do-what-default run
} else {
set dg-do-what-default compile