diff --git a/compiler-rt/test/asan/TestCases/Windows/aligned_mallocs.cpp b/compiler-rt/test/asan/TestCases/Windows/aligned_mallocs.cpp --- a/compiler-rt/test/asan/TestCases/Windows/aligned_mallocs.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/aligned_mallocs.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t diff --git a/compiler-rt/test/asan/TestCases/Windows/allocators_sanity.cpp b/compiler-rt/test/asan/TestCases/Windows/allocators_sanity.cpp --- a/compiler-rt/test/asan/TestCases/Windows/allocators_sanity.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/allocators_sanity.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/beginthreadex.cpp b/compiler-rt/test/asan/TestCases/Windows/beginthreadex.cpp --- a/compiler-rt/test/asan/TestCases/Windows/beginthreadex.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/beginthreadex.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t diff --git a/compiler-rt/test/asan/TestCases/Windows/bitfield.cpp b/compiler-rt/test/asan/TestCases/Windows/bitfield.cpp --- a/compiler-rt/test/asan/TestCases/Windows/bitfield.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/bitfield.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t diff --git a/compiler-rt/test/asan/TestCases/Windows/bitfield_uaf.cpp b/compiler-rt/test/asan/TestCases/Windows/bitfield_uaf.cpp --- a/compiler-rt/test/asan/TestCases/Windows/bitfield_uaf.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/bitfield_uaf.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/breakpoint.cpp b/compiler-rt/test/asan/TestCases/Windows/breakpoint.cpp --- a/compiler-rt/test/asan/TestCases/Windows/breakpoint.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/breakpoint.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %env_asan_opts=handle_sigill=1 not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/calloc_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/calloc_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/calloc_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/calloc_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/calloc_right_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/calloc_right_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/calloc_right_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/calloc_right_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/calloc_uaf.cpp b/compiler-rt/test/asan/TestCases/Windows/calloc_uaf.cpp --- a/compiler-rt/test/asan/TestCases/Windows/calloc_uaf.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/calloc_uaf.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/coverage-dll-stdio.cpp b/compiler-rt/test/asan/TestCases/Windows/coverage-dll-stdio.cpp --- a/compiler-rt/test/asan/TestCases/Windows/coverage-dll-stdio.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/coverage-dll-stdio.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Test that coverage and MSVC CRT stdio work from a DLL. This ensures that the // __local_stdio_printf_options function isn't instrumented for coverage. diff --git a/compiler-rt/test/asan/TestCases/Windows/crt_initializers.cpp b/compiler-rt/test/asan/TestCases/Windows/crt_initializers.cpp --- a/compiler-rt/test/asan/TestCases/Windows/crt_initializers.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/crt_initializers.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/delay_dbghelp.cpp b/compiler-rt/test/asan/TestCases/Windows/delay_dbghelp.cpp --- a/compiler-rt/test/asan/TestCases/Windows/delay_dbghelp.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/delay_dbghelp.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Build an executable with ASan, then extract the DLLs that it depends on. // RUN: %clang_cl_asan %s -Fe%t.exe // RUN: llvm-readobj --coff-imports %t.exe | grep Name: | sed -e 's/ *Name: *//' > %t diff --git a/compiler-rt/test/asan/TestCases/Windows/demangled_names.cpp b/compiler-rt/test/asan/TestCases/Windows/demangled_names.cpp --- a/compiler-rt/test/asan/TestCases/Windows/demangled_names.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/demangled_names.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s // diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_aligned_mallocs.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_aligned_mallocs.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_aligned_mallocs.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_aligned_mallocs.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: %run %t %t.dll | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_allocators_sanity.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_allocators_sanity.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_allocators_sanity.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_allocators_sanity.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: %run %t %t.dll | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_and_lib.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_and_lib.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_and_lib.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_and_lib.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Just make sure we can link an implib into another DLL // This used to fail between r212699 and r212814. // RUN: %clang_cl_asan -DCONFIG=1 %s -c -Fo%t.1.obj diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_cerr.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_cerr.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_cerr.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_cerr.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_control_c.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_control_c.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_control_c.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_control_c.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -O2 %s -Fe%t.dll // RUNX: %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_global_dead_strip.c b/compiler-rt/test/asan/TestCases/Windows/dll_global_dead_strip.c --- a/compiler-rt/test/asan/TestCases/Windows/dll_global_dead_strip.c +++ b/compiler-rt/test/asan/TestCases/Windows/dll_global_dead_strip.c @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // // RUN: %clang_cl_asan /Gw -LD -Od %s -Fe%t.dll diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_heap_allocation.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_heap_allocation.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_heap_allocation.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_heap_allocation.cpp @@ -1,3 +1,4 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} // RUN: %clang_cl -LD %s -Fe%t.dll -DHEAP_LIBRARY -MD // RUN: %clang_cl %s %t.lib -Fe%t -fsanitize=address -MT diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_host.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_host.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_host.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_host.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // This is a host program for DLL tests. // // Just make sure we can compile this. diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memchr.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memchr.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memchr.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memchr.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memcpy.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memcpy.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memcpy.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memcpy.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -Wno-fortify-source -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memcpy_indirect.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memcpy_indirect.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memcpy_indirect.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memcpy_indirect.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memset.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memset.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memset.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_intercept_memset.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -Wno-fortify-source -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_intercept_strlen.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_intercept_strlen.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_intercept_strlen.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_intercept_strlen.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_large_function.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_large_function.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_large_function.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_large_function.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Make sure we can link a DLL with large functions which would mean // functions such as __asan_loadN and __asan_storeN will be called // from the DLL. We simulate the large function with diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_malloc_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_malloc_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_malloc_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_malloc_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_malloc_uaf.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_malloc_uaf.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_malloc_uaf.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_malloc_uaf.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_noreturn.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_noreturn.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_noreturn.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_noreturn.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_null_deref.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_null_deref.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_null_deref.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_null_deref.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_with_dtor_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_with_dtor_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_with_dtor_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_with_dtor_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_poison_unpoison.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_poison_unpoison.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_poison_unpoison.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_poison_unpoison.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_report_globals_symbolization_at_startup.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_report_globals_symbolization_at_startup.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_report_globals_symbolization_at_startup.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_report_globals_symbolization_at_startup.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -LD -Od -DDLL %s -Fe%t.dll // RUN: %clang_cl_asan -Od -DEXE %s %t.lib -Fe%te.exe // RUN: %env_asan_opts=report_globals=2 %run %te.exe 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_seh.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_seh.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_seh.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_seh.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // // Check both -GS and -GS- builds: diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_stack_use_after_return.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_stack_use_after_return.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_stack_use_after_return.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_stack_use_after_return.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: %env_asan_opts=detect_stack_use_after_return=1 not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_thread_stack_array_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_thread_stack_array_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_thread_stack_array_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_thread_stack_array_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %p/dll_host.cpp -Fe%t // RUN: %clang_cl_asan -LD -Od %s -Fe%t.dll // RUN: not %run %t %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_unload.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_unload.cpp --- a/compiler-rt/test/asan/TestCases/Windows/dll_unload.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/dll_unload.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + #include #include diff --git a/compiler-rt/test/asan/TestCases/Windows/double_free.cpp b/compiler-rt/test/asan/TestCases/Windows/double_free.cpp --- a/compiler-rt/test/asan/TestCases/Windows/double_free.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/double_free.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/double_operator_delete.cpp b/compiler-rt/test/asan/TestCases/Windows/double_operator_delete.cpp --- a/compiler-rt/test/asan/TestCases/Windows/double_operator_delete.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/double_operator_delete.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/global_const_string.cpp b/compiler-rt/test/asan/TestCases/Windows/global_const_string.cpp --- a/compiler-rt/test/asan/TestCases/Windows/global_const_string.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/global_const_string.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/global_const_string_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/global_const_string_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/global_const_string_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/global_const_string_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/global_dead_strip.c b/compiler-rt/test/asan/TestCases/Windows/global_dead_strip.c --- a/compiler-rt/test/asan/TestCases/Windows/global_dead_strip.c +++ b/compiler-rt/test/asan/TestCases/Windows/global_dead_strip.c @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan /Gw /Od %s /Fe%t.exe // RUN: %env_asan_opts=report_globals=2 %t.exe 2>&1 | FileCheck %s --check-prefix=NOSTRIP // RUN: %clang_cl_asan /Gw /O2 %s /Fe%t.exe -link -opt:ref diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // UNSUPPORTED: asan-64-bits // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %env_asan_opts=windows_hook_rtl_allocators=true not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc_dll_double_free.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc_dll_double_free.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc_dll_double_free.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc_dll_double_free.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + #include #include diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc_dll_unload_realloc_uaf.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc_dll_unload_realloc_uaf.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc_dll_unload_realloc_uaf.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc_dll_unload_realloc_uaf.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + #include #include diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc_doublefree.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc_doublefree.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc_doublefree.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc_doublefree.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %env_asan_opts=windows_hook_rtl_allocators=true not %run %t 2>&1 | FileCheck %s // UNSUPPORTED: asan-64-bits diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc_flags_fallback.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc_flags_fallback.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc_flags_fallback.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc_flags_fallback.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t 2>&1 | FileCheck %s // RUN: %env_asan_opts=windows_hook_rtl_allocators=true %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc_huge.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc_huge.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc_huge.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc_huge.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %env_asan_opts=allocator_may_return_null=true %run %t // RUN: %env_asan_opts=allocator_may_return_null=true:windows_hook_rtl_allocators=true %run %t diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc_rtl_transfer.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc_rtl_transfer.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc_rtl_transfer.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc_rtl_transfer.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + #include "sanitizer\allocator_interface.h" #include #include diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc_sanity.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc_sanity.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc_sanity.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc_sanity.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t 2>&1 | FileCheck %s #include diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc_transfer.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc_transfer.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc_transfer.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc_transfer.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + #include "sanitizer\allocator_interface.h" #include #include diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc_uaf.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc_uaf.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc_uaf.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc_uaf.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %env_asan_opts=windows_hook_rtl_allocators=true not %run %t 2>&1 | FileCheck %s // UNSUPPORTED: asan-64-bits diff --git a/compiler-rt/test/asan/TestCases/Windows/heapalloc_zero_size.cpp b/compiler-rt/test/asan/TestCases/Windows/heapalloc_zero_size.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heapalloc_zero_size.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heapalloc_zero_size.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan /Od -o %t %s // RUN: %env_asan_opts=windows_hook_rtl_allocators=true %run %t 2>&1 | FileCheck %s // RUN: %env_asan_opts=windows_hook_rtl_allocators=false %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/heaprealloc.cpp b/compiler-rt/test/asan/TestCases/Windows/heaprealloc.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heaprealloc.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heaprealloc.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %env_asan_opts=windows_hook_rtl_allocators=true not %run %t 2>&1 | FileCheck %s // UNSUPPORTED: asan-64-bits diff --git a/compiler-rt/test/asan/TestCases/Windows/heaprealloc_alloc_zero.cpp b/compiler-rt/test/asan/TestCases/Windows/heaprealloc_alloc_zero.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heaprealloc_alloc_zero.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heaprealloc_alloc_zero.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan /Od /MT -o %t %s // RUN: %env_asan_opts=windows_hook_rtl_allocators=true %run %t 2>&1 | FileCheck %s // UNSUPPORTED: asan-64-bits diff --git a/compiler-rt/test/asan/TestCases/Windows/heaprealloc_zero_size.cpp b/compiler-rt/test/asan/TestCases/Windows/heaprealloc_zero_size.cpp --- a/compiler-rt/test/asan/TestCases/Windows/heaprealloc_zero_size.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/heaprealloc_zero_size.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan /Od -o %t %s // RUN: %env_asan_opts=windows_hook_rtl_allocators=true %run %t 2>&1 | FileCheck %s // RUN: %env_asan_opts=windows_hook_rtl_allocators=false %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/hello_world.cpp b/compiler-rt/test/asan/TestCases/Windows/hello_world.cpp --- a/compiler-rt/test/asan/TestCases/Windows/hello_world.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/hello_world.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/illegal_instruction.cpp b/compiler-rt/test/asan/TestCases/Windows/illegal_instruction.cpp --- a/compiler-rt/test/asan/TestCases/Windows/illegal_instruction.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/illegal_instruction.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %env_asan_opts=handle_sigill=1 not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/integer_divide_by_zero.cpp b/compiler-rt/test/asan/TestCases/Windows/integer_divide_by_zero.cpp --- a/compiler-rt/test/asan/TestCases/Windows/integer_divide_by_zero.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/integer_divide_by_zero.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %env_asan_opts=handle_sigfpe=1 not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/intercept_memcpy.cpp b/compiler-rt/test/asan/TestCases/Windows/intercept_memcpy.cpp --- a/compiler-rt/test/asan/TestCases/Windows/intercept_memcpy.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/intercept_memcpy.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/intercept_strdup.cpp b/compiler-rt/test/asan/TestCases/Windows/intercept_strdup.cpp --- a/compiler-rt/test/asan/TestCases/Windows/intercept_strdup.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/intercept_strdup.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/intercept_strlen.cpp b/compiler-rt/test/asan/TestCases/Windows/intercept_strlen.cpp --- a/compiler-rt/test/asan/TestCases/Windows/intercept_strlen.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/intercept_strlen.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/interface_symbols_windows.cpp b/compiler-rt/test/asan/TestCases/Windows/interface_symbols_windows.cpp --- a/compiler-rt/test/asan/TestCases/Windows/interface_symbols_windows.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/interface_symbols_windows.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Check that the interface exported by asan static lib matches the list of // functions mentioned in sanitizer_interface.inc. // diff --git a/compiler-rt/test/asan/TestCases/Windows/iostream_sbo.cpp b/compiler-rt/test/asan/TestCases/Windows/iostream_sbo.cpp --- a/compiler-rt/test/asan/TestCases/Windows/iostream_sbo.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/iostream_sbo.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // First, check this works with the default ignorelist: // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: echo "42" | %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/malloc_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/malloc_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/malloc_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/malloc_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/malloc_right_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/malloc_right_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/malloc_right_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/malloc_right_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/malloc_uaf.cpp b/compiler-rt/test/asan/TestCases/Windows/malloc_uaf.cpp --- a/compiler-rt/test/asan/TestCases/Windows/malloc_uaf.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/malloc_uaf.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/null_deref_multiple_dlls.cpp b/compiler-rt/test/asan/TestCases/Windows/null_deref_multiple_dlls.cpp --- a/compiler-rt/test/asan/TestCases/Windows/null_deref_multiple_dlls.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/null_deref_multiple_dlls.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Make sure everything works even if the main module doesn't have any stack // variables, thus doesn't explicitly reference any symbol exported by the // runtime thunk. diff --git a/compiler-rt/test/asan/TestCases/Windows/oom.cpp b/compiler-rt/test/asan/TestCases/Windows/oom.cpp --- a/compiler-rt/test/asan/TestCases/Windows/oom.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/oom.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s // REQUIRES: asan-32-bits diff --git a/compiler-rt/test/asan/TestCases/Windows/operator_array_new_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/operator_array_new_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/operator_array_new_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/operator_array_new_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/operator_array_new_right_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/operator_array_new_right_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/operator_array_new_right_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/operator_array_new_right_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/operator_array_new_uaf.cpp b/compiler-rt/test/asan/TestCases/Windows/operator_array_new_uaf.cpp --- a/compiler-rt/test/asan/TestCases/Windows/operator_array_new_uaf.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/operator_array_new_uaf.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/operator_array_new_with_dtor_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/operator_array_new_with_dtor_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/operator_array_new_with_dtor_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/operator_array_new_with_dtor_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/operator_delete_wrong_argument.cpp b/compiler-rt/test/asan/TestCases/Windows/operator_delete_wrong_argument.cpp --- a/compiler-rt/test/asan/TestCases/Windows/operator_delete_wrong_argument.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/operator_delete_wrong_argument.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/operator_new_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/operator_new_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/operator_new_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/operator_new_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/operator_new_right_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/operator_new_right_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/operator_new_right_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/operator_new_right_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/operator_new_uaf.cpp b/compiler-rt/test/asan/TestCases/Windows/operator_new_uaf.cpp --- a/compiler-rt/test/asan/TestCases/Windows/operator_new_uaf.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/operator_new_uaf.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/queue_user_work_item_report.cpp b/compiler-rt/test/asan/TestCases/Windows/queue_user_work_item_report.cpp --- a/compiler-rt/test/asan/TestCases/Windows/queue_user_work_item_report.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/queue_user_work_item_report.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/realloc_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/realloc_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/realloc_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/realloc_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/realloc_right_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/realloc_right_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/realloc_right_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/realloc_right_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/realloc_uaf.cpp b/compiler-rt/test/asan/TestCases/Windows/realloc_uaf.cpp --- a/compiler-rt/test/asan/TestCases/Windows/realloc_uaf.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/realloc_uaf.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/recalloc_sanity.cpp b/compiler-rt/test/asan/TestCases/Windows/recalloc_sanity.cpp --- a/compiler-rt/test/asan/TestCases/Windows/recalloc_sanity.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/recalloc_sanity.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Workaround for "LINK : fatal error LNK1318: Unexpected PDB error" // RUN: rm -f %t.pdb diff --git a/compiler-rt/test/asan/TestCases/Windows/report_globals_reload_dll.cpp b/compiler-rt/test/asan/TestCases/Windows/report_globals_reload_dll.cpp --- a/compiler-rt/test/asan/TestCases/Windows/report_globals_reload_dll.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/report_globals_reload_dll.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Make sure we can handle reloading the same DLL multiple times. // RUN: %clang_cl_asan -LD -Od -DDLL %s -Fe%t.dll // RUN: %clang_cl_asan -Od -DEXE %s -Fe%te.exe diff --git a/compiler-rt/test/asan/TestCases/Windows/report_globals_vs_freelibrary.cpp b/compiler-rt/test/asan/TestCases/Windows/report_globals_vs_freelibrary.cpp --- a/compiler-rt/test/asan/TestCases/Windows/report_globals_vs_freelibrary.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/report_globals_vs_freelibrary.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -LD -Od -DDLL %s -Fe%t.dll // RUN: %clang_cl_asan -Od -DEXE %s -Fe%te.exe // RUN: %env_asan_opts=report_globals=2 %run %te.exe %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap.cpp b/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap.cpp --- a/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t /MD // RUN: %env_asan_opts=windows_hook_rtl_allocators=true not %run %t 2>&1 | FileCheck %s // UNSUPPORTED: asan-64-bits diff --git a/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_dll_unload_double_free.cpp b/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_dll_unload_double_free.cpp --- a/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_dll_unload_double_free.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_dll_unload_double_free.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -LD /Od -DDLL %s -Fe%t.dll // RUN: %clang_cl /Od -DEXE %s -Fe%te.exe // RUN: %env_asan_opts=windows_hook_rtl_allocators=true not %run %te.exe %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_dll_unload_realloc.cpp b/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_dll_unload_realloc.cpp --- a/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_dll_unload_realloc.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_dll_unload_realloc.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -LD /Od -DDLL %s -Fe%t.dll // RUN: %clang_cl /Od -DEXE %s -Fe%te.exe // RUN: %env_asan_opts=windows_hook_rtl_allocators=true not %run %te.exe %t.dll 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_flags_fallback.cpp b/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_flags_fallback.cpp --- a/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_flags_fallback.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_flags_fallback.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t /MD // RUN: %env_asan_opts=windows_hook_rtl_allocators=true %run %t 2>&1 | FileCheck %s // UNSUPPORTED: asan-64-bits diff --git a/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_zero.cpp b/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_zero.cpp --- a/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_zero.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/rtlallocateheap_zero.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t /MD // RUN: %env_asan_opts=windows_hook_rtl_allocators=true not %run %t 2>&1 | FileCheck %s // UNSUPPORTED: asan-64-bits diff --git a/compiler-rt/test/asan/TestCases/Windows/sanitizer_purge.cpp b/compiler-rt/test/asan/TestCases/Windows/sanitizer_purge.cpp --- a/compiler-rt/test/asan/TestCases/Windows/sanitizer_purge.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/sanitizer_purge.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + #include #include #include diff --git a/compiler-rt/test/asan/TestCases/Windows/seh.cpp b/compiler-rt/test/asan/TestCases/Windows/seh.cpp --- a/compiler-rt/test/asan/TestCases/Windows/seh.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/seh.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Make sure that ASan works with SEH in both Clang and MSVC. MSVC uses a // different EH personality depending on the -GS setting, so test both -GS+ and // -GS-. diff --git a/compiler-rt/test/asan/TestCases/Windows/shadow_conflict_32.cpp b/compiler-rt/test/asan/TestCases/Windows/shadow_conflict_32.cpp --- a/compiler-rt/test/asan/TestCases/Windows/shadow_conflict_32.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/shadow_conflict_32.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Load this DLL at the default 32-bit ASan shadow base, and test how we dump // the process memory layout. // REQUIRES: asan-32-bits diff --git a/compiler-rt/test/asan/TestCases/Windows/shadow_mapping_failure.cpp b/compiler-rt/test/asan/TestCases/Windows/shadow_mapping_failure.cpp --- a/compiler-rt/test/asan/TestCases/Windows/shadow_mapping_failure.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/shadow_mapping_failure.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s // REQUIRES: asan-32-bits diff --git a/compiler-rt/test/asan/TestCases/Windows/sse_misalignment.cpp b/compiler-rt/test/asan/TestCases/Windows/sse_misalignment.cpp --- a/compiler-rt/test/asan/TestCases/Windows/sse_misalignment.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/sse_misalignment.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %env_asan_opts=handle_sigfpe=1 not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/stack_array_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/stack_array_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/stack_array_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/stack_array_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/stack_array_right_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/stack_array_right_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/stack_array_right_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/stack_array_right_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/stack_array_sanity.cpp b/compiler-rt/test/asan/TestCases/Windows/stack_array_sanity.cpp --- a/compiler-rt/test/asan/TestCases/Windows/stack_array_sanity.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/stack_array_sanity.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/stack_use_after_return.cpp b/compiler-rt/test/asan/TestCases/Windows/stack_use_after_return.cpp --- a/compiler-rt/test/asan/TestCases/Windows/stack_use_after_return.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/stack_use_after_return.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %env_asan_opts=detect_stack_use_after_return=1 not %run %t 2>&1 | FileCheck %s // RUN: %clang_cl_asan -Od %s -Fe%t -fsanitize-address-use-after-return=always diff --git a/compiler-rt/test/asan/TestCases/Windows/symbols_path.cpp b/compiler-rt/test/asan/TestCases/Windows/symbols_path.cpp --- a/compiler-rt/test/asan/TestCases/Windows/symbols_path.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/symbols_path.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Make sure symbolization works even if the path to the .exe file changes. // RUN: mkdir %t || true // RUN: %clang_cl_asan -Od %s -Fe%t/symbols_path.exe diff --git a/compiler-rt/test/asan/TestCases/Windows/thread_simple.cpp b/compiler-rt/test/asan/TestCases/Windows/thread_simple.cpp --- a/compiler-rt/test/asan/TestCases/Windows/thread_simple.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/thread_simple.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t diff --git a/compiler-rt/test/asan/TestCases/Windows/thread_stack_array_left_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/thread_stack_array_left_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/thread_stack_array_left_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/thread_stack_array_left_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/thread_stack_array_right_oob.cpp b/compiler-rt/test/asan/TestCases/Windows/thread_stack_array_right_oob.cpp --- a/compiler-rt/test/asan/TestCases/Windows/thread_stack_array_right_oob.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/thread_stack_array_right_oob.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/thread_stack_reuse.cpp b/compiler-rt/test/asan/TestCases/Windows/thread_stack_reuse.cpp --- a/compiler-rt/test/asan/TestCases/Windows/thread_stack_reuse.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/thread_stack_reuse.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t diff --git a/compiler-rt/test/asan/TestCases/Windows/thread_stress.cpp b/compiler-rt/test/asan/TestCases/Windows/thread_stress.cpp --- a/compiler-rt/test/asan/TestCases/Windows/thread_stress.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/thread_stress.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t diff --git a/compiler-rt/test/asan/TestCases/Windows/thread_suspended.cpp b/compiler-rt/test/asan/TestCases/Windows/thread_suspended.cpp --- a/compiler-rt/test/asan/TestCases/Windows/thread_suspended.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/thread_suspended.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t diff --git a/compiler-rt/test/asan/TestCases/Windows/tls_init.cpp b/compiler-rt/test/asan/TestCases/Windows/tls_init.cpp --- a/compiler-rt/test/asan/TestCases/Windows/tls_init.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/tls_init.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan %s -Fe%t.exe /MD // RUN: %run %t.exe | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/use_after_realloc.cpp b/compiler-rt/test/asan/TestCases/Windows/use_after_realloc.cpp --- a/compiler-rt/test/asan/TestCases/Windows/use_after_realloc.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/use_after_realloc.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/use_after_return_linkage.cpp b/compiler-rt/test/asan/TestCases/Windows/use_after_return_linkage.cpp --- a/compiler-rt/test/asan/TestCases/Windows/use_after_return_linkage.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/use_after_return_linkage.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // Make sure LIBCMT doesn't accidentally get added to the list of DEFAULTLIB // directives. diff --git a/compiler-rt/test/asan/TestCases/Windows/user-exception.cpp b/compiler-rt/test/asan/TestCases/Windows/user-exception.cpp --- a/compiler-rt/test/asan/TestCases/Windows/user-exception.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/user-exception.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: env ASAN_OPTIONS=handle_segv=0 %run %t 2>&1 | FileCheck %s --check-prefix=USER // RUN: env ASAN_OPTIONS=handle_segv=1 not %run %t 2>&1 | FileCheck %s --check-prefix=ASAN diff --git a/compiler-rt/test/asan/TestCases/Windows/windows_h.cpp b/compiler-rt/test/asan/TestCases/Windows/windows_h.cpp --- a/compiler-rt/test/asan/TestCases/Windows/windows_h.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/windows_h.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: %run %t diff --git a/compiler-rt/test/asan/TestCases/Windows/wrong_downcast_on_heap.cpp b/compiler-rt/test/asan/TestCases/Windows/wrong_downcast_on_heap.cpp --- a/compiler-rt/test/asan/TestCases/Windows/wrong_downcast_on_heap.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/wrong_downcast_on_heap.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/TestCases/Windows/wrong_downcast_on_stack.cpp b/compiler-rt/test/asan/TestCases/Windows/wrong_downcast_on_stack.cpp --- a/compiler-rt/test/asan/TestCases/Windows/wrong_downcast_on_stack.cpp +++ b/compiler-rt/test/asan/TestCases/Windows/wrong_downcast_on_stack.cpp @@ -1,3 +1,5 @@ +// UNSUPPORTED: target={{.*-windows-gnu}} + // RUN: %clang_cl_asan -Od %s -Fe%t // RUN: not %run %t 2>&1 | FileCheck %s diff --git a/compiler-rt/test/asan/lit.cfg.py b/compiler-rt/test/asan/lit.cfg.py --- a/compiler-rt/test/asan/lit.cfg.py +++ b/compiler-rt/test/asan/lit.cfg.py @@ -99,11 +99,13 @@ clang_asan_static_cflags.append("-mbackchain") clang_asan_static_cxxflags = config.cxx_mode_flags + clang_asan_static_cflags +target_is_msvc = bool(re.match(r'.*-windows-msvc$', config.target_triple)) + asan_dynamic_flags = [] if config.asan_dynamic: asan_dynamic_flags = ["-shared-libasan"] - if platform.system() == 'Windows': - # On Windows, we need to simulate "clang-cl /MD" on the clang driver side. + if platform.system() == 'Windows' and target_is_msvc: + # On MSVC target, we need to simulate "clang-cl /MD" on the clang driver side. asan_dynamic_flags += ["-D_MT", "-D_DLL", "-Wl,-nodefaultlib:libcmt,-defaultlib:msvcrt,-defaultlib:oldnames"] elif platform.system() == 'FreeBSD': # On FreeBSD, we need to add -pthread to ensure pthread functions are available. @@ -144,8 +146,8 @@ config.substitutions.append( ("%clang_asan_static ", build_invocation(clang_asan_static_cflags)) ) config.substitutions.append( ("%clangxx_asan_static ", build_invocation(clang_asan_static_cxxflags)) ) -# Windows-specific tests might also use the clang-cl.exe driver. -if platform.system() == 'Windows': +# MSVC-specific tests might also use the clang-cl.exe driver. +if platform.system() == 'Windows' and target_is_msvc: clang_cl_cxxflags = ["-Wno-deprecated-declarations", "-WX", "-D_HAS_EXCEPTIONS=0", diff --git a/compiler-rt/test/lit.common.cfg.py b/compiler-rt/test/lit.common.cfg.py --- a/compiler-rt/test/lit.common.cfg.py +++ b/compiler-rt/test/lit.common.cfg.py @@ -102,17 +102,19 @@ if execute_external: config.available_features.add('shell') +target_is_msvc = bool(re.match(r'.*-windows-msvc$', config.target_triple)) + compiler_id = getattr(config, 'compiler_id', None) if compiler_id == "Clang": - if platform.system() != 'Windows': + if not (platform.system() == 'Windows' and target_is_msvc): config.cxx_mode_flags = ["--driver-mode=g++"] else: config.cxx_mode_flags = [] # We assume that sanitizers should provide good enough error # reports and stack traces even with minimal debug info. config.debug_info_flags = ["-gline-tables-only"] - if platform.system() == 'Windows': - # On Windows, use CodeView with column info instead of DWARF. Both VS and + if platform.system() == 'Windows' and target_is_msvc: + # On MSVC, use CodeView with column info instead of DWARF. Both VS and # windbg do not behave well when column info is enabled, but users have # requested it because it makes ASan reports more precise. config.debug_info_flags.append("-gcodeview") @@ -185,8 +187,8 @@ 'LIBCLANG_RESOURCE_USAGE', 'LIBCLANG_CODE_COMPLETION_LOGGING', 'XRAY_OPTIONS'] -# Clang/Win32 may refer to %INCLUDE%. vsvarsall.bat sets it. -if platform.system() != 'Windows': +# Clang/MSVC may refer to %INCLUDE%. vsvarsall.bat sets it. +if not (platform.system() == 'Windows' and target_is_msvc): possibly_dangerous_env_vars.append('INCLUDE') for name in possibly_dangerous_env_vars: if name in config.environment: @@ -200,7 +202,7 @@ # Help MSVS link.exe find the standard libraries. # Make sure we only try to use it when targetting Windows. -if platform.system() == 'Windows' and '-win' in config.target_triple: +if platform.system() == 'Windows' and target_is_msvc: config.environment['LIB'] = os.environ['LIB'] config.available_features.add(config.host_os.lower()) @@ -550,6 +552,8 @@ return True def is_windows_lto_supported(): + if not target_is_msvc: + return True return os.path.exists(os.path.join(config.llvm_tools_dir, 'lld-link.exe')) if config.host_os == 'Darwin' and is_darwin_lto_supported():