From: Petr Hosek Date: Fri, 17 May 2019 06:41:04 +0000 (+0000) Subject: [Bugpoint] Only run plugins tests if plugins are enabled X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b5581c4d66b9c7b4c3e2f71c04ae46b058c5465d;p=llvm [Bugpoint] Only run plugins tests if plugins are enabled This is a followup to r360991 which applies the same logic to LLVM. Differential Revision: https://reviews.llvm.org/D62050 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@360993 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/BugPoint/compile-custom.ll b/test/BugPoint/compile-custom.ll index 847d1184f01..c892f822778 100644 --- a/test/BugPoint/compile-custom.ll +++ b/test/BugPoint/compile-custom.ll @@ -1,5 +1,5 @@ ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext --compile-custom --compile-command="%python %/s.py arg1 arg2" --output-prefix %t %s | FileCheck %s -; REQUIRES: loadable_module +; REQUIRES: plugins ; Test that arguments are correctly passed in --compile-command. The output ; of bugpoint includes the output of the custom tool, so we just echo the args diff --git a/test/BugPoint/crash-narrowfunctiontest.ll b/test/BugPoint/crash-narrowfunctiontest.ll index d080d9dd4b0..fbccfc3d32c 100644 --- a/test/BugPoint/crash-narrowfunctiontest.ll +++ b/test/BugPoint/crash-narrowfunctiontest.ll @@ -1,7 +1,7 @@ ; Test that bugpoint can narrow down the testcase to the important function ; ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -silence-passes > /dev/null -; REQUIRES: loadable_module +; REQUIRES: plugins define i32 @foo() { ret i32 1 } diff --git a/test/BugPoint/func-attrs-keyval.ll b/test/BugPoint/func-attrs-keyval.ll index 830d0964cde..aaf8541e50d 100644 --- a/test/BugPoint/func-attrs-keyval.ll +++ b/test/BugPoint/func-attrs-keyval.ll @@ -1,6 +1,6 @@ ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashfuncattr -silence-passes ; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s -; REQUIRES: loadable_module +; REQUIRES: plugins ; CHECK: f() #[[ATTRS:[0-9]+]] define void @f() #0 { diff --git a/test/BugPoint/func-attrs.ll b/test/BugPoint/func-attrs.ll index 3941e73c217..8f742ee93d5 100644 --- a/test/BugPoint/func-attrs.ll +++ b/test/BugPoint/func-attrs.ll @@ -1,6 +1,6 @@ ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashfuncattr -silence-passes ; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s -; REQUIRES: loadable_module +; REQUIRES: plugins ; CHECK: f() #[[ATTRS:[0-9]+]] define void @f() #0 { diff --git a/test/BugPoint/invalid-debuginfo.ll b/test/BugPoint/invalid-debuginfo.ll index 2005a13b675..9169984c088 100644 --- a/test/BugPoint/invalid-debuginfo.ll +++ b/test/BugPoint/invalid-debuginfo.ll @@ -1,5 +1,5 @@ ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crash-too-many-cus -silence-passes 2>&1 | FileCheck %s -; REQUIRES: loadable_module +; REQUIRES: plugins ; CHECK: DICompileUnit not listed in llvm.dbg.cu ; When bugpoint hacks at this testcase it will at one point create illegal IR diff --git a/test/BugPoint/metadata.ll b/test/BugPoint/metadata.ll index ac77b9e5a7d..a090bbde1de 100644 --- a/test/BugPoint/metadata.ll +++ b/test/BugPoint/metadata.ll @@ -1,4 +1,4 @@ -; REQUIRES: loadable_module +; REQUIRES: plugins ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -silence-passes -disable-namedmd-remove -disable-strip-debuginfo -disable-strip-debug-types > /dev/null ; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s ; diff --git a/test/BugPoint/named-md.ll b/test/BugPoint/named-md.ll index 1ed34435fbe..dbdb18e234a 100644 --- a/test/BugPoint/named-md.ll +++ b/test/BugPoint/named-md.ll @@ -2,7 +2,7 @@ ; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s ; RUN-DISABLE: bugpoint -disable-namedmd-remove -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crash-too-many-cus -silence-passes > /dev/null ; RUN-DISABLE: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s -; REQUIRES: loadable_module +; REQUIRES: plugins ; CHECK: !llvm.dbg.cu = !{![[FIRST:[0-9]+]], ![[SECOND:[0-9]+]]} ; CHECK-DISABLE: !llvm.dbg.cu = !{![[FIRST:[0-9]+]], ![[SECOND:[0-9]+]], diff --git a/test/BugPoint/remove_arguments_test.ll b/test/BugPoint/remove_arguments_test.ll index 72be4fe5593..904c91788ce 100644 --- a/test/BugPoint/remove_arguments_test.ll +++ b/test/BugPoint/remove_arguments_test.ll @@ -1,6 +1,6 @@ ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -silence-passes ; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s -; REQUIRES: loadable_module +; REQUIRES: plugins ; Test to make sure that arguments are removed from the function if they are ; unnecessary. And clean up any types that frees up too. diff --git a/test/BugPoint/replace-funcs-with-null.ll b/test/BugPoint/replace-funcs-with-null.ll index 622f9eb67a2..1de0d9e8e04 100644 --- a/test/BugPoint/replace-funcs-with-null.ll +++ b/test/BugPoint/replace-funcs-with-null.ll @@ -1,7 +1,7 @@ ; Test that bugpoint can reduce the set of functions by replacing them with null. ; ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -replace-funcs-with-null -bugpoint-crash-decl-funcs -silence-passes -safe-run-llc -; REQUIRES: loadable_module +; REQUIRES: plugins @foo2 = alias i32 (), i32 ()* @foo diff --git a/test/BugPoint/unsymbolized.ll b/test/BugPoint/unsymbolized.ll index da26b9dc480..d2060ddee16 100644 --- a/test/BugPoint/unsymbolized.ll +++ b/test/BugPoint/unsymbolized.ll @@ -1,4 +1,4 @@ -; REQUIRES: loadable_module +; REQUIRES: plugins ; RUN: echo "import sys" > %t.py ; RUN: echo "print('args = ' + str(sys.argv))" >> %t.py ; RUN: echo "exit(1)" >> %t.py diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 69f4c3688e0..f596602c826 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -13,6 +13,7 @@ llvm_canonicalize_cmake_booleans( LLVM_TOOL_LTO_BUILD LLVM_USE_INTEL_JITEVENTS LLVM_BUILD_EXAMPLES + LLVM_ENABLE_PLUGINS ) configure_lit_site_cfg( diff --git a/test/Feature/load_module.ll b/test/Feature/load_module.ll index 14c1153fa56..fa76c99883b 100644 --- a/test/Feature/load_module.ll +++ b/test/Feature/load_module.ll @@ -1,7 +1,7 @@ ; PR1318 ; RUN: opt < %s -load=%llvmshlibdir/LLVMHello%shlibext -hello \ ; RUN: -disable-output 2>&1 | grep Hello -; REQUIRES: loadable_module +; REQUIRES: plugins ; FIXME: On Cygming, it might fail without building LLVMHello manually. @junk = global i32 0 diff --git a/test/lit.cfg.py b/test/lit.cfg.py index 5a4b1e8579e..9228200048c 100644 --- a/test/lit.cfg.py +++ b/test/lit.cfg.py @@ -187,14 +187,8 @@ else: config.available_features.add('can-execute') # Loadable module -# FIXME: This should be supplied by Makefile or autoconf. -if sys.platform in ['win32', 'cygwin']: - loadable_module = (config.enable_shared == 1) -else: - loadable_module = True - -if loadable_module: - config.available_features.add('loadable_module') +if config.has_plugins: + config.available_features.add('plugins') # Static libraries are not built if BUILD_SHARED_LIBS is ON. if not config.build_shared_libs and not config.link_llvm_dylib: diff --git a/test/lit.site.cfg.py.in b/test/lit.site.cfg.py.in index ef3ae83369c..39096a80e7e 100644 --- a/test/lit.site.cfg.py.in +++ b/test/lit.site.cfg.py.in @@ -45,6 +45,7 @@ config.llvm_host_triple = '@LLVM_HOST_TRIPLE@' config.host_arch = "@HOST_ARCH@" config.have_opt_viewer_modules = @LLVM_HAVE_OPT_VIEWER_MODULES@ config.libcxx_used = @LLVM_LIBCXX_USED@ +config.has_plugins = @LLVM_ENABLE_PLUGINS@ # Support substitution of the tools_dir with user parameters. This is # used when we can't determine the tool dir at configuration time.