diff options
| author | Peter Collingbourne <peter@pcc.me.uk> | 2026-01-29 14:39:34 -0800 |
|---|---|---|
| committer | Peter Collingbourne <peter@pcc.me.uk> | 2026-01-29 14:39:34 -0800 |
| commit | 7b3f189a1369f9348c007730ddea953b1e68acb1 (patch) | |
| tree | 7db8969ee8a34a10b6c8ae033c939c9d653376f6 /offload/ci | |
| parent | f3d6dae13ae710323a2ddbaf87af71b1abcbfada (diff) | |
| parent | 0893b70ecfc4f4aca0a20a078476d191edc1e623 (diff) | |
| download | llvm-users/pcc/spr/codegen-introduce-machinefunctiongetpreferredalignment.zip llvm-users/pcc/spr/codegen-introduce-machinefunctiongetpreferredalignment.tar.gz llvm-users/pcc/spr/codegen-introduce-machinefunctiongetpreferredalignment.tar.bz2 | |
Created using spr 1.3.6-beta.1
Diffstat (limited to 'offload/ci')
| -rw-r--r-- | offload/ci/.gitignore | 1 | ||||
| -rwxr-xr-x | offload/ci/openmp-offload-amdgpu-clang-flang.py | 71 | ||||
| -rwxr-xr-x | offload/ci/openmp-offload-amdgpu-runtime.py | 60 |
3 files changed, 132 insertions, 0 deletions
diff --git a/offload/ci/.gitignore b/offload/ci/.gitignore new file mode 100644 index 0000000..f2198f0 --- /dev/null +++ b/offload/ci/.gitignore @@ -0,0 +1 @@ +/*.workdir diff --git a/offload/ci/openmp-offload-amdgpu-clang-flang.py b/offload/ci/openmp-offload-amdgpu-clang-flang.py new file mode 100755 index 0000000..f55ae02 --- /dev/null +++ b/offload/ci/openmp-offload-amdgpu-clang-flang.py @@ -0,0 +1,71 @@ +#! /usr/bin/env python3 +# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +# See https://llvm.org/LICENSE.txt for license information. +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + +import os +import sys + +# Adapt to location in source tree +llvmsrcroot = os.path.normpath(f"{__file__}/../../..") + +sys.path.insert(0, os.path.join(llvmsrcroot, ".ci/buildbot")) +import worker + +llvmbuilddir = "llvm.build" +llvminstalldir = "llvm.inst" + +with worker.run( + __file__, + llvmsrcroot, + clobberpaths=[llvmbuilddir, llvminstalldir], + workerjobs=64, +) as w: + with w.step("configure-openmp", halt_on_fail=True): + w.run_command( + [ + "cmake", + f"-S{w.in_llvmsrc('llvm')}", + f"-B{llvmbuilddir}", + "-GNinja", + "-DCMAKE_BUILD_TYPE=Release", + "-DLLVM_ENABLE_ASSERTIONS=ON", + f"-DLLVM_LIT_ARGS=-vv --show-unsupported --show-xfail -j {w.jobs} --time-tests --timeout 100", + f"-DCMAKE_INSTALL_PREFIX={w.in_workdir(llvminstalldir)}", + "-DCLANG_DEFAULT_LINKER=lld", + "-DLLVM_TARGETS_TO_BUILD=X86;AMDGPU", + "-DLLVM_ENABLE_ASSERTIONS=ON", + "-DCMAKE_C_COMPILER_LAUNCHER=ccache", + "-DCMAKE_CXX_COMPILER_LAUNCHER=ccache", + "-DFLANG_RUNTIME_F128_MATH_LIB=libquadmath", + "-DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON", + "-DCMAKE_CXX_STANDARD=17", + "-DBUILD_SHARED_LIBS=ON", + "-DLIBOMPTARGET_PLUGINS_TO_BUILD=amdgpu;host", + "-DRUNTIMES_amdgcn-amd-amdhsa_LLVM_ENABLE_RUNTIMES=compiler-rt;openmp", + "-DLLVM_RUNTIME_TARGETS=default;amdgcn-amd-amdhsa", + "-DCOMPILER_RT_BUILD_ORC=OFF", + "-DCOMPILER_RT_BUILD_XRAY=OFF", + "-DCOMPILER_RT_BUILD_MEMPROF=OFF", + "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF", + "-DCOMPILER_RT_BUILD_SANITIZERS=ON", + "-DLLVM_ENABLE_PROJECTS=clang;lld;mlir;flang;llvm", + "-DLLVM_ENABLE_RUNTIMES=flang-rt;offload;compiler-rt;openmp", + ] + ) + + with w.step("compile-openmp", halt_on_fail=True): + w.run_ninja(builddir=llvmbuilddir, ccache_stats=True) + + with w.step("test-openmp"): + w.run_ninja( + ["check-openmp"], add_env={"HSA_ENABLE_SDMA": "0"}, builddir=llvmbuilddir + ) + + with w.step("Add check check-offload"): + w.run_ninja( + ["check-offload"], add_env={"HSA_ENABLE_SDMA": "0"}, builddir=llvmbuilddir + ) + + with w.step("LLVM: Install", halt_on_fail=True): + w.run_ninja(["install"], builddir=llvmbuilddir) diff --git a/offload/ci/openmp-offload-amdgpu-runtime.py b/offload/ci/openmp-offload-amdgpu-runtime.py new file mode 100755 index 0000000..e93f54f --- /dev/null +++ b/offload/ci/openmp-offload-amdgpu-runtime.py @@ -0,0 +1,60 @@ +#! /usr/bin/env python3 +# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +# See https://llvm.org/LICENSE.txt for license information. +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + +import os +import sys + +# Adapt to location in source tree +llvmsrcroot = os.path.normpath(f"{__file__}/../../..") + +sys.path.insert(0, os.path.join(llvmsrcroot, ".ci/buildbot")) +import worker + +llvmbuilddir = "llvm.build" +llvminstalldir = "llvm.inst" + +with worker.run( + __file__, + llvmsrcroot, + clobberpaths=[llvmbuilddir, llvminstalldir], + workerjobs=32, +) as w: + with w.step("configure-openmp", halt_on_fail=True): + w.run_command( + [ + "cmake", + f"-S{w.in_llvmsrc('llvm')}", + f"-B{llvmbuilddir}", + "-GNinja", + "-DCMAKE_BUILD_TYPE=Release", + "-DLLVM_ENABLE_ASSERTIONS=ON", + f"-DLLVM_LIT_ARGS=-vv --show-unsupported --show-xfail -j {w.jobs} --time-tests --timeout 100", + f"-DCMAKE_INSTALL_PREFIX={w.in_workdir(llvminstalldir)}", + "-DCLANG_DEFAULT_LINKER=lld", + "-DLLVM_TARGETS_TO_BUILD=X86;AMDGPU", + "-DCMAKE_C_COMPILER_LAUNCHER=ccache", + "-DCMAKE_CXX_COMPILER_LAUNCHER=ccache", + "-DRUNTIMES_amdgcn-amd-amdhsa_LLVM_ENABLE_RUNTIMES=compiler-rt;openmp", + "-DLLVM_RUNTIME_TARGETS=default;amdgcn-amd-amdhsa", + "-DLLVM_ENABLE_PROJECTS=clang;lld;llvm", + "-DLLVM_ENABLE_RUNTIMES=offload;compiler-rt;openmp", + ] + ) + + with w.step("compile-openmp", halt_on_fail=True): + w.run_ninja(builddir=llvmbuilddir, ccache_stats=True) + + with w.step("test-openmp"): + w.run_ninja( + ["check-openmp"], add_env={"HSA_ENABLE_SDMA": "0"}, builddir=llvmbuilddir + ) + + with w.step("Add check check-offload"): + w.run_ninja( + ["check-offload"], add_env={"HSA_ENABLE_SDMA": "0"}, builddir=llvmbuilddir + ) + + with w.step("LLVM: Install", halt_on_fail=True): + w.run_ninja(["install"], builddir=llvmbuilddir) |
