mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-24 17:06:07 +00:00
This reverts commit 90ccf2187332ff900d46a58a27cb0353577d37cb. Fixes: https://github.com/llvm/llvm-project/issues/100212
This commit is contained in:
parent
53d33d3ba5
commit
030ee841a9
@ -1,75 +0,0 @@
|
||||
// Check various clang-linker-wrapper pass options after -offload-opt.
|
||||
|
||||
// REQUIRES: llvm-plugins, llvm-examples
|
||||
// REQUIRES: x86-registered-target
|
||||
// REQUIRES: amdgpu-registered-target
|
||||
|
||||
// https://github.com/llvm/llvm-project/issues/100212
|
||||
// XFAIL: *
|
||||
|
||||
// Setup.
|
||||
// RUN: mkdir -p %t
|
||||
// RUN: %clang -cc1 -emit-llvm-bc -o %t/host-x86_64-unknown-linux-gnu.bc \
|
||||
// RUN: -disable-O0-optnone -triple=x86_64-unknown-linux-gnu %s
|
||||
// RUN: %clang -cc1 -emit-llvm-bc -o %t/openmp-amdgcn-amd-amdhsa.bc \
|
||||
// RUN: -disable-O0-optnone -triple=amdgcn-amd-amdhsa %s
|
||||
// RUN: opt %t/openmp-amdgcn-amd-amdhsa.bc -o %t/openmp-amdgcn-amd-amdhsa.bc \
|
||||
// RUN: -passes=forceattrs -force-remove-attribute=f:noinline
|
||||
// RUN: clang-offload-packager -o %t/openmp-x86_64-unknown-linux-gnu.out \
|
||||
// RUN: --image=file=%t/openmp-amdgcn-amd-amdhsa.bc,arch=gfx90a,triple=amdgcn-amd-amdhsa
|
||||
// RUN: %clang -cc1 -S -o %t/host-x86_64-unknown-linux-gnu.s \
|
||||
// RUN: -fopenmp -fopenmp-targets=amdgcn-amd-amdhsa \
|
||||
// RUN: -fembed-offload-object=%t/openmp-x86_64-unknown-linux-gnu.out \
|
||||
// RUN: %t/host-x86_64-unknown-linux-gnu.bc
|
||||
// RUN: %clang -cc1as -o %t/host-x86_64-unknown-linux-gnu.o \
|
||||
// RUN: -triple x86_64-unknown-linux-gnu -filetype obj -target-cpu x86-64 \
|
||||
// RUN: %t/host-x86_64-unknown-linux-gnu.s
|
||||
|
||||
// Check plugin, -passes, and no remarks.
|
||||
// RUN: clang-linker-wrapper -o a.out --embed-bitcode \
|
||||
// RUN: --linker-path=/usr/bin/true %t/host-x86_64-unknown-linux-gnu.o \
|
||||
// RUN: %offload-opt-loadbye --offload-opt=-wave-goodbye \
|
||||
// RUN: --offload-opt=-passes="function(goodbye),module(inline)" 2>&1 | \
|
||||
// RUN: FileCheck -match-full-lines -check-prefixes=OUT %s
|
||||
|
||||
// Check plugin, -p, and remarks.
|
||||
// RUN: clang-linker-wrapper -o a.out --embed-bitcode \
|
||||
// RUN: --linker-path=/usr/bin/true %t/host-x86_64-unknown-linux-gnu.o \
|
||||
// RUN: %offload-opt-loadbye --offload-opt=-wave-goodbye \
|
||||
// RUN: --offload-opt=-p="function(goodbye),module(inline)" \
|
||||
// RUN: --offload-opt=-pass-remarks=inline \
|
||||
// RUN: --offload-opt=-pass-remarks-output=%t/remarks.yml \
|
||||
// RUN: --offload-opt=-pass-remarks-filter=inline \
|
||||
// RUN: --offload-opt=-pass-remarks-format=yaml 2>&1 | \
|
||||
// RUN: FileCheck -match-full-lines -check-prefixes=OUT,REM %s
|
||||
// RUN: FileCheck -input-file=%t/remarks.yml -match-full-lines \
|
||||
// RUN: -check-prefixes=YML %s
|
||||
|
||||
// Check handling of bad plugin.
|
||||
// RUN: not clang-linker-wrapper \
|
||||
// RUN: --offload-opt=-load-pass-plugin=%t/nonexistent.so 2>&1 | \
|
||||
// RUN: FileCheck -match-full-lines -check-prefixes=BAD-PLUGIN %s
|
||||
|
||||
// OUT-NOT: {{.}}
|
||||
// OUT: Bye: f
|
||||
// OUT-NEXT: Bye: test
|
||||
// REM-NEXT: remark: {{.*}} 'f' inlined into 'test' {{.*}}
|
||||
// OUT-NOT: {{.}}
|
||||
|
||||
// YML-NOT: {{.}}
|
||||
// YML: --- !Passed
|
||||
// YML-NEXT: Pass: inline
|
||||
// YML-NEXT: Name: Inlined
|
||||
// YML-NEXT: Function: test
|
||||
// YML-NEXT: Args:
|
||||
// YML: - Callee: f
|
||||
// YML: - Caller: test
|
||||
// YML: ...
|
||||
// YML-NOT: {{.}}
|
||||
|
||||
// BAD-PLUGIN-NOT: {{.}}
|
||||
// BAD-PLUGIN: {{.*}}Could not load library {{.*}}nonexistent.so{{.*}}
|
||||
// BAD-PLUGIN-NOT: {{.}}
|
||||
|
||||
void f() {}
|
||||
void test() { f(); }
|
@ -110,15 +110,6 @@ tools = [
|
||||
if config.clang_examples:
|
||||
config.available_features.add("examples")
|
||||
|
||||
if config.llvm_examples:
|
||||
config.available_features.add("llvm-examples")
|
||||
|
||||
if config.llvm_linked_bye_extension:
|
||||
config.substitutions.append(("%offload-opt-loadbye", ""))
|
||||
else:
|
||||
loadbye = f"-load-pass-plugin={config.llvm_shlib_dir}/Bye{config.llvm_shlib_ext}"
|
||||
config.substitutions.append(("%offload-opt-loadbye", f"--offload-opt={loadbye}"))
|
||||
|
||||
|
||||
def have_host_jit_feature_support(feature_name):
|
||||
clang_repl_exe = lit.util.which("clang-repl", config.clang_tools_dir)
|
||||
@ -223,9 +214,6 @@ config.substitutions.append(("%host_cxx", config.host_cxx))
|
||||
if config.has_plugins and config.llvm_plugin_ext:
|
||||
config.available_features.add("plugins")
|
||||
|
||||
if config.llvm_has_plugins and config.llvm_plugin_ext:
|
||||
config.available_features.add("llvm-plugins")
|
||||
|
||||
if config.clang_default_pie_on_linux:
|
||||
config.available_features.add("default-pie-on-linux")
|
||||
|
||||
|
@ -7,7 +7,6 @@ config.llvm_obj_root = path(r"@LLVM_BINARY_DIR@")
|
||||
config.llvm_tools_dir = lit_config.substitute(path(r"@LLVM_TOOLS_DIR@"))
|
||||
config.llvm_libs_dir = lit_config.substitute(path(r"@LLVM_LIBS_DIR@"))
|
||||
config.llvm_shlib_dir = lit_config.substitute(path(r"@SHLIBDIR@"))
|
||||
config.llvm_shlib_ext = "@SHLIBEXT@"
|
||||
config.llvm_plugin_ext = "@LLVM_PLUGIN_EXT@"
|
||||
config.lit_tools_dir = path(r"@LLVM_LIT_TOOLS_DIR@")
|
||||
config.errc_messages = "@LLVM_LIT_ERRC_MESSAGES@"
|
||||
@ -40,10 +39,7 @@ config.python_executable = "@Python3_EXECUTABLE@"
|
||||
config.use_z3_solver = lit_config.params.get('USE_Z3_SOLVER', "@USE_Z3_SOLVER@")
|
||||
config.has_plugins = @CLANG_PLUGIN_SUPPORT@
|
||||
config.clang_vendor_uti = "@CLANG_VENDOR_UTI@"
|
||||
config.llvm_examples = @LLVM_BUILD_EXAMPLES@
|
||||
config.llvm_linked_bye_extension = @LLVM_BYE_LINK_INTO_TOOLS@
|
||||
config.llvm_external_lit = path(r"@LLVM_EXTERNAL_LIT@")
|
||||
config.llvm_has_plugins = @LLVM_ENABLE_PLUGINS@
|
||||
config.standalone_build = @CLANG_BUILT_STANDALONE@
|
||||
config.ppc_linux_default_ieeelongdouble = @PPC_LINUX_DEFAULT_IEEELONGDOUBLE@
|
||||
config.have_llvm_driver = @LLVM_TOOL_LLVM_DRIVER_BUILD@
|
||||
|
Loading…
x
Reference in New Issue
Block a user