tsan-dg.exp (tsan_init): Move check if tsan executable works from here ...
authorUros Bizjak <ubizjak@gmail.com>
Wed, 3 Feb 2016 17:01:01 +0000 (18:01 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Wed, 3 Feb 2016 17:01:01 +0000 (18:01 +0100)
* lib/tsan-dg.exp (tsan_init): Move check if tsan executable
works from here ...
(check_effective_target_fsanitize_thread): ... to here.  Do not
specify additional compile flags for the test source.
* lib/asan-dg.exp (check_effective_target_fsanitize_address): Do not
specify additional compile flags for the test source.

From-SVN: r233106

gcc/testsuite/ChangeLog
gcc/testsuite/lib/asan-dg.exp
gcc/testsuite/lib/tsan-dg.exp

index 88ec6dca5941661da1eb01533a364026d06ce616..8ad0a6074bbd764c9faac6cf550c781162379fca 100644 (file)
@@ -1,3 +1,12 @@
+2016-02-03  Uros Bizjak  <ubizjak@gmail.com>
+
+       * lib/tsan-dg.exp (tsan_init): Move check if tsan executable
+       works from here ...
+       (check_effective_target_fsanitize_thread): ... to here.  Do not
+       specify additional compile flags for the test source.
+       * lib/asan-dg.exp (check_effective_target_fsanitize_address): Do not
+       specify additional compile flags for the test source.
+
 2016-02-03  Wilco Dijkstra  <wdijkstr@arm.com>
 
        * gcc.target/aarch64/ccmp_1.c: Fix test issue.
index 994160eb1b98efbe53ce98e10b7a2d83bd830088..a1198c0f201f6adbf8c5f6e2010333defa2c279e 100644 (file)
@@ -20,7 +20,7 @@
 proc check_effective_target_fsanitize_address {} {
     return [check_no_compiler_messages fsanitize_address executable {
        int main (void) { return 0; }
-    } "-fsanitize=address"]
+    }]
 }
 
 proc asan_include_flags {} {
index eb1f3a986f26c51e8646399398cae2d0ad2b0615..7ca10ab64f92284fecd180564d2ccfbc57424b34 100644 (file)
 # <http://www.gnu.org/licenses/>.
 
 # Return 1 if compilation with -fsanitize=thread is error-free for trivial
-# code, 0 otherwise.
+# code, 0 otherwise.  Also set what to do by default here, depending on the
+# result of a runtime test.
 
 proc check_effective_target_fsanitize_thread {} {
-    return [check_runtime fsanitize_thread {
+    global individual_timeout
+    global dg-do-what-default
+
+    if ![check_no_compiler_messages fsanitize_thread executable {
        int main (void) { return 0; }
-    } "-fsanitize=thread"]
+    }] {
+        return 0
+    }
+
+    # Lower timeout value in case test does not terminate properly.
+    set individual_timeout 20
+    if [check_runtime_nocache tsan_works {
+       int main () { return 0; }
+    }] {
+       set dg-do-what-default run
+    } else {
+       set dg-do-what-default link
+    }
+    unset individual_timeout
+
+    return 1
 }
 
 #
@@ -101,22 +120,6 @@ proc tsan_init { args } {
            set TEST_ALWAYS_FLAGS "$link_flags -fsanitize=thread -g"
        }
     }
-
-    set dg-do-what-default run
-    if { $link_flags != "" } {
-       global individual_timeout
-
-       # Lower timeout value in case test does not terminate properly.
-       set individual_timeout 20
-       if [check_runtime_nocache tsan_works {
-               int main () { return 0; }
-           } "-fsanitize=thread -g"] {
-           set dg-do-what-default run
-       } else {
-           set dg-do-what-default compile
-       }
-       unset individual_timeout
-    }
 }
 
 #