summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2014-11-26 19:54:49 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2014-11-26 19:54:49 +0000
commit9bb6ab3b5a6ceab629121186ba16d2a709c1366c (patch)
tree4890373cde717cbb4efea5468fbf0ab1385b156a /gcc
parent533c3d32d33418ca73b1aba17408f11da563c162 (diff)
downloadgcc-9bb6ab3b5a6ceab629121186ba16d2a709c1366c.tar.gz
* gcc.c (SANITIZER_SPEC): Don't error on -fsanitize=thread
without -pie or -shared, error on -fsanitize=thread -static instead. * lib/tsan-dg.exp (check_effective_target_fsanitize_thread, tsan_init): Don't use -fPIE or -pie. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218097 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/gcc.c2
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/lib/tsan-dg.exp12
4 files changed, 17 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 62dcb381af7..b05939e1789 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+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
diff --git a/gcc/gcc.c b/gcc/gcc.c
index b730ba53d7e..4cb4ba32618 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -794,7 +794,7 @@ proper position among the other output files. */
%{!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
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index c3dcfd2cbf4..b8239da9148 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+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
diff --git a/gcc/testsuite/lib/tsan-dg.exp b/gcc/testsuite/lib/tsan-dg.exp
index 77c85ff24ca..db3c263c9ac 100644
--- a/gcc/testsuite/lib/tsan-dg.exp
+++ b/gcc/testsuite/lib/tsan-dg.exp
@@ -18,9 +18,9 @@
# 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"]
}
#
@@ -93,12 +93,12 @@ proc tsan_init { args } {
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"
}
}
@@ -110,7 +110,7 @@ proc tsan_init { args } {
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