Index: lib/asan/asan_interceptors.cc =================================================================== --- lib/asan/asan_interceptors.cc +++ lib/asan/asan_interceptors.cc @@ -399,7 +399,7 @@ } \ ENSURE_ASAN_INITED(); \ if (flags()->replace_intrin) { \ - if (to != from) { \ + if (PLATFORM_HAS_DIFFERENT_MEMCPY_AND_MEMMOVE && to != from) { \ CHECK_RANGES_OVERLAP("memcpy", to, size, from, size); \ } \ ASAN_READ_RANGE(ctx, from, size); \ Index: test/asan/TestCases/coverage-order-pcs.cc =================================================================== --- test/asan/TestCases/coverage-order-pcs.cc +++ test/asan/TestCases/coverage-order-pcs.cc @@ -20,7 +20,7 @@ // RUN: rm -rf $DIR // Ordering works only in 64-bit mode for now. // REQUIRES: asan-64-bits -// UNSUPPORTED: android +// UNSUPPORTED: android, win32 #include void foo() { fprintf(stderr, "FOO\n"); } Index: test/asan/TestCases/coverage-tracing.cc =================================================================== --- test/asan/TestCases/coverage-tracing.cc +++ test/asan/TestCases/coverage-tracing.cc @@ -25,7 +25,7 @@ // RUN: rm -rf %T/coverage-tracing // // REQUIRES: asan-64-bits -// UNSUPPORTED: android +// UNSUPPORTED: android, win32 #include volatile int sink; Index: test/asan/TestCases/no_asan_gen_globals.c =================================================================== --- test/asan/TestCases/no_asan_gen_globals.c +++ test/asan/TestCases/no_asan_gen_globals.c @@ -2,7 +2,7 @@ // XFAIL: android // FIXME: http://llvm.org/bugs/show_bug.cgi?id=22682 // REQUIRES: asan-64-bits -// +// UNSUPPORTED: win32 // Make sure __asan_gen_* strings do not end up in the symbol table. // RUN: %clang_asan %s -o %t.exe