+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.
# <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
}
#
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
- }
}
#