Remove 24 instances of 'REQUIRES: shell'
authorReid Kleckner <rnk@google.com>
Thu, 20 Oct 2016 23:11:45 +0000 (23:11 +0000)
committerReid Kleckner <rnk@google.com>
Thu, 20 Oct 2016 23:11:45 +0000 (23:11 +0000)
Tests fall into one of the following categories:

- The requirement was unnecessary

- Additional quoting was required for backslashes in paths (see "sed -e
  's/\\/\\\\/g'") in the sanitizer tests.

- OpenMP used 'REQUIRES: shell' as a proxy for the test failing on
  Windows. Those tests fail there reliably, so use XFAIL instead.

I tried not to remove shell requirements that were added to suppress
flaky test failures, but if I screwed up, we can add it back as needed.

llvm-svn: 284793

24 files changed:
clang/test/Analysis/plist-html-macros.c
clang/test/CodeGen/address-safety-attr.cpp
clang/test/CodeGen/asan-globals.cpp
clang/test/CodeGen/sanitize-init-order.cpp
clang/test/CodeGen/sanitize-thread-attr.cpp
clang/test/CodeGen/ubsan-blacklist.c
clang/test/Driver/fsanitize-blacklist.c
clang/test/Driver/rewrite-map-in-diagnostics.c
clang/test/Modules/ModuleDebugInfo.cpp
clang/test/Modules/ModuleDebugInfo.m
clang/test/Modules/dependency-dump-dependent-module.m
clang/test/Modules/empty.modulemap
clang/test/Modules/explicit-build-extra-files.cpp
clang/test/Modules/prune.m
clang/test/Modules/signal.m
clang/test/OpenMP/task_firstprivate_codegen.cpp
clang/test/OpenMP/task_private_codegen.cpp
clang/test/OpenMP/taskloop_firstprivate_codegen.cpp
clang/test/OpenMP/taskloop_lastprivate_codegen.cpp
clang/test/OpenMP/taskloop_private_codegen.cpp
clang/test/OpenMP/taskloop_simd_firstprivate_codegen.cpp
clang/test/OpenMP/taskloop_simd_lastprivate_codegen.cpp
clang/test/OpenMP/taskloop_simd_private_codegen.cpp
clang/test/PCH/debug-info-pch-path.c

index 954aab0..dbdbb30 100644 (file)
@@ -1,12 +1,11 @@
-// REQUIRES: shell
 // RUN: %clang_cc1 -analyze -analyzer-checker=core -verify %s
 // (sanity check)
 
 // RUN: rm -rf %t.dir
 // RUN: mkdir -p %t.dir
 // RUN: %clang_cc1 -analyze -analyzer-checker=core -analyzer-output=plist-html -o %t.dir/index.plist %s
-// RUN: ls %t.dir | grep \\.html | count 1
-// RUN: grep \\.html %t.dir/index.plist | count 1
+// RUN: ls %t.dir | grep '\.html' | count 1
+// RUN: grep '\.html' %t.dir/index.plist | count 1
 
 // This tests two things: that the two calls to null_deref below are coalesced
 // into a single bug by both the plist and HTML diagnostics, and that the plist
index 402d6ba..0038b34 100644 (file)
@@ -9,12 +9,11 @@ int DefinedInDifferentFile(int *a);
 // RUN: echo "fun:*BlacklistedFunction*" > %t.func.blacklist
 // RUN: %clang_cc1 -std=c++11 -triple x86_64-apple-darwin -emit-llvm -o - %s -include %t.extra-source.cpp -fsanitize=address -fsanitize-blacklist=%t.func.blacklist | FileCheck -check-prefix=BLFUNC %s
 
-// RUN: echo "src:%s" > %t.file.blacklist
+// The blacklist file uses regexps, so escape backslashes, which are common in
+// Windows paths.
+// RUN: echo "src:%s" | sed -e 's/\\/\\\\/g' > %t.file.blacklist
 // RUN: %clang_cc1 -std=c++11 -triple x86_64-apple-darwin -emit-llvm -o - %s -include %t.extra-source.cpp -fsanitize=address -fsanitize-blacklist=%t.file.blacklist | FileCheck -check-prefix=BLFILE %s
 
-// FIXME: %t.file.blacklist is like "src:x:\path\to\clang\test\CodeGen\address-safety-attr.cpp"
-// REQUIRES: shell
-
 // The sanitize_address attribute should be attached to functions
 // when AddressSanitizer is enabled, unless no_sanitize_address attribute
 // is present.
index b6a323f..93abb00 100644 (file)
@@ -1,9 +1,9 @@
 // RUN: echo "int extra_global;" > %t.extra-source.cpp
 // RUN: echo "global:*blacklisted_global*" > %t.blacklist
 // RUN: %clang_cc1 -include %t.extra-source.cpp -fsanitize=address -fsanitize-blacklist=%t.blacklist -emit-llvm -o - %s | FileCheck %s
-// RUN: echo "src:%s" > %t.blacklist-src
+// The blacklist file uses regexps, so Windows path backslashes.
+// RUN: echo "src:%s" | sed -e 's/\\/\\\\/g' > %t.blacklist-src
 // RUN: %clang_cc1 -include %t.extra-source.cpp -fsanitize=address -fsanitize-blacklist=%t.blacklist-src -emit-llvm -o - %s | FileCheck %s --check-prefix=BLACKLIST-SRC
-// REQUIRES: shell
 
 int global;
 int dyn_init_global = global;
index ee53f7b..894f75e 100644 (file)
@@ -1,12 +1,11 @@
 // RUN: %clang_cc1 -fsanitize=address -emit-llvm -o - %s | FileCheck %s
 
 // Test blacklist functionality.
-// RUN: echo "src:%s=init" > %t-file.blacklist
+// RUN: echo "src:%s=init" | sed -e 's/\\/\\\\/g' > %t-file.blacklist
 // RUN: echo "type:PODWithCtorAndDtor=init" > %t-type.blacklist
 // RUN: echo "type:NS::PODWithCtor=init" >> %t-type.blacklist
 // RUN: %clang_cc1 -fsanitize=address -fsanitize-blacklist=%t-file.blacklist -emit-llvm -o - %s | FileCheck %s --check-prefix=BLACKLIST
 // RUN: %clang_cc1 -fsanitize=address -fsanitize-blacklist=%t-type.blacklist -emit-llvm -o - %s | FileCheck %s --check-prefix=BLACKLIST
-// REQUIRES: shell
 
 struct PODStruct {
   int x;
index 46cab4d..cffe70a 100644 (file)
@@ -1,10 +1,8 @@
 // RUN: %clang_cc1 -triple x86_64-apple-darwin -emit-llvm -o - %s | FileCheck -check-prefix=WITHOUT %s
 // RUN: %clang_cc1 -triple x86_64-apple-darwin -emit-llvm -o - %s -fsanitize=thread | FileCheck -check-prefix=TSAN %s
-// RUN: echo "src:%s" > %t
+// RUN: echo "src:%s" | sed -e 's/\\/\\\\/g' > %t
 // RUN: %clang_cc1 -triple x86_64-apple-darwin -emit-llvm -o - %s -fsanitize=thread -fsanitize-blacklist=%t | FileCheck -check-prefix=BL %s
 
-// REQUIRES: shell
-
 // The sanitize_thread attribute should be attached to functions
 // when ThreadSanitizer is enabled, unless no_sanitize_thread attribute
 // is present.
index f6e3882..666003b 100644 (file)
@@ -1,13 +1,10 @@
 // Verify ubsan doesn't emit checks for blacklisted functions and files
 // RUN: echo "fun:hash" > %t-func.blacklist
-// RUN: echo "src:%s" > %t-file.blacklist
+// RUN: echo "src:%s" | sed -e 's/\\/\\\\/g' > %t-file.blacklist
 // RUN: %clang_cc1 -fsanitize=unsigned-integer-overflow -emit-llvm %s -o - | FileCheck %s --check-prefix=DEFAULT
 // RUN: %clang_cc1 -fsanitize=unsigned-integer-overflow -fsanitize-blacklist=%t-func.blacklist -emit-llvm %s -o - | FileCheck %s --check-prefix=FUNC
 // RUN: %clang_cc1 -fsanitize=unsigned-integer-overflow -fsanitize-blacklist=%t-file.blacklist -emit-llvm %s -o - | FileCheck %s --check-prefix=FILE
 
-// FIXME: %t-file.blacklist contains DOSish paths.
-// REQUIRES: shell
-
 unsigned i;
 
 // DEFAULT: @hash
index 9edbbaf..adf776f 100644 (file)
@@ -1,7 +1,7 @@
 // General blacklist usage.
 
 // PR12920
-// REQUIRES: clang-driver, shell
+// REQUIRES: clang-driver
 
 // Make sure we don't match the -NOT lines with the linker invocation.
 // Delimiters match the start of the cc1 and the start of the linker lines
index 4aea0ec..7c58115 100644 (file)
@@ -9,6 +9,3 @@
 // CHECK: note: diagnostic msg: {{.*}}rewrite.map
 
 // REQUIRES: crash-recovery
-
-// FIXME: This doesn't fail on "env clang". Investigating.
-// REQUIRES: shell
index 1bc0613..71b05e5 100644 (file)
@@ -1,7 +1,7 @@
 // Test that (the same) debug info is emitted for an Objective-C++
 // module and a C++ precompiled header.
 
-// REQUIRES: asserts, shell
+// REQUIRES: asserts
 
 // Modules:
 // RUN: rm -rf %t
index ce35c7c..d1a0e8d 100644 (file)
@@ -1,7 +1,7 @@
 // Test that debug info is emitted for an Objective-C module and
 // a precompiled header.
 
-// REQUIRES: asserts, shell
+// REQUIRES: asserts
 
 // Modules:
 // RUN: rm -rf %t
index df7f532..2430726 100644 (file)
@@ -14,9 +14,3 @@
 // VFS: 'name': "Sub2.h"
 
 @import AlsoDependsOnModule;
-
-// FIXME: This fails on win32 due to ERROR_FILENAME_EXCED_RANGE
-// if the working directory is too deep.
-// We should make Win32/Path.inc capable of long pathnames with '\\?\'.
-// For now, this is suppressed on win32.
-// REQUIRES: shell
index 0d17184..aa9eba6 100644 (file)
@@ -14,7 +14,6 @@
 // RUN: diff %t/base.pcm %t/check.pcm
 //
 // We expect an empty module to be less than 30KB (and at least 10K, for now).
-// REQUIRES: shell
 // RUN: wc -c %t/base.pcm | FileCheck --check-prefix=CHECK-SIZE %s
 // CHECK-SIZE: {{(^|[^0-9])[12][0-9][0-9][0-9][0-9]($|[^0-9])}}
 
index 6cec420..965aea1 100644 (file)
@@ -1,5 +1,3 @@
-// REQUIRES: shell
-//
 // RUN: rm -rf %t
 // RUN: mkdir %t
 // RUN: cd %t
index 6676407..58992f9 100644 (file)
@@ -5,9 +5,6 @@
 @import Module;
 #endif
 
-// We need 'touch' and 'find' for this test to work.
-// REQUIRES: shell
-
 // Clear out the module cache
 // RUN: rm -rf %t
 // Run Clang twice so we end up creating the timestamp file (the second time).
@@ -28,7 +25,7 @@
 // Set the DependsOnModule access time back more than four days.
 // This shouldn't prune anything, because the timestamp has been updated, so
 // the pruning mechanism won't fire.
-// RUN: find %t -name DependsOnModule*.pcm | xargs touch -a -t 201101010000
+// RUN: find %t -name DependsOnModule*.pcm | sed -e 's/\\/\//g' | xargs touch -a -t 201101010000
 // RUN: %clang_cc1 -fmodules -fimplicit-module-maps -F %S/Inputs -fmodules-cache-path=%t -fmodules -fmodules-prune-interval=172800 -fmodules-prune-after=345600 %s -verify
 // RUN: ls %t | grep modules.timestamp
 // RUN: ls -R %t | grep ^Module.*pcm
@@ -37,7 +34,7 @@
 // Set both timestamp and DependsOnModule.pcm back beyond the cutoff.
 // This should trigger pruning, which will remove DependsOnModule but not Module.
 // RUN: touch -m -a -t 201101010000 %t/modules.timestamp 
-// RUN: find %t -name DependsOnModule*.pcm | xargs touch -a -t 201101010000
+// RUN: find %t -name DependsOnModule*.pcm | sed -e 's/\\/\//g' | xargs touch -a -t 201101010000
 // RUN: %clang_cc1 -fmodules -fimplicit-module-maps -F %S/Inputs -fmodules-cache-path=%t -fmodules -fmodules-prune-interval=172800 -fmodules-prune-after=345600 %s -verify
 // RUN: ls %t | grep modules.timestamp
 // RUN: ls -R %t | grep ^Module.*pcm
index 37a3550..4d0885e 100644 (file)
@@ -1,4 +1,4 @@
-// REQUIRES: crash-recovery,shell
+// REQUIRES: crash-recovery
 // RUN: rm -rf %t
 
 // Crash building module.
index 0d8e1c4..b177293 100644 (file)
@@ -7,7 +7,7 @@
 // expected-no-diagnostics
 // REQUIRES: x86-registered-target
 // It doesn't pass on win32.
-// REQUIRES: shell
+// XFAIL: win32
 #ifndef ARRAY
 #ifndef HEADER
 #define HEADER
index 97155a7..2e2ae84 100644 (file)
@@ -7,7 +7,7 @@
 // expected-no-diagnostics
 // REQUIRES: x86-registered-target
 // It doesn't pass on win32. Investigating.
-// REQUIRES: shell
+// XFAIL: win32
 
 #ifndef ARRAY
 #ifndef HEADER
index 822a5c6..d6886e3 100644 (file)
@@ -7,7 +7,7 @@
 // expected-no-diagnostics
 // REQUIRES: x86-registered-target
 // It doesn't pass on win32.
-// REQUIRES: shell
+// XFAIL: win32
 #ifndef ARRAY
 #ifndef HEADER
 #define HEADER
index 8414b6f..c8293eb 100644 (file)
@@ -7,7 +7,7 @@
 // expected-no-diagnostics
 // REQUIRES: x86-registered-target
 // It doesn't pass on win32.
-// REQUIRES: shell
+// XFAIL: win32
 #ifndef ARRAY
 #ifndef HEADER
 #define HEADER
index 38b20c5..630a5c1 100644 (file)
@@ -7,7 +7,7 @@
 // expected-no-diagnostics
 // REQUIRES: x86-registered-target
 // It doesn't pass on win32. Investigating.
-// REQUIRES: shell
+// XFAIL: win32
 
 #ifndef ARRAY
 #ifndef HEADER
index 0b87ddd..01a4f28 100644 (file)
@@ -7,7 +7,7 @@
 // expected-no-diagnostics
 // REQUIRES: x86-registered-target
 // It doesn't pass on win32.
-// REQUIRES: shell
+// XFAIL: win32
 #ifndef ARRAY
 #ifndef HEADER
 #define HEADER
index e3562a8..856285d 100644 (file)
@@ -6,8 +6,8 @@
 // RUN: %clang_cc1 -verify -fopenmp -x c++ -std=c++11 -DARRAY -triple x86_64-apple-darwin10 -emit-llvm %s -o - | FileCheck -check-prefix=ARRAY %s
 // expected-no-diagnostics
 // REQUIRES: x86-registered-target
-// It doesn't pass on win32.
-// REQUIRES: shell
+// XFAIL: win32
+
 #ifndef ARRAY
 #ifndef HEADER
 #define HEADER
index 557601e..985a2b5 100644 (file)
@@ -7,7 +7,7 @@
 // expected-no-diagnostics
 // REQUIRES: x86-registered-target
 // It doesn't pass on win32. Investigating.
-// REQUIRES: shell
+// XFAIL: win32
 
 #ifndef ARRAY
 #ifndef HEADER
index 402d44d..015086f 100644 (file)
@@ -1,5 +1,3 @@
-// REQUIRES: shell
-//
 // RUN: rm -rf %t
 // RUN: mkdir %t
 // RUN: cd %t