forked from OSchip/llvm-project
[AIX] Add %pluginext and update tests to use proper pluginext
As a follow on to D96282, since bug point passes is built as a module the proper file extension to use is LLVM_PLUGIN_EXT, rather than SHLIBEXT. Using SHLIBEXT causes the tests to load a non-existent file on AIX. We also adjust the PluginsTest unittest to use LLVM_PLUGIN_EXT for similar reasons. This change should hopefully make little difference to other platforms, since generally `SHLIBEXT=LTDL_SHLIB_EXT=CMAKE_SHARED_LIBRARY_SUFFIX` and `LLVM_PLUGIN_EXT=CMAKE_SHARED_LIBRARY_SUFFIX` on every platform except AIX. Reviewed By: hubert.reinterpretcast Differential Revision: https://reviews.llvm.org/D101412
This commit is contained in:
parent
cc1ae54ebc
commit
82d3c0759f
|
@ -1,4 +1,4 @@
|
|||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashfuncattr 2>&1 | FileCheck %s
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -bugpoint-crashfuncattr 2>&1 | FileCheck %s
|
||||
; REQUIRES: plugins
|
||||
;
|
||||
; ModuleID = 'attr-crash.ll'
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext --compile-custom --compile-command="%python %/s.py arg1 arg2" --output-prefix %t %s | FileCheck %s
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext --compile-custom --compile-command="%python %/s.py arg1 arg2" --output-prefix %t %s | FileCheck %s
|
||||
; REQUIRES: plugins
|
||||
|
||||
; Test that arguments are correctly passed in --compile-command. The output
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; 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
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -bugpoint-crashcalls -silence-passes > /dev/null
|
||||
; REQUIRES: plugins
|
||||
|
||||
define i32 @foo() { ret i32 1 }
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashfuncattr -silence-passes
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -bugpoint-crashfuncattr -silence-passes
|
||||
; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s
|
||||
; REQUIRES: plugins
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashfuncattr -silence-passes
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -bugpoint-crashfuncattr -silence-passes
|
||||
; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck -check-prefixes=ALL,ENABLED %s
|
||||
; RUN: bugpoint -disable-attribute-remove -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashfuncattr -silence-passes
|
||||
; RUN: bugpoint -disable-attribute-remove -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -bugpoint-crashfuncattr -silence-passes
|
||||
; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck -check-prefixes=ALL,DISABLED %s
|
||||
|
||||
; REQUIRES: plugins
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crash-too-many-cus -silence-passes 2>&1 | FileCheck %s
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -bugpoint-crash-too-many-cus -silence-passes 2>&1 | FileCheck %s
|
||||
; REQUIRES: plugins
|
||||
; CHECK: DICompileUnit not listed in llvm.dbg.cu
|
||||
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
; 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: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %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
|
||||
;
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t-nodebug -bugpoint-crashcalls -silence-passes -disable-namedmd-remove > /dev/null
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t-nodebug -bugpoint-crashcalls -silence-passes -disable-namedmd-remove > /dev/null
|
||||
; RUN: llvm-dis %t-nodebug-reduced-simplified.bc -o - | FileCheck %s --check-prefix=NODEBUG
|
||||
;
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t-notype -bugpoint-crashcalls -silence-passes -disable-namedmd-remove -disable-strip-debuginfo > /dev/null
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t-notype -bugpoint-crashcalls -silence-passes -disable-namedmd-remove -disable-strip-debuginfo > /dev/null
|
||||
; RUN: llvm-dis %t-notype-reduced-simplified.bc -o - | FileCheck %s --check-prefix=NOTYPE
|
||||
;
|
||||
; Bugpoint can drop the metadata on the call, as it does not contrinute to the crash.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crash-too-many-cus -silence-passes -disable-strip-debuginfo > /dev/null
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -bugpoint-crash-too-many-cus -silence-passes -disable-strip-debuginfo > /dev/null
|
||||
; 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: bugpoint -disable-namedmd-remove -load %llvmshlibdir/BugpointPasses%pluginext %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: plugins
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -silence-passes
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -bugpoint-crashcalls -silence-passes
|
||||
; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s
|
||||
; REQUIRES: plugins
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; 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
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -replace-funcs-with-null -bugpoint-crash-decl-funcs -silence-passes -safe-run-llc
|
||||
; REQUIRES: plugins
|
||||
|
||||
@foo2 = alias i32 (), i32 ()* @foo
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
; REQUIRES: plugins
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t-notype -bugpoint-crashmetadata -silence-passes > /dev/null
|
||||
; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t-notype -bugpoint-crashmetadata -silence-passes > /dev/null
|
||||
; RUN: llvm-dis %t-notype-reduced-simplified.bc -o - | FileCheck %s
|
||||
;
|
||||
; Make sure BugPoint retains metadata contributing to a crash.
|
||||
|
|
|
@ -2,9 +2,9 @@
|
|||
; RUN: echo "import sys" > %t.py
|
||||
; RUN: echo "print('args = ' + str(sys.argv))" >> %t.py
|
||||
; RUN: echo "exit(1)" >> %t.py
|
||||
; RUN: not bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -opt-command=%python -opt-args %t.py | FileCheck %s
|
||||
; RUN: not --crash opt -enable-new-pm=0 -load %llvmshlibdir/BugpointPasses%shlibext %s -bugpoint-crashcalls -disable-symbolication 2>&1 | FileCheck --check-prefix=CRASH %s
|
||||
; RUN: not bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -opt-command=%t.non.existent.opt.binary -opt-args %t.py 2>&1 | FileCheck %s --check-prefix=BAD-OPT
|
||||
; RUN: not bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -bugpoint-crashcalls -opt-command=%python -opt-args %t.py | FileCheck %s
|
||||
; RUN: not --crash opt -enable-new-pm=0 -load %llvmshlibdir/BugpointPasses%pluginext %s -bugpoint-crashcalls -disable-symbolication 2>&1 | FileCheck --check-prefix=CRASH %s
|
||||
; RUN: not bugpoint -load %llvmshlibdir/BugpointPasses%pluginext %s -output-prefix %t -bugpoint-crashcalls -opt-command=%t.non.existent.opt.binary -opt-args %t.py 2>&1 | FileCheck %s --check-prefix=BAD-OPT
|
||||
|
||||
; Test that bugpoint disables symbolication on the opt tool to reduce runtime overhead when opt crashes
|
||||
; CHECK: args = {{.*}}'-disable-symbolication'
|
||||
|
|
|
@ -88,6 +88,7 @@ llvm_config.use_default_substitutions()
|
|||
# Add site-specific substitutions.
|
||||
config.substitutions.append(('%llvmshlibdir', config.llvm_shlib_dir))
|
||||
config.substitutions.append(('%shlibext', config.llvm_shlib_ext))
|
||||
config.substitutions.append(('%pluginext', config.llvm_plugin_ext))
|
||||
config.substitutions.append(('%exeext', config.llvm_exe_ext))
|
||||
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@ config.llvm_tools_dir = path(r"@LLVM_TOOLS_DIR@")
|
|||
config.llvm_lib_dir = path(r"@LLVM_LIBS_DIR@")
|
||||
config.llvm_shlib_dir = path(r"@SHLIBDIR@")
|
||||
config.llvm_shlib_ext = "@SHLIBEXT@"
|
||||
config.llvm_plugin_ext = "@LLVM_PLUGIN_EXT@"
|
||||
config.llvm_exe_ext = "@EXEEXT@"
|
||||
config.lit_tools_dir = path(r"@LLVM_LIT_TOOLS_DIR@")
|
||||
config.errc_messages = "@LLVM_LIT_ERRC_MESSAGES@"
|
||||
|
|
|
@ -33,7 +33,7 @@ static std::string LibPath(const std::string Name = "TestPlugin") {
|
|||
void *Ptr = (void *)(intptr_t)anchor;
|
||||
std::string Path = sys::fs::getMainExecutable(Argv0, Ptr);
|
||||
llvm::SmallString<256> Buf{sys::path::parent_path(Path)};
|
||||
sys::path::append(Buf, (Name + LTDL_SHLIB_EXT).c_str());
|
||||
sys::path::append(Buf, (Name + LLVM_PLUGIN_EXT).c_str());
|
||||
return std::string(Buf.str());
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue