name: SPIR-V Tests
permissions:
contents: read
on:
pull_request:
paths:
- 'llvm/lib/Target/SPIRV/**'
- 'llvm/test/CodeGen/SPIRV/**'
- '.github/workflows/spirv-tests.yml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
jobs:
check_spirv:
if: github.repository_owner == 'llvm'
name: Test SPIR-V
runs-on: ubuntu-24.04
container:
image: ghcr.io/llvm/ci-ubuntu-24.04:latest
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3
- name: Setup ccache
uses: hendrikmuhs/ccache-action@bfa03e1de4d7f7c3e80ad9109feedd05c4f5a716
with:
max-size: 2G
key: spirv-ubuntu-24.04
variant: sccache
- name: Build and Test
run: |
mkdir build
cmake -GNinja \
-S llvm \
-B build \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_ENABLE_ASSERTIONS=ON \
-DCMAKE_C_COMPILER_LAUNCHER=sccache \
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache \
-DLLVM_TARGETS_TO_BUILD="SPIRV" \
-DLLVM_INCLUDE_SPIRV_TOOLS_TESTS=ON
ninja -C build check-llvm-codegen-spirv