From 03011797d679f2ac46af635f7a347ccee5df857c Mon Sep 17 00:00:00 2001 From: Davide Grohmann Date: Tue, 5 Aug 2025 13:02:03 +0200 Subject: [PATCH 1/4] [mlir][spv] Add mlir-spirv-tests CI to run for mlir-spv target tests This should execute also the MLIR SPIRV Target tests which require the SPIRV-Tools validation Signed-off-by: Davide Grohmann Change-Id: Ied323152e36b95d6f21ed7d4ce4f5f813f280f17 --- .github/workflows/mlir-spirv-tests.yml | 28 ++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .github/workflows/mlir-spirv-tests.yml diff --git a/.github/workflows/mlir-spirv-tests.yml b/.github/workflows/mlir-spirv-tests.yml new file mode 100644 index 0000000000000..7b962b36d6583 --- /dev/null +++ b/.github/workflows/mlir-spirv-tests.yml @@ -0,0 +1,28 @@ +name: MLIR SPIR-V Tests + +permissions: + contents: read + +on: + workflow_dispatch: + pull_request: + paths: + - 'mlir/test/Target/SPIRV/**' + - '.github/workflows/mlir-spirv-tests.yml' + +concurrency: + # Skip intermediate builds: always. + # Cancel intermediate builds: only if it is a pull request build. + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} + +jobs: + check_spirv: + if: github.repository_owner == 'llvm' + name: Test MLIR SPIR-V + uses: ./.github/workflows/llvm-project-tests.yml + with: + build_target: check-mlir + projects: mlir + extra_cmake_args: '-DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_INCLUDE_SPIRV_TOOLS_TESTS=ON' + os_list: '["ubuntu-24.04"]' From 58e0c07a944fa70f5aaf5217809486ad9720afea Mon Sep 17 00:00:00 2001 From: Davide Grohmann Date: Wed, 6 Aug 2025 16:15:45 +0200 Subject: [PATCH 2/4] Change LLVM_TARGETS_TO_BUILD from X86 to host Signed-off-by: Davide Grohmann Change-Id: I52a5fcf79aba2c272a2ac6a4dc2c393a02b398d9 --- .github/workflows/mlir-spirv-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mlir-spirv-tests.yml b/.github/workflows/mlir-spirv-tests.yml index 7b962b36d6583..0ebf2d5b80b62 100644 --- a/.github/workflows/mlir-spirv-tests.yml +++ b/.github/workflows/mlir-spirv-tests.yml @@ -24,5 +24,5 @@ jobs: with: build_target: check-mlir projects: mlir - extra_cmake_args: '-DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_INCLUDE_SPIRV_TOOLS_TESTS=ON' + extra_cmake_args: '-DLLVM_TARGETS_TO_BUILD="host" -DLLVM_INCLUDE_SPIRV_TOOLS_TESTS=ON' os_list: '["ubuntu-24.04"]' From 1ffc7587a48fabb7d83cfa83faa8fc4d7efd4b48 Mon Sep 17 00:00:00 2001 From: Davide Grohmann Date: Thu, 7 Aug 2025 09:45:36 +0200 Subject: [PATCH 3/4] Extend triggering paths - add SPIRV dialect definition and implementation - add serialization/deserialization implementation Signed-off-by: Davide Grohmann Change-Id: Ib63045fec041ba7a2d52b527589c30157ed56258 --- .github/workflows/mlir-spirv-tests.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/mlir-spirv-tests.yml b/.github/workflows/mlir-spirv-tests.yml index 0ebf2d5b80b62..66c44311bbbd9 100644 --- a/.github/workflows/mlir-spirv-tests.yml +++ b/.github/workflows/mlir-spirv-tests.yml @@ -7,6 +7,9 @@ on: workflow_dispatch: pull_request: paths: + - 'mlir/include/mlir/Dialect/SPIRV/**' + - 'mlir/lib/Dialect/SPIRV/**' + - 'mlir/lib/Target/SPIRV/**' - 'mlir/test/Target/SPIRV/**' - '.github/workflows/mlir-spirv-tests.yml' From d67c9180668c57dbf66384f9867adbd820da3944 Mon Sep 17 00:00:00 2001 From: Davide Grohmann Date: Thu, 7 Aug 2025 16:13:47 +0200 Subject: [PATCH 4/4] Add one more include path to tge trigger list Signed-off-by: Davide Grohmann Change-Id: I9919a359c8fbefbc5dd030f9a19c7a83fab12682 --- .github/workflows/mlir-spirv-tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/mlir-spirv-tests.yml b/.github/workflows/mlir-spirv-tests.yml index 66c44311bbbd9..48b6c69a61f50 100644 --- a/.github/workflows/mlir-spirv-tests.yml +++ b/.github/workflows/mlir-spirv-tests.yml @@ -9,6 +9,7 @@ on: paths: - 'mlir/include/mlir/Dialect/SPIRV/**' - 'mlir/lib/Dialect/SPIRV/**' + - 'mlir/include/mlir/Target/SPIRV/**' - 'mlir/lib/Target/SPIRV/**' - 'mlir/test/Target/SPIRV/**' - '.github/workflows/mlir-spirv-tests.yml'