From 1ba7dd607059ea8a69618c1d7a5fe9b6a2dc8fd2 Mon Sep 17 00:00:00 2001 From: "Klochkov, Denis" Date: Wed, 21 Oct 2026 21:02:07 +0200 Subject: [PATCH 1/7] [SYCL][E2E] add local config to reenable atomic tests --- sycl/test-e2e/AtomicRef/add.cpp | 6 +----- sycl/test-e2e/AtomicRef/add_generic.cpp | 6 +----- sycl/test-e2e/AtomicRef/add_generic_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/add_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/and.cpp | 6 +----- sycl/test-e2e/AtomicRef/and_generic.cpp | 6 +----- sycl/test-e2e/AtomicRef/and_generic_local.cpp | 5 +---- sycl/test-e2e/AtomicRef/and_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/atomic_ref.cpp | 6 +----- sycl/test-e2e/AtomicRef/compare_exchange.cpp | 6 +----- .../AtomicRef/compare_exchange_generic.cpp | 6 +----- .../compare_exchange_generic_local.cpp | 6 +----- .../AtomicRef/compare_exchange_local.cpp | 6 +----- .../device_has_aspect_atomic16_level_zero.cpp | 4 ++-- sycl/test-e2e/AtomicRef/exchange.cpp | 6 +----- sycl/test-e2e/AtomicRef/exchange_generic.cpp | 6 +----- .../AtomicRef/exchange_generic_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/exchange_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/lit.local.cfg | 17 +++++++++++++++++ sycl/test-e2e/AtomicRef/load.cpp | 6 +----- sycl/test-e2e/AtomicRef/load_generic.cpp | 6 +----- sycl/test-e2e/AtomicRef/load_generic_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/load_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/max.cpp | 6 +----- sycl/test-e2e/AtomicRef/max_generic.cpp | 6 +----- sycl/test-e2e/AtomicRef/max_generic_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/max_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/min.cpp | 6 +----- sycl/test-e2e/AtomicRef/min_generic.cpp | 6 +----- sycl/test-e2e/AtomicRef/min_generic_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/min_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/or.cpp | 6 +----- sycl/test-e2e/AtomicRef/or_generic.cpp | 6 +----- sycl/test-e2e/AtomicRef/or_generic_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/or_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/store.cpp | 6 +----- sycl/test-e2e/AtomicRef/store_generic.cpp | 6 +----- sycl/test-e2e/AtomicRef/store_generic_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/store_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/sub.cpp | 6 +----- sycl/test-e2e/AtomicRef/sub_generic.cpp | 6 +----- sycl/test-e2e/AtomicRef/sub_generic_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/sub_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/xor.cpp | 6 +----- sycl/test-e2e/AtomicRef/xor_generic.cpp | 6 +----- sycl/test-e2e/AtomicRef/xor_generic_local.cpp | 6 +----- sycl/test-e2e/AtomicRef/xor_local.cpp | 6 +----- 47 files changed, 64 insertions(+), 226 deletions(-) create mode 100644 sycl/test-e2e/AtomicRef/lit.local.cfg diff --git a/sycl/test-e2e/AtomicRef/add.cpp b/sycl/test-e2e/AtomicRef/add.cpp index bdd65b26872b1..799d9aae3d989 100644 --- a/sycl/test-e2e/AtomicRef/add.cpp +++ b/sycl/test-e2e/AtomicRef/add.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "add.h" diff --git a/sycl/test-e2e/AtomicRef/add_generic.cpp b/sycl/test-e2e/AtomicRef/add_generic.cpp index b3d19ba658175..5b2ef6c01e834 100644 --- a/sycl/test-e2e/AtomicRef/add_generic.cpp +++ b/sycl/test-e2e/AtomicRef/add_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "add.h" diff --git a/sycl/test-e2e/AtomicRef/add_generic_local.cpp b/sycl/test-e2e/AtomicRef/add_generic_local.cpp index f8b603c299104..3b34ce0816456 100644 --- a/sycl/test-e2e/AtomicRef/add_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/add_generic_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/add_local.cpp b/sycl/test-e2e/AtomicRef/add_local.cpp index 691e0fe49c0d8..882cb69604e52 100644 --- a/sycl/test-e2e/AtomicRef/add_local.cpp +++ b/sycl/test-e2e/AtomicRef/add_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "add.h" diff --git a/sycl/test-e2e/AtomicRef/and.cpp b/sycl/test-e2e/AtomicRef/and.cpp index 14a14924a594a..9c1c3465bb5f7 100644 --- a/sycl/test-e2e/AtomicRef/and.cpp +++ b/sycl/test-e2e/AtomicRef/and.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "and.h" diff --git a/sycl/test-e2e/AtomicRef/and_generic.cpp b/sycl/test-e2e/AtomicRef/and_generic.cpp index 12ed3f41c07a7..1b3f54893b1d1 100644 --- a/sycl/test-e2e/AtomicRef/and_generic.cpp +++ b/sycl/test-e2e/AtomicRef/and_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "and.h" diff --git a/sycl/test-e2e/AtomicRef/and_generic_local.cpp b/sycl/test-e2e/AtomicRef/and_generic_local.cpp index d7aba1b38ddca..06268d1090b59 100644 --- a/sycl/test-e2e/AtomicRef/and_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/and_generic_local.cpp @@ -1,10 +1,7 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/and_local.cpp b/sycl/test-e2e/AtomicRef/and_local.cpp index 44c82cce8e71a..abadf268dba8e 100644 --- a/sycl/test-e2e/AtomicRef/and_local.cpp +++ b/sycl/test-e2e/AtomicRef/and_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "and.h" diff --git a/sycl/test-e2e/AtomicRef/atomic_ref.cpp b/sycl/test-e2e/AtomicRef/atomic_ref.cpp index e00fc2692ebcb..45a2239c8d644 100644 --- a/sycl/test-e2e/AtomicRef/atomic_ref.cpp +++ b/sycl/test-e2e/AtomicRef/atomic_ref.cpp @@ -1,8 +1,4 @@ -// REQUIRES: arch-intel_gpu_cri -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend diff --git a/sycl/test-e2e/AtomicRef/compare_exchange.cpp b/sycl/test-e2e/AtomicRef/compare_exchange.cpp index 87b30c5a2f88b..3b98b13ce4c02 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "compare_exchange.h" diff --git a/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp b/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp index 90655c0bb5ee4..7d75852ae55f0 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "compare_exchange.h" diff --git a/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp b/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp index e1e900bd7c8f9..73ea29d56b1e2 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp b/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp index 72e94927f2aeb..1b185cd3ebcbc 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "compare_exchange.h" diff --git a/sycl/test-e2e/AtomicRef/device_has_aspect_atomic16_level_zero.cpp b/sycl/test-e2e/AtomicRef/device_has_aspect_atomic16_level_zero.cpp index 0ccbaa494eb00..f6f368e17589e 100644 --- a/sycl/test-e2e/AtomicRef/device_has_aspect_atomic16_level_zero.cpp +++ b/sycl/test-e2e/AtomicRef/device_has_aspect_atomic16_level_zero.cpp @@ -1,5 +1,5 @@ -// REQUIRES: level_zero, level_zero_dev_kit, arch-intel_gpu_cri -// RUN: %{build} -o %t.out %level_zero_options +// REQUIRES: level_zero, level_zero_dev_kit +// RUN: %{build_atomic} -o %t.out %level_zero_options // RUN: %{run} %t.out #include diff --git a/sycl/test-e2e/AtomicRef/exchange.cpp b/sycl/test-e2e/AtomicRef/exchange.cpp index e5ce8d2fb719b..cb82c18117433 100644 --- a/sycl/test-e2e/AtomicRef/exchange.cpp +++ b/sycl/test-e2e/AtomicRef/exchange.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out // UNSUPPORTED: hip diff --git a/sycl/test-e2e/AtomicRef/exchange_generic.cpp b/sycl/test-e2e/AtomicRef/exchange_generic.cpp index bb736bace6239..493030dd2e8d5 100644 --- a/sycl/test-e2e/AtomicRef/exchange_generic.cpp +++ b/sycl/test-e2e/AtomicRef/exchange_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "exchange.h" diff --git a/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp b/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp index 74a8015ffce6e..994ec8586d96f 100644 --- a/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/exchange_local.cpp b/sycl/test-e2e/AtomicRef/exchange_local.cpp index 3e07cf47aea1f..4b2de29810576 100644 --- a/sycl/test-e2e/AtomicRef/exchange_local.cpp +++ b/sycl/test-e2e/AtomicRef/exchange_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "exchange.h" diff --git a/sycl/test-e2e/AtomicRef/lit.local.cfg b/sycl/test-e2e/AtomicRef/lit.local.cfg new file mode 100644 index 0000000000000..bb3054097fb55 --- /dev/null +++ b/sycl/test-e2e/AtomicRef/lit.local.cfg @@ -0,0 +1,17 @@ +# %{build_atomic} is %{build} with the extra flags needed for full atomic +# coverage (16/32/64-bit) when the tests are run on a CRI device; on any other +# target it is plain %{build}. +cri_build_flags = ( + "-DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE " + "-fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 " + "-spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics" +) + +is_cri = any( + "arch-intel_gpu_cri" in features + for features in config.sycl_dev_features.values() +) + +config.substitutions.append( + ("%{build_atomic}", "%{build} " + cri_build_flags if is_cri else "%{build}") +) diff --git a/sycl/test-e2e/AtomicRef/load.cpp b/sycl/test-e2e/AtomicRef/load.cpp index d5d1791ef891a..9e65ed2ebc9f1 100644 --- a/sycl/test-e2e/AtomicRef/load.cpp +++ b/sycl/test-e2e/AtomicRef/load.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "load.h" diff --git a/sycl/test-e2e/AtomicRef/load_generic.cpp b/sycl/test-e2e/AtomicRef/load_generic.cpp index e0f378f09c00d..44dd0ec8c97ba 100644 --- a/sycl/test-e2e/AtomicRef/load_generic.cpp +++ b/sycl/test-e2e/AtomicRef/load_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "load.h" diff --git a/sycl/test-e2e/AtomicRef/load_generic_local.cpp b/sycl/test-e2e/AtomicRef/load_generic_local.cpp index 831058387a311..98b7a77d14c7e 100644 --- a/sycl/test-e2e/AtomicRef/load_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/load_generic_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/load_local.cpp b/sycl/test-e2e/AtomicRef/load_local.cpp index 961f93c4894ff..c0b78a726da18 100644 --- a/sycl/test-e2e/AtomicRef/load_local.cpp +++ b/sycl/test-e2e/AtomicRef/load_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out // UNSUPPORTED: windows && arch-intel_gpu_bmg_g21 diff --git a/sycl/test-e2e/AtomicRef/max.cpp b/sycl/test-e2e/AtomicRef/max.cpp index 0ef69b134b7d7..0e1dd62cd3dee 100644 --- a/sycl/test-e2e/AtomicRef/max.cpp +++ b/sycl/test-e2e/AtomicRef/max.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "max.h" diff --git a/sycl/test-e2e/AtomicRef/max_generic.cpp b/sycl/test-e2e/AtomicRef/max_generic.cpp index 0e136891054b2..624bf72bbc539 100644 --- a/sycl/test-e2e/AtomicRef/max_generic.cpp +++ b/sycl/test-e2e/AtomicRef/max_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "max.h" diff --git a/sycl/test-e2e/AtomicRef/max_generic_local.cpp b/sycl/test-e2e/AtomicRef/max_generic_local.cpp index 2cc485b932d25..00da8cf95df65 100644 --- a/sycl/test-e2e/AtomicRef/max_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/max_generic_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/max_local.cpp b/sycl/test-e2e/AtomicRef/max_local.cpp index fcade87949638..1e5e2470700d1 100644 --- a/sycl/test-e2e/AtomicRef/max_local.cpp +++ b/sycl/test-e2e/AtomicRef/max_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "max.h" diff --git a/sycl/test-e2e/AtomicRef/min.cpp b/sycl/test-e2e/AtomicRef/min.cpp index 05c810d89445c..62d787f5204b6 100644 --- a/sycl/test-e2e/AtomicRef/min.cpp +++ b/sycl/test-e2e/AtomicRef/min.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "min.h" diff --git a/sycl/test-e2e/AtomicRef/min_generic.cpp b/sycl/test-e2e/AtomicRef/min_generic.cpp index a0d12e4182976..f4803bf4cd4d5 100644 --- a/sycl/test-e2e/AtomicRef/min_generic.cpp +++ b/sycl/test-e2e/AtomicRef/min_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "min.h" diff --git a/sycl/test-e2e/AtomicRef/min_generic_local.cpp b/sycl/test-e2e/AtomicRef/min_generic_local.cpp index ebba739ba5a1b..027088e85b32e 100644 --- a/sycl/test-e2e/AtomicRef/min_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/min_generic_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/min_local.cpp b/sycl/test-e2e/AtomicRef/min_local.cpp index 8971afe425978..0d1cd5d3183bc 100644 --- a/sycl/test-e2e/AtomicRef/min_local.cpp +++ b/sycl/test-e2e/AtomicRef/min_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "min.h" diff --git a/sycl/test-e2e/AtomicRef/or.cpp b/sycl/test-e2e/AtomicRef/or.cpp index 5e5af73ed21c9..4a1434c64d125 100644 --- a/sycl/test-e2e/AtomicRef/or.cpp +++ b/sycl/test-e2e/AtomicRef/or.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "or.h" diff --git a/sycl/test-e2e/AtomicRef/or_generic.cpp b/sycl/test-e2e/AtomicRef/or_generic.cpp index fea2076530d18..954a0ccda5011 100644 --- a/sycl/test-e2e/AtomicRef/or_generic.cpp +++ b/sycl/test-e2e/AtomicRef/or_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "or.h" diff --git a/sycl/test-e2e/AtomicRef/or_generic_local.cpp b/sycl/test-e2e/AtomicRef/or_generic_local.cpp index c90258b55a96e..d01a70c3a655b 100644 --- a/sycl/test-e2e/AtomicRef/or_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/or_generic_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/or_local.cpp b/sycl/test-e2e/AtomicRef/or_local.cpp index fb10aaaf8ac28..eb113c06b9bc3 100644 --- a/sycl/test-e2e/AtomicRef/or_local.cpp +++ b/sycl/test-e2e/AtomicRef/or_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "or.h" diff --git a/sycl/test-e2e/AtomicRef/store.cpp b/sycl/test-e2e/AtomicRef/store.cpp index 9e0ada8d3fa3b..d0dcd0eb3eac6 100644 --- a/sycl/test-e2e/AtomicRef/store.cpp +++ b/sycl/test-e2e/AtomicRef/store.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "store.h" diff --git a/sycl/test-e2e/AtomicRef/store_generic.cpp b/sycl/test-e2e/AtomicRef/store_generic.cpp index 9586da411227b..a494965a90cfe 100644 --- a/sycl/test-e2e/AtomicRef/store_generic.cpp +++ b/sycl/test-e2e/AtomicRef/store_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "store.h" diff --git a/sycl/test-e2e/AtomicRef/store_generic_local.cpp b/sycl/test-e2e/AtomicRef/store_generic_local.cpp index 8f6c9bb99179c..017919d70c654 100644 --- a/sycl/test-e2e/AtomicRef/store_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/store_generic_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/store_local.cpp b/sycl/test-e2e/AtomicRef/store_local.cpp index bbbe89ffb05da..6411c305273f9 100644 --- a/sycl/test-e2e/AtomicRef/store_local.cpp +++ b/sycl/test-e2e/AtomicRef/store_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "store.h" diff --git a/sycl/test-e2e/AtomicRef/sub.cpp b/sycl/test-e2e/AtomicRef/sub.cpp index 058a79616a328..bb270c7bfea40 100644 --- a/sycl/test-e2e/AtomicRef/sub.cpp +++ b/sycl/test-e2e/AtomicRef/sub.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "sub.h" diff --git a/sycl/test-e2e/AtomicRef/sub_generic.cpp b/sycl/test-e2e/AtomicRef/sub_generic.cpp index 560a2efce5ff9..3c0b9c817a0df 100644 --- a/sycl/test-e2e/AtomicRef/sub_generic.cpp +++ b/sycl/test-e2e/AtomicRef/sub_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "sub.h" diff --git a/sycl/test-e2e/AtomicRef/sub_generic_local.cpp b/sycl/test-e2e/AtomicRef/sub_generic_local.cpp index dd2ecd064dec3..36ea9fb409951 100644 --- a/sycl/test-e2e/AtomicRef/sub_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/sub_generic_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out // UNSUPPORTED: windows && arch-intel_gpu_bmg_g21 diff --git a/sycl/test-e2e/AtomicRef/sub_local.cpp b/sycl/test-e2e/AtomicRef/sub_local.cpp index d8482a82dad2f..d00add3f56047 100644 --- a/sycl/test-e2e/AtomicRef/sub_local.cpp +++ b/sycl/test-e2e/AtomicRef/sub_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "sub.h" diff --git a/sycl/test-e2e/AtomicRef/xor.cpp b/sycl/test-e2e/AtomicRef/xor.cpp index 1ff5770ce4402..408324450f638 100644 --- a/sycl/test-e2e/AtomicRef/xor.cpp +++ b/sycl/test-e2e/AtomicRef/xor.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "xor.h" diff --git a/sycl/test-e2e/AtomicRef/xor_generic.cpp b/sycl/test-e2e/AtomicRef/xor_generic.cpp index 54e7e63fa789f..941ea389bcaca 100644 --- a/sycl/test-e2e/AtomicRef/xor_generic.cpp +++ b/sycl/test-e2e/AtomicRef/xor_generic.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "xor.h" diff --git a/sycl/test-e2e/AtomicRef/xor_generic_local.cpp b/sycl/test-e2e/AtomicRef/xor_generic_local.cpp index e362d66e95920..37f34136a98c4 100644 --- a/sycl/test-e2e/AtomicRef/xor_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/xor_generic_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/xor_local.cpp b/sycl/test-e2e/AtomicRef/xor_local.cpp index 1b91bb86d67d7..78b341917bd37 100644 --- a/sycl/test-e2e/AtomicRef/xor_local.cpp +++ b/sycl/test-e2e/AtomicRef/xor_local.cpp @@ -1,10 +1,6 @@ -// REQUIRES: arch-intel_gpu_cri // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build} -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics -o %t.cri.out -// RUN: %{run} %t.cri.out - -// RUN: %{build} -o %t.out +// RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out #include "xor.h" From 1a072e8c18ce74299422278ae566e0f677bcefe1 Mon Sep 17 00:00:00 2001 From: "Klochkov, Denis" Date: Wed, 21 Oct 2026 21:53:24 +0200 Subject: [PATCH 2/7] [SYCL][E2E] do not run atomic ref 16 bit tests at all GPUs --- sycl/test-e2e/AtomicRef/atomic_ref.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/sycl/test-e2e/AtomicRef/atomic_ref.cpp b/sycl/test-e2e/AtomicRef/atomic_ref.cpp index 45a2239c8d644..654b88b6872ff 100644 --- a/sycl/test-e2e/AtomicRef/atomic_ref.cpp +++ b/sycl/test-e2e/AtomicRef/atomic_ref.cpp @@ -1,3 +1,4 @@ +// REQUIRES: arch-intel_gpu_cri // RUN: %{build_atomic} -o %t.out // RUN: %{run} %t.out From 84b6fdc94dc2ba885a903fddff77f251ec0819b3 Mon Sep 17 00:00:00 2001 From: "Klochkov, Denis" Date: Wed, 21 Oct 2026 22:32:20 +0200 Subject: [PATCH 3/7] [SYCL][E2E] fix build-only and run-only modes --- sycl/test-e2e/AtomicRef/add.cpp | 5 ++-- sycl/test-e2e/AtomicRef/add_generic.cpp | 5 ++-- sycl/test-e2e/AtomicRef/add_generic_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/add_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/and.cpp | 5 ++-- sycl/test-e2e/AtomicRef/and_generic.cpp | 5 ++-- sycl/test-e2e/AtomicRef/and_generic_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/and_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/atomic_ref.cpp | 2 +- sycl/test-e2e/AtomicRef/compare_exchange.cpp | 5 ++-- .../AtomicRef/compare_exchange_generic.cpp | 5 ++-- .../compare_exchange_generic_local.cpp | 5 ++-- .../AtomicRef/compare_exchange_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/exchange.cpp | 5 ++-- sycl/test-e2e/AtomicRef/exchange_generic.cpp | 5 ++-- .../AtomicRef/exchange_generic_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/exchange_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/lit.local.cfg | 26 ++++++++----------- sycl/test-e2e/AtomicRef/load.cpp | 5 ++-- sycl/test-e2e/AtomicRef/load_generic.cpp | 5 ++-- .../test-e2e/AtomicRef/load_generic_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/load_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/max.cpp | 5 ++-- sycl/test-e2e/AtomicRef/max_generic.cpp | 5 ++-- sycl/test-e2e/AtomicRef/max_generic_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/max_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/min.cpp | 5 ++-- sycl/test-e2e/AtomicRef/min_generic.cpp | 5 ++-- sycl/test-e2e/AtomicRef/min_generic_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/min_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/or.cpp | 5 ++-- sycl/test-e2e/AtomicRef/or_generic.cpp | 5 ++-- sycl/test-e2e/AtomicRef/or_generic_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/or_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/store.cpp | 5 ++-- sycl/test-e2e/AtomicRef/store_generic.cpp | 5 ++-- .../AtomicRef/store_generic_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/store_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/sub.cpp | 5 ++-- sycl/test-e2e/AtomicRef/sub_generic.cpp | 5 ++-- sycl/test-e2e/AtomicRef/sub_generic_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/sub_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/xor.cpp | 5 ++-- sycl/test-e2e/AtomicRef/xor_generic.cpp | 5 ++-- sycl/test-e2e/AtomicRef/xor_generic_local.cpp | 5 ++-- sycl/test-e2e/AtomicRef/xor_local.cpp | 5 ++-- 46 files changed, 144 insertions(+), 104 deletions(-) diff --git a/sycl/test-e2e/AtomicRef/add.cpp b/sycl/test-e2e/AtomicRef/add.cpp index 799d9aae3d989..ff3a067c7b386 100644 --- a/sycl/test-e2e/AtomicRef/add.cpp +++ b/sycl/test-e2e/AtomicRef/add.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "add.h" diff --git a/sycl/test-e2e/AtomicRef/add_generic.cpp b/sycl/test-e2e/AtomicRef/add_generic.cpp index 5b2ef6c01e834..683ec0765b071 100644 --- a/sycl/test-e2e/AtomicRef/add_generic.cpp +++ b/sycl/test-e2e/AtomicRef/add_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "add.h" diff --git a/sycl/test-e2e/AtomicRef/add_generic_local.cpp b/sycl/test-e2e/AtomicRef/add_generic_local.cpp index 3b34ce0816456..940cc02ae1082 100644 --- a/sycl/test-e2e/AtomicRef/add_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/add_generic_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/add_local.cpp b/sycl/test-e2e/AtomicRef/add_local.cpp index 882cb69604e52..57df7d3fa0b77 100644 --- a/sycl/test-e2e/AtomicRef/add_local.cpp +++ b/sycl/test-e2e/AtomicRef/add_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "add.h" diff --git a/sycl/test-e2e/AtomicRef/and.cpp b/sycl/test-e2e/AtomicRef/and.cpp index 9c1c3465bb5f7..35ebfdb98592c 100644 --- a/sycl/test-e2e/AtomicRef/and.cpp +++ b/sycl/test-e2e/AtomicRef/and.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "and.h" diff --git a/sycl/test-e2e/AtomicRef/and_generic.cpp b/sycl/test-e2e/AtomicRef/and_generic.cpp index 1b3f54893b1d1..92925304eb67c 100644 --- a/sycl/test-e2e/AtomicRef/and_generic.cpp +++ b/sycl/test-e2e/AtomicRef/and_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "and.h" diff --git a/sycl/test-e2e/AtomicRef/and_generic_local.cpp b/sycl/test-e2e/AtomicRef/and_generic_local.cpp index 06268d1090b59..8bc2d6ca2aadf 100644 --- a/sycl/test-e2e/AtomicRef/and_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/and_generic_local.cpp @@ -1,8 +1,9 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/and_local.cpp b/sycl/test-e2e/AtomicRef/and_local.cpp index abadf268dba8e..ec3ded4bd246c 100644 --- a/sycl/test-e2e/AtomicRef/and_local.cpp +++ b/sycl/test-e2e/AtomicRef/and_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "and.h" diff --git a/sycl/test-e2e/AtomicRef/atomic_ref.cpp b/sycl/test-e2e/AtomicRef/atomic_ref.cpp index 654b88b6872ff..934c8558b07e0 100644 --- a/sycl/test-e2e/AtomicRef/atomic_ref.cpp +++ b/sycl/test-e2e/AtomicRef/atomic_ref.cpp @@ -1,5 +1,5 @@ // REQUIRES: arch-intel_gpu_cri -// RUN: %{build_atomic} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.out // RUN: %{run} %t.out // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend diff --git a/sycl/test-e2e/AtomicRef/compare_exchange.cpp b/sycl/test-e2e/AtomicRef/compare_exchange.cpp index 3b98b13ce4c02..176adb3449afe 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "compare_exchange.h" diff --git a/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp b/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp index 7d75852ae55f0..e0657bc7b79a5 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "compare_exchange.h" diff --git a/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp b/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp index 73ea29d56b1e2..21b036fb0b0de 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp b/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp index 1b185cd3ebcbc..061ae028d4b57 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "compare_exchange.h" diff --git a/sycl/test-e2e/AtomicRef/exchange.cpp b/sycl/test-e2e/AtomicRef/exchange.cpp index cb82c18117433..10be94ead34d9 100644 --- a/sycl/test-e2e/AtomicRef/exchange.cpp +++ b/sycl/test-e2e/AtomicRef/exchange.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} // UNSUPPORTED: hip // UNSUPPORTED-TRACKER: https://github.com/intel/llvm/issues/15791 diff --git a/sycl/test-e2e/AtomicRef/exchange_generic.cpp b/sycl/test-e2e/AtomicRef/exchange_generic.cpp index 493030dd2e8d5..dba419cff3640 100644 --- a/sycl/test-e2e/AtomicRef/exchange_generic.cpp +++ b/sycl/test-e2e/AtomicRef/exchange_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "exchange.h" diff --git a/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp b/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp index 994ec8586d96f..b232e4a548e9e 100644 --- a/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/exchange_local.cpp b/sycl/test-e2e/AtomicRef/exchange_local.cpp index 4b2de29810576..06e5aca74f30a 100644 --- a/sycl/test-e2e/AtomicRef/exchange_local.cpp +++ b/sycl/test-e2e/AtomicRef/exchange_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "exchange.h" diff --git a/sycl/test-e2e/AtomicRef/lit.local.cfg b/sycl/test-e2e/AtomicRef/lit.local.cfg index bb3054097fb55..3bd1829efba77 100644 --- a/sycl/test-e2e/AtomicRef/lit.local.cfg +++ b/sycl/test-e2e/AtomicRef/lit.local.cfg @@ -1,17 +1,13 @@ -# %{build_atomic} is %{build} with the extra flags needed for full atomic -# coverage (16/32/64-bit) when the tests are run on a CRI device; on any other -# target it is plain %{build}. -cri_build_flags = ( - "-DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -DFULL_ATOMIC64_COVERAGE " - "-fsycl-device-code-split=per_kernel -Xspirv-translator=spir64 " - "-spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics" -) - -is_cri = any( - "arch-intel_gpu_cri" in features - for features in config.sycl_dev_features.values() -) - +# %{full_atomic_flags} are the extra flags needed for full atomic coverage +# (16/32/64-bit) on CRI devices. Tests build a second binary with them +# unconditionally (per-device features are not available on build lines) and +# run it only on CRI devices, see e.g. max.cpp. config.substitutions.append( - ("%{build_atomic}", "%{build} " + cri_build_flags if is_cri else "%{build}") + ( + "%{full_atomic_flags}", + "-DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE " + "-DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel " + "-Xspirv-translator=spir64 " + "-spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics", + ) ) diff --git a/sycl/test-e2e/AtomicRef/load.cpp b/sycl/test-e2e/AtomicRef/load.cpp index 9e65ed2ebc9f1..0a2753d6e9613 100644 --- a/sycl/test-e2e/AtomicRef/load.cpp +++ b/sycl/test-e2e/AtomicRef/load.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "load.h" diff --git a/sycl/test-e2e/AtomicRef/load_generic.cpp b/sycl/test-e2e/AtomicRef/load_generic.cpp index 44dd0ec8c97ba..691b0052446dd 100644 --- a/sycl/test-e2e/AtomicRef/load_generic.cpp +++ b/sycl/test-e2e/AtomicRef/load_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "load.h" diff --git a/sycl/test-e2e/AtomicRef/load_generic_local.cpp b/sycl/test-e2e/AtomicRef/load_generic_local.cpp index 98b7a77d14c7e..0c4a1fa7a0e8d 100644 --- a/sycl/test-e2e/AtomicRef/load_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/load_generic_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/load_local.cpp b/sycl/test-e2e/AtomicRef/load_local.cpp index c0b78a726da18..f229e9baa548d 100644 --- a/sycl/test-e2e/AtomicRef/load_local.cpp +++ b/sycl/test-e2e/AtomicRef/load_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} // UNSUPPORTED: windows && arch-intel_gpu_bmg_g21 // UNSUPPORTED-TRACKER: https://github.com/intel/llvm/issues/23415 diff --git a/sycl/test-e2e/AtomicRef/max.cpp b/sycl/test-e2e/AtomicRef/max.cpp index 0e1dd62cd3dee..f3fc16e0c288b 100644 --- a/sycl/test-e2e/AtomicRef/max.cpp +++ b/sycl/test-e2e/AtomicRef/max.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "max.h" diff --git a/sycl/test-e2e/AtomicRef/max_generic.cpp b/sycl/test-e2e/AtomicRef/max_generic.cpp index 624bf72bbc539..cf2025e63263d 100644 --- a/sycl/test-e2e/AtomicRef/max_generic.cpp +++ b/sycl/test-e2e/AtomicRef/max_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "max.h" diff --git a/sycl/test-e2e/AtomicRef/max_generic_local.cpp b/sycl/test-e2e/AtomicRef/max_generic_local.cpp index 00da8cf95df65..c27ec2e03f271 100644 --- a/sycl/test-e2e/AtomicRef/max_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/max_generic_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/max_local.cpp b/sycl/test-e2e/AtomicRef/max_local.cpp index 1e5e2470700d1..7ab9057010f9b 100644 --- a/sycl/test-e2e/AtomicRef/max_local.cpp +++ b/sycl/test-e2e/AtomicRef/max_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "max.h" diff --git a/sycl/test-e2e/AtomicRef/min.cpp b/sycl/test-e2e/AtomicRef/min.cpp index 62d787f5204b6..b4326dfa54191 100644 --- a/sycl/test-e2e/AtomicRef/min.cpp +++ b/sycl/test-e2e/AtomicRef/min.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "min.h" diff --git a/sycl/test-e2e/AtomicRef/min_generic.cpp b/sycl/test-e2e/AtomicRef/min_generic.cpp index f4803bf4cd4d5..c1d08a368a9f0 100644 --- a/sycl/test-e2e/AtomicRef/min_generic.cpp +++ b/sycl/test-e2e/AtomicRef/min_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "min.h" diff --git a/sycl/test-e2e/AtomicRef/min_generic_local.cpp b/sycl/test-e2e/AtomicRef/min_generic_local.cpp index 027088e85b32e..fc9a79c6e5675 100644 --- a/sycl/test-e2e/AtomicRef/min_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/min_generic_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/min_local.cpp b/sycl/test-e2e/AtomicRef/min_local.cpp index 0d1cd5d3183bc..6b1771d491fe8 100644 --- a/sycl/test-e2e/AtomicRef/min_local.cpp +++ b/sycl/test-e2e/AtomicRef/min_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "min.h" diff --git a/sycl/test-e2e/AtomicRef/or.cpp b/sycl/test-e2e/AtomicRef/or.cpp index 4a1434c64d125..9e6cdda09397c 100644 --- a/sycl/test-e2e/AtomicRef/or.cpp +++ b/sycl/test-e2e/AtomicRef/or.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "or.h" diff --git a/sycl/test-e2e/AtomicRef/or_generic.cpp b/sycl/test-e2e/AtomicRef/or_generic.cpp index 954a0ccda5011..f22289243df88 100644 --- a/sycl/test-e2e/AtomicRef/or_generic.cpp +++ b/sycl/test-e2e/AtomicRef/or_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "or.h" diff --git a/sycl/test-e2e/AtomicRef/or_generic_local.cpp b/sycl/test-e2e/AtomicRef/or_generic_local.cpp index d01a70c3a655b..cc85103a95acb 100644 --- a/sycl/test-e2e/AtomicRef/or_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/or_generic_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/or_local.cpp b/sycl/test-e2e/AtomicRef/or_local.cpp index eb113c06b9bc3..bdfb08fa08cf1 100644 --- a/sycl/test-e2e/AtomicRef/or_local.cpp +++ b/sycl/test-e2e/AtomicRef/or_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "or.h" diff --git a/sycl/test-e2e/AtomicRef/store.cpp b/sycl/test-e2e/AtomicRef/store.cpp index d0dcd0eb3eac6..1b9696dcc7665 100644 --- a/sycl/test-e2e/AtomicRef/store.cpp +++ b/sycl/test-e2e/AtomicRef/store.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "store.h" diff --git a/sycl/test-e2e/AtomicRef/store_generic.cpp b/sycl/test-e2e/AtomicRef/store_generic.cpp index a494965a90cfe..60a8331720a62 100644 --- a/sycl/test-e2e/AtomicRef/store_generic.cpp +++ b/sycl/test-e2e/AtomicRef/store_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "store.h" diff --git a/sycl/test-e2e/AtomicRef/store_generic_local.cpp b/sycl/test-e2e/AtomicRef/store_generic_local.cpp index 017919d70c654..67c045c15429c 100644 --- a/sycl/test-e2e/AtomicRef/store_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/store_generic_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/store_local.cpp b/sycl/test-e2e/AtomicRef/store_local.cpp index 6411c305273f9..3b8d4041ce3c0 100644 --- a/sycl/test-e2e/AtomicRef/store_local.cpp +++ b/sycl/test-e2e/AtomicRef/store_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "store.h" diff --git a/sycl/test-e2e/AtomicRef/sub.cpp b/sycl/test-e2e/AtomicRef/sub.cpp index bb270c7bfea40..26bd8c2cac542 100644 --- a/sycl/test-e2e/AtomicRef/sub.cpp +++ b/sycl/test-e2e/AtomicRef/sub.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "sub.h" diff --git a/sycl/test-e2e/AtomicRef/sub_generic.cpp b/sycl/test-e2e/AtomicRef/sub_generic.cpp index 3c0b9c817a0df..6ddce15f33526 100644 --- a/sycl/test-e2e/AtomicRef/sub_generic.cpp +++ b/sycl/test-e2e/AtomicRef/sub_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "sub.h" diff --git a/sycl/test-e2e/AtomicRef/sub_generic_local.cpp b/sycl/test-e2e/AtomicRef/sub_generic_local.cpp index 36ea9fb409951..4d279c93acfaa 100644 --- a/sycl/test-e2e/AtomicRef/sub_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/sub_generic_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} // UNSUPPORTED: windows && arch-intel_gpu_bmg_g21 // UNSUPPORTED-TRACKER: https://github.com/intel/llvm/issues/23416 diff --git a/sycl/test-e2e/AtomicRef/sub_local.cpp b/sycl/test-e2e/AtomicRef/sub_local.cpp index d00add3f56047..d79e0e100fd22 100644 --- a/sycl/test-e2e/AtomicRef/sub_local.cpp +++ b/sycl/test-e2e/AtomicRef/sub_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "sub.h" diff --git a/sycl/test-e2e/AtomicRef/xor.cpp b/sycl/test-e2e/AtomicRef/xor.cpp index 408324450f638..1016dcc2b944c 100644 --- a/sycl/test-e2e/AtomicRef/xor.cpp +++ b/sycl/test-e2e/AtomicRef/xor.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "xor.h" diff --git a/sycl/test-e2e/AtomicRef/xor_generic.cpp b/sycl/test-e2e/AtomicRef/xor_generic.cpp index 941ea389bcaca..faf17bc363f1d 100644 --- a/sycl/test-e2e/AtomicRef/xor_generic.cpp +++ b/sycl/test-e2e/AtomicRef/xor_generic.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "xor.h" diff --git a/sycl/test-e2e/AtomicRef/xor_generic_local.cpp b/sycl/test-e2e/AtomicRef/xor_generic_local.cpp index 37f34136a98c4..b81eb9d84f3ea 100644 --- a/sycl/test-e2e/AtomicRef/xor_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/xor_generic_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #define TEST_GENERIC_IN_LOCAL 1 diff --git a/sycl/test-e2e/AtomicRef/xor_local.cpp b/sycl/test-e2e/AtomicRef/xor_local.cpp index 78b341917bd37..19b797a9ad47f 100644 --- a/sycl/test-e2e/AtomicRef/xor_local.cpp +++ b/sycl/test-e2e/AtomicRef/xor_local.cpp @@ -1,7 +1,8 @@ // UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support -// RUN: %{build_atomic} -o %t.out -// RUN: %{run} %t.out +// RUN: %{build} -o %t.out +// RUN: %{build} %{full_atomic_flags} -o %t.cri.out +// RUN: %if arch-intel_gpu_cri %{ %{run} %t.cri.out %} %else %{ %{run} %t.out %} #include "xor.h" From 5058e568647f81a8066f02c00086ebc7ccd3430c Mon Sep 17 00:00:00 2001 From: "Klochkov, Denis" Date: Wed, 21 Oct 2026 22:57:11 +0200 Subject: [PATCH 4/7] [SYCL][E2E] fix atomic16 aspect test --- .../AtomicRef/device_has_aspect_atomic16_level_zero.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sycl/test-e2e/AtomicRef/device_has_aspect_atomic16_level_zero.cpp b/sycl/test-e2e/AtomicRef/device_has_aspect_atomic16_level_zero.cpp index f6f368e17589e..0ccbaa494eb00 100644 --- a/sycl/test-e2e/AtomicRef/device_has_aspect_atomic16_level_zero.cpp +++ b/sycl/test-e2e/AtomicRef/device_has_aspect_atomic16_level_zero.cpp @@ -1,5 +1,5 @@ -// REQUIRES: level_zero, level_zero_dev_kit -// RUN: %{build_atomic} -o %t.out %level_zero_options +// REQUIRES: level_zero, level_zero_dev_kit, arch-intel_gpu_cri +// RUN: %{build} -o %t.out %level_zero_options // RUN: %{run} %t.out #include From e0b1be38ffacc37318a79883050e5f4425f87a92 Mon Sep 17 00:00:00 2001 From: "Klochkov, Denis" Date: Thu, 22 Oct 2026 00:26:38 +0200 Subject: [PATCH 5/7] [SYCL][E2E] fix CI errors --- sycl/test-e2e/AtomicRef/add.cpp | 2 +- sycl/test-e2e/AtomicRef/add_generic.cpp | 2 +- sycl/test-e2e/AtomicRef/add_generic_local.cpp | 2 +- sycl/test-e2e/AtomicRef/add_local.cpp | 2 +- sycl/test-e2e/AtomicRef/and.cpp | 2 +- sycl/test-e2e/AtomicRef/and_generic.cpp | 2 +- sycl/test-e2e/AtomicRef/and_generic_local.cpp | 2 +- sycl/test-e2e/AtomicRef/and_local.cpp | 2 +- sycl/test-e2e/AtomicRef/atomic_ref.cpp | 2 +- sycl/test-e2e/AtomicRef/compare_exchange.cpp | 2 +- .../AtomicRef/compare_exchange_generic.cpp | 2 +- .../AtomicRef/compare_exchange_generic_local.cpp | 2 +- .../AtomicRef/compare_exchange_local.cpp | 2 +- sycl/test-e2e/AtomicRef/exchange.cpp | 2 +- sycl/test-e2e/AtomicRef/exchange_generic.cpp | 2 +- .../AtomicRef/exchange_generic_local.cpp | 2 +- sycl/test-e2e/AtomicRef/exchange_local.cpp | 2 +- sycl/test-e2e/AtomicRef/full_atomic_flags.cpp | 16 ++++++++++++++++ sycl/test-e2e/AtomicRef/lit.local.cfg | 5 +++-- sycl/test-e2e/AtomicRef/load.cpp | 2 +- sycl/test-e2e/AtomicRef/load_generic.cpp | 2 +- sycl/test-e2e/AtomicRef/load_generic_local.cpp | 2 +- sycl/test-e2e/AtomicRef/load_local.cpp | 2 +- sycl/test-e2e/AtomicRef/max.cpp | 2 +- sycl/test-e2e/AtomicRef/max_generic.cpp | 2 +- sycl/test-e2e/AtomicRef/max_generic_local.cpp | 2 +- sycl/test-e2e/AtomicRef/max_local.cpp | 2 +- sycl/test-e2e/AtomicRef/min.cpp | 2 +- sycl/test-e2e/AtomicRef/min_generic.cpp | 2 +- sycl/test-e2e/AtomicRef/min_generic_local.cpp | 2 +- sycl/test-e2e/AtomicRef/min_local.cpp | 2 +- sycl/test-e2e/AtomicRef/or.cpp | 2 +- sycl/test-e2e/AtomicRef/or_generic.cpp | 2 +- sycl/test-e2e/AtomicRef/or_generic_local.cpp | 2 +- sycl/test-e2e/AtomicRef/or_local.cpp | 2 +- sycl/test-e2e/AtomicRef/store.cpp | 2 +- sycl/test-e2e/AtomicRef/store_generic.cpp | 2 +- sycl/test-e2e/AtomicRef/store_generic_local.cpp | 2 +- sycl/test-e2e/AtomicRef/store_local.cpp | 2 +- sycl/test-e2e/AtomicRef/sub.cpp | 2 +- sycl/test-e2e/AtomicRef/sub_generic.cpp | 2 +- sycl/test-e2e/AtomicRef/sub_generic_local.cpp | 2 +- sycl/test-e2e/AtomicRef/sub_local.cpp | 2 +- sycl/test-e2e/AtomicRef/xor.cpp | 2 +- sycl/test-e2e/AtomicRef/xor_generic.cpp | 2 +- sycl/test-e2e/AtomicRef/xor_generic_local.cpp | 2 +- sycl/test-e2e/AtomicRef/xor_local.cpp | 2 +- 47 files changed, 64 insertions(+), 47 deletions(-) create mode 100644 sycl/test-e2e/AtomicRef/full_atomic_flags.cpp diff --git a/sycl/test-e2e/AtomicRef/add.cpp b/sycl/test-e2e/AtomicRef/add.cpp index ff3a067c7b386..7816ab91d8c5b 100644 --- a/sycl/test-e2e/AtomicRef/add.cpp +++ b/sycl/test-e2e/AtomicRef/add.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/add_generic.cpp b/sycl/test-e2e/AtomicRef/add_generic.cpp index 683ec0765b071..6de7f9082eaa0 100644 --- a/sycl/test-e2e/AtomicRef/add_generic.cpp +++ b/sycl/test-e2e/AtomicRef/add_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/add_generic_local.cpp b/sycl/test-e2e/AtomicRef/add_generic_local.cpp index 940cc02ae1082..19085e68eae25 100644 --- a/sycl/test-e2e/AtomicRef/add_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/add_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/add_local.cpp b/sycl/test-e2e/AtomicRef/add_local.cpp index 57df7d3fa0b77..167952bdd11b0 100644 --- a/sycl/test-e2e/AtomicRef/add_local.cpp +++ b/sycl/test-e2e/AtomicRef/add_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/and.cpp b/sycl/test-e2e/AtomicRef/and.cpp index 35ebfdb98592c..b01c79ada8a3d 100644 --- a/sycl/test-e2e/AtomicRef/and.cpp +++ b/sycl/test-e2e/AtomicRef/and.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/and_generic.cpp b/sycl/test-e2e/AtomicRef/and_generic.cpp index 92925304eb67c..c8e44d95ecba7 100644 --- a/sycl/test-e2e/AtomicRef/and_generic.cpp +++ b/sycl/test-e2e/AtomicRef/and_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/and_generic_local.cpp b/sycl/test-e2e/AtomicRef/and_generic_local.cpp index 8bc2d6ca2aadf..39ceecfcef078 100644 --- a/sycl/test-e2e/AtomicRef/and_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/and_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out diff --git a/sycl/test-e2e/AtomicRef/and_local.cpp b/sycl/test-e2e/AtomicRef/and_local.cpp index ec3ded4bd246c..41d4438d99c0e 100644 --- a/sycl/test-e2e/AtomicRef/and_local.cpp +++ b/sycl/test-e2e/AtomicRef/and_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/atomic_ref.cpp b/sycl/test-e2e/AtomicRef/atomic_ref.cpp index 934c8558b07e0..650470d76191e 100644 --- a/sycl/test-e2e/AtomicRef/atomic_ref.cpp +++ b/sycl/test-e2e/AtomicRef/atomic_ref.cpp @@ -2,7 +2,7 @@ // RUN: %{build} %{full_atomic_flags} -o %t.out // RUN: %{run} %t.out -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support #include diff --git a/sycl/test-e2e/AtomicRef/compare_exchange.cpp b/sycl/test-e2e/AtomicRef/compare_exchange.cpp index 176adb3449afe..508269cb721ca 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp b/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp index e0657bc7b79a5..d5121fd0f4ea2 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp b/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp index 21b036fb0b0de..14fa906aa2212 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp b/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp index 061ae028d4b57..5322bec1a7c38 100644 --- a/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp +++ b/sycl/test-e2e/AtomicRef/compare_exchange_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/exchange.cpp b/sycl/test-e2e/AtomicRef/exchange.cpp index 10be94ead34d9..6ebf687a8860f 100644 --- a/sycl/test-e2e/AtomicRef/exchange.cpp +++ b/sycl/test-e2e/AtomicRef/exchange.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/exchange_generic.cpp b/sycl/test-e2e/AtomicRef/exchange_generic.cpp index dba419cff3640..d5c8429e0b698 100644 --- a/sycl/test-e2e/AtomicRef/exchange_generic.cpp +++ b/sycl/test-e2e/AtomicRef/exchange_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp b/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp index b232e4a548e9e..a5e19cbfe252e 100644 --- a/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/exchange_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/exchange_local.cpp b/sycl/test-e2e/AtomicRef/exchange_local.cpp index 06e5aca74f30a..f4efd61cd45a0 100644 --- a/sycl/test-e2e/AtomicRef/exchange_local.cpp +++ b/sycl/test-e2e/AtomicRef/exchange_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/full_atomic_flags.cpp b/sycl/test-e2e/AtomicRef/full_atomic_flags.cpp new file mode 100644 index 0000000000000..a2b78b51a9c20 --- /dev/null +++ b/sycl/test-e2e/AtomicRef/full_atomic_flags.cpp @@ -0,0 +1,16 @@ +// REQUIRES: build-mode +// RUN: echo %{full_atomic_flags} | FileCheck %s --check-prefix=COMMON --implicit-check-not=-Wno-unused-command-line-argument %if target-spir %{ --check-prefix=SPIR %} %else %{ --implicit-check-not=-Xspirv-translator --implicit-check-not=-spirv-ext %} +// RUN: FileCheck %s --check-prefix=TARGETS --input-file=%S/load_local.cpp +// RUN: FileCheck %s --check-prefix=TARGETS --input-file=%S/sub_generic_local.cpp +// RUN: FileCheck %s --check-prefix=TARGETS --input-file=%S/exchange.cpp +// RUN: FileCheck %s --check-prefix=TARGETS --input-file=%S/and_generic_local.cpp + +// Check the E2E substitution without requiring a device or compiling kernels. +// Non-SPIR targets must not receive unused SPIR-V translator options. +// COMMON: -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE +// COMMON-SAME: -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel +// SPIR-SAME: -Xspirv-translator=spir64 +// SPIR-SAME: -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics + +// Exclude individual targets, not entire mixed-target build-only jobs. +// TARGETS: // UNSUPPORTED: target-nvidia, target-amd, spirv-backend diff --git a/sycl/test-e2e/AtomicRef/lit.local.cfg b/sycl/test-e2e/AtomicRef/lit.local.cfg index 3bd1829efba77..d3fc251c3be07 100644 --- a/sycl/test-e2e/AtomicRef/lit.local.cfg +++ b/sycl/test-e2e/AtomicRef/lit.local.cfg @@ -2,12 +2,13 @@ # (16/32/64-bit) on CRI devices. Tests build a second binary with them # unconditionally (per-device features are not available on build lines) and # run it only on CRI devices, see e.g. max.cpp. +# Only SPIR builds use the translator; other targets reject its flags with -Werror. config.substitutions.append( ( "%{full_atomic_flags}", "-DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE " "-DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel " - "-Xspirv-translator=spir64 " - "-spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics", + "%if target-spir %{ -Xspirv-translator=spir64 " + "-spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics %}", ) ) diff --git a/sycl/test-e2e/AtomicRef/load.cpp b/sycl/test-e2e/AtomicRef/load.cpp index 0a2753d6e9613..0bce560cdf592 100644 --- a/sycl/test-e2e/AtomicRef/load.cpp +++ b/sycl/test-e2e/AtomicRef/load.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/load_generic.cpp b/sycl/test-e2e/AtomicRef/load_generic.cpp index 691b0052446dd..c49aef1a5970a 100644 --- a/sycl/test-e2e/AtomicRef/load_generic.cpp +++ b/sycl/test-e2e/AtomicRef/load_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/load_generic_local.cpp b/sycl/test-e2e/AtomicRef/load_generic_local.cpp index 0c4a1fa7a0e8d..1a427fa19dbae 100644 --- a/sycl/test-e2e/AtomicRef/load_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/load_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/load_local.cpp b/sycl/test-e2e/AtomicRef/load_local.cpp index f229e9baa548d..8fe2695a24020 100644 --- a/sycl/test-e2e/AtomicRef/load_local.cpp +++ b/sycl/test-e2e/AtomicRef/load_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/max.cpp b/sycl/test-e2e/AtomicRef/max.cpp index f3fc16e0c288b..56e2ac4277871 100644 --- a/sycl/test-e2e/AtomicRef/max.cpp +++ b/sycl/test-e2e/AtomicRef/max.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/max_generic.cpp b/sycl/test-e2e/AtomicRef/max_generic.cpp index cf2025e63263d..0e46a6933a924 100644 --- a/sycl/test-e2e/AtomicRef/max_generic.cpp +++ b/sycl/test-e2e/AtomicRef/max_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/max_generic_local.cpp b/sycl/test-e2e/AtomicRef/max_generic_local.cpp index c27ec2e03f271..2df1ed4ad83e1 100644 --- a/sycl/test-e2e/AtomicRef/max_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/max_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/max_local.cpp b/sycl/test-e2e/AtomicRef/max_local.cpp index 7ab9057010f9b..b37b234acf379 100644 --- a/sycl/test-e2e/AtomicRef/max_local.cpp +++ b/sycl/test-e2e/AtomicRef/max_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/min.cpp b/sycl/test-e2e/AtomicRef/min.cpp index b4326dfa54191..a2174fb11dcf5 100644 --- a/sycl/test-e2e/AtomicRef/min.cpp +++ b/sycl/test-e2e/AtomicRef/min.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/min_generic.cpp b/sycl/test-e2e/AtomicRef/min_generic.cpp index c1d08a368a9f0..a331998fc91ac 100644 --- a/sycl/test-e2e/AtomicRef/min_generic.cpp +++ b/sycl/test-e2e/AtomicRef/min_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/min_generic_local.cpp b/sycl/test-e2e/AtomicRef/min_generic_local.cpp index fc9a79c6e5675..aacda57f4619c 100644 --- a/sycl/test-e2e/AtomicRef/min_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/min_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/min_local.cpp b/sycl/test-e2e/AtomicRef/min_local.cpp index 6b1771d491fe8..945d871f0e9bf 100644 --- a/sycl/test-e2e/AtomicRef/min_local.cpp +++ b/sycl/test-e2e/AtomicRef/min_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/or.cpp b/sycl/test-e2e/AtomicRef/or.cpp index 9e6cdda09397c..b8bfe26b04927 100644 --- a/sycl/test-e2e/AtomicRef/or.cpp +++ b/sycl/test-e2e/AtomicRef/or.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/or_generic.cpp b/sycl/test-e2e/AtomicRef/or_generic.cpp index f22289243df88..f9b1729751475 100644 --- a/sycl/test-e2e/AtomicRef/or_generic.cpp +++ b/sycl/test-e2e/AtomicRef/or_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/or_generic_local.cpp b/sycl/test-e2e/AtomicRef/or_generic_local.cpp index cc85103a95acb..761047b58d963 100644 --- a/sycl/test-e2e/AtomicRef/or_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/or_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/or_local.cpp b/sycl/test-e2e/AtomicRef/or_local.cpp index bdfb08fa08cf1..2c226f296b3d7 100644 --- a/sycl/test-e2e/AtomicRef/or_local.cpp +++ b/sycl/test-e2e/AtomicRef/or_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/store.cpp b/sycl/test-e2e/AtomicRef/store.cpp index 1b9696dcc7665..7624abf383470 100644 --- a/sycl/test-e2e/AtomicRef/store.cpp +++ b/sycl/test-e2e/AtomicRef/store.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/store_generic.cpp b/sycl/test-e2e/AtomicRef/store_generic.cpp index 60a8331720a62..415a81624cceb 100644 --- a/sycl/test-e2e/AtomicRef/store_generic.cpp +++ b/sycl/test-e2e/AtomicRef/store_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/store_generic_local.cpp b/sycl/test-e2e/AtomicRef/store_generic_local.cpp index 67c045c15429c..83064197614c7 100644 --- a/sycl/test-e2e/AtomicRef/store_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/store_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/store_local.cpp b/sycl/test-e2e/AtomicRef/store_local.cpp index 3b8d4041ce3c0..9cab58027961f 100644 --- a/sycl/test-e2e/AtomicRef/store_local.cpp +++ b/sycl/test-e2e/AtomicRef/store_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/sub.cpp b/sycl/test-e2e/AtomicRef/sub.cpp index 26bd8c2cac542..5732d97620293 100644 --- a/sycl/test-e2e/AtomicRef/sub.cpp +++ b/sycl/test-e2e/AtomicRef/sub.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/sub_generic.cpp b/sycl/test-e2e/AtomicRef/sub_generic.cpp index 6ddce15f33526..5a3d8b8a044a5 100644 --- a/sycl/test-e2e/AtomicRef/sub_generic.cpp +++ b/sycl/test-e2e/AtomicRef/sub_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/sub_generic_local.cpp b/sycl/test-e2e/AtomicRef/sub_generic_local.cpp index 4d279c93acfaa..d4e0387ef6c16 100644 --- a/sycl/test-e2e/AtomicRef/sub_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/sub_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/sub_local.cpp b/sycl/test-e2e/AtomicRef/sub_local.cpp index d79e0e100fd22..e068175547523 100644 --- a/sycl/test-e2e/AtomicRef/sub_local.cpp +++ b/sycl/test-e2e/AtomicRef/sub_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/xor.cpp b/sycl/test-e2e/AtomicRef/xor.cpp index 1016dcc2b944c..731551ba22f01 100644 --- a/sycl/test-e2e/AtomicRef/xor.cpp +++ b/sycl/test-e2e/AtomicRef/xor.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/xor_generic.cpp b/sycl/test-e2e/AtomicRef/xor_generic.cpp index faf17bc363f1d..868a3f480bb3f 100644 --- a/sycl/test-e2e/AtomicRef/xor_generic.cpp +++ b/sycl/test-e2e/AtomicRef/xor_generic.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/xor_generic_local.cpp b/sycl/test-e2e/AtomicRef/xor_generic_local.cpp index b81eb9d84f3ea..4b9ecc3e7ac77 100644 --- a/sycl/test-e2e/AtomicRef/xor_generic_local.cpp +++ b/sycl/test-e2e/AtomicRef/xor_generic_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out diff --git a/sycl/test-e2e/AtomicRef/xor_local.cpp b/sycl/test-e2e/AtomicRef/xor_local.cpp index 19b797a9ad47f..b316111e56f1c 100644 --- a/sycl/test-e2e/AtomicRef/xor_local.cpp +++ b/sycl/test-e2e/AtomicRef/xor_local.cpp @@ -1,4 +1,4 @@ -// UNSUPPORTED: any-target-is-nvidia, any-target-is-amd, spirv-backend +// UNSUPPORTED: target-nvidia, target-amd, spirv-backend // UNSUPPORTED-INTENDED: only supported by backends with atomic16 support // RUN: %{build} -o %t.out // RUN: %{build} %{full_atomic_flags} -o %t.cri.out From a9f18238a34433ae62be684cf18d0663e2fe0129 Mon Sep 17 00:00:00 2001 From: "Klochkov, Denis" Date: Thu, 22 Oct 2026 00:47:34 +0200 Subject: [PATCH 6/7] [SYCL][E2E] remove extra test --- sycl/test-e2e/AtomicRef/full_atomic_flags.cpp | 16 ---------------- 1 file changed, 16 deletions(-) delete mode 100644 sycl/test-e2e/AtomicRef/full_atomic_flags.cpp diff --git a/sycl/test-e2e/AtomicRef/full_atomic_flags.cpp b/sycl/test-e2e/AtomicRef/full_atomic_flags.cpp deleted file mode 100644 index a2b78b51a9c20..0000000000000 --- a/sycl/test-e2e/AtomicRef/full_atomic_flags.cpp +++ /dev/null @@ -1,16 +0,0 @@ -// REQUIRES: build-mode -// RUN: echo %{full_atomic_flags} | FileCheck %s --check-prefix=COMMON --implicit-check-not=-Wno-unused-command-line-argument %if target-spir %{ --check-prefix=SPIR %} %else %{ --implicit-check-not=-Xspirv-translator --implicit-check-not=-spirv-ext %} -// RUN: FileCheck %s --check-prefix=TARGETS --input-file=%S/load_local.cpp -// RUN: FileCheck %s --check-prefix=TARGETS --input-file=%S/sub_generic_local.cpp -// RUN: FileCheck %s --check-prefix=TARGETS --input-file=%S/exchange.cpp -// RUN: FileCheck %s --check-prefix=TARGETS --input-file=%S/and_generic_local.cpp - -// Check the E2E substitution without requiring a device or compiling kernels. -// Non-SPIR targets must not receive unused SPIR-V translator options. -// COMMON: -DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE -// COMMON-SAME: -DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel -// SPIR-SAME: -Xspirv-translator=spir64 -// SPIR-SAME: -spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics - -// Exclude individual targets, not entire mixed-target build-only jobs. -// TARGETS: // UNSUPPORTED: target-nvidia, target-amd, spirv-backend From db166664dba054a38157782b21ace65380e29847 Mon Sep 17 00:00:00 2001 From: "Klochkov, Denis" Date: Thu, 22 Oct 2026 07:44:06 +0200 Subject: [PATCH 7/7] [SYCL][E2E] do not pass full build coverage flags into cpu target --- sycl/test-e2e/AtomicRef/lit.local.cfg | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sycl/test-e2e/AtomicRef/lit.local.cfg b/sycl/test-e2e/AtomicRef/lit.local.cfg index d3fc251c3be07..804224ab57f47 100644 --- a/sycl/test-e2e/AtomicRef/lit.local.cfg +++ b/sycl/test-e2e/AtomicRef/lit.local.cfg @@ -2,13 +2,16 @@ # (16/32/64-bit) on CRI devices. Tests build a second binary with them # unconditionally (per-device features are not available on build lines) and # run it only on CRI devices, see e.g. max.cpp. +# Native CPU uses no extra flags because it cannot compile bfloat16 atomics. # Only SPIR builds use the translator; other targets reject its flags with -Werror. config.substitutions.append( ( "%{full_atomic_flags}", + "%if target-spir %{ " "-DFULL_ATOMIC16_COVERAGE -DFULL_ATOMIC32_COVERAGE " "-DFULL_ATOMIC64_COVERAGE -fsycl-device-code-split=per_kernel " - "%if target-spir %{ -Xspirv-translator=spir64 " - "-spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics %}", + "-Xspirv-translator=spir64 " + "-spirv-ext=+SPV_KHR_bfloat16,+SPV_INTEL_16bit_atomics " + "%} %else %{ %}", ) )