Skip to content

Commit e81a2e9

Browse files
Merge branch 'sycl' into Alexandr-Konovalov/handler-in-stack
2 parents d74d8dd + 6176b29 commit e81a2e9

File tree

100 files changed

+5201
-2795
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

100 files changed

+5201
-2795
lines changed

.github/CODEOWNERS

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,8 @@ sycl/doc/extensions/ @intel/dpcpp-specification-reviewers
3636

3737
# Unified Runtime
3838
unified-runtime/ @intel/unified-runtime-reviewers
39-
# TODO: Use specific UR Level Zero adapter team
40-
unified-runtime/*/adapters/level_zero/ @intel/unified-runtime-reviewers
41-
# TODO: Use specific UR OpenCL adapter team
42-
unified-runtime/*/adapters/opencl/ @intel/unified-runtime-reviewers
39+
unified-runtime/*/adapters/level_zero/ @intel/unified-runtime-reviewers-level-zero
40+
unified-runtime/*/adapters/opencl/ @intel/unified-runtime-reviewers-opencl
4341
unified-runtime/*/adapters/cuda/ @intel/llvm-reviewers-cuda
4442
unified-runtime/*/adapters/hip/ @intel/llvm-reviewers-cuda
4543
unified-runtime/*/adapters/native_cpu/ @intel/dpcpp-nativecpu-reviewers

.github/workflows/sycl-linux-build.yml

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,10 @@ on:
4646
default: 3
4747
e2e_binaries_artifact:
4848
type: string
49-
required: False
49+
required: false
50+
pack_release:
51+
type: string
52+
required: false
5053

5154
outputs:
5255
build_conclusion:
@@ -100,6 +103,10 @@ on:
100103
options:
101104
- 3
102105

106+
pack_release:
107+
type: string
108+
required: false
109+
103110
permissions: read-all
104111

105112
jobs:
@@ -215,11 +222,26 @@ jobs:
215222
# TODO consider moving this to Dockerfile.
216223
export LD_LIBRARY_PATH=/usr/local/cuda/compat/:/usr/local/cuda/lib64:$LD_LIBRARY_PATH
217224
LIT_OPTS="--allow-empty-runs" LIT_FILTER="e2e_test_requirements" cmake --build $GITHUB_WORKSPACE/build --target check-sycl
218-
- name: Install
225+
- name: Install sycl-toolchain
219226
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' }}
220-
# TODO replace utility installation with a single CMake target
221227
run: |
222228
cmake --build $GITHUB_WORKSPACE/build --target deploy-sycl-toolchain
229+
230+
- name: Pack toolchain release
231+
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' && inputs.pack_release == 'true' }}
232+
run: tar -I '${{ steps.artifact_info.outputs.COMPRESS }}' -cf ${{ steps.artifact_info.outputs.ARCHIVE_NAME }} -C $GITHUB_WORKSPACE/build/install .
233+
- name: Upload toolchain release
234+
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' && inputs.pack_release == 'true' }}
235+
uses: actions/upload-artifact@v4
236+
with:
237+
name: sycl_linux_release
238+
path: ${{ steps.artifact_info.outputs.ARCHIVE_NAME }}
239+
retention-days: ${{ inputs.retention-days }}
240+
241+
- name: Install utilities
242+
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' }}
243+
# TODO replace utility installation with a single CMake target
244+
run: |
223245
cmake --build $GITHUB_WORKSPACE/build --target utils/FileCheck/install
224246
cmake --build $GITHUB_WORKSPACE/build --target utils/count/install
225247
cmake --build $GITHUB_WORKSPACE/build --target utils/not/install

.github/workflows/sycl-linux-precommit.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,11 @@ on:
2525
- '.github/workflows/trivy.yml'
2626
- 'devops/containers/**'
2727
- 'devops/actions/build_container/**'
28+
- 'unified-runtime/examples/**'
29+
- 'unified-runtime/scripts/**'
30+
- 'unified-runtime/test/**'
31+
- 'unified-runtime/third_party/**'
32+
- 'unified-runtime/tools/**'
2833

2934
concurrency:
3035
# Cancel a currently running workflow from the same PR, branch or tag.

.github/workflows/sycl-rel-nightly.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,7 @@ jobs:
214214
image_options: ${{ matrix.image_options }}
215215
target_devices: ${{ matrix.target_devices }}
216216
tests_selector: cts
217-
repo_ref: ${{ github.sha }}
217+
repo_ref: ${{ inputs.testing_branch || 'sycl-rel-6_1_0' }}
218218
devops_ref: sycl
219219
sycl_toolchain_artifact: sycl_linux_default
220220
sycl_toolchain_archive: ${{ needs.ubuntu2204_build.outputs.artifact_archive_name }}

.github/workflows/sycl-windows-precommit.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@ on:
2424
- '.github/workflows/trivy.yml'
2525
- 'devops/containers/**'
2626
- 'devops/actions/build_container/**'
27+
- 'unified-runtime/examples/**'
28+
- 'unified-runtime/scripts/**'
29+
- 'unified-runtime/test/**'
30+
- 'unified-runtime/third_party/**'
31+
- 'unified-runtime/tools/**'
2732

2833
permissions: read-all
2934

clang/lib/Driver/ToolChains/Clang.cpp

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5885,8 +5885,16 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
58855885
CmdArgs.push_back("-ffine-grained-bitfield-accesses");
58865886
}
58875887

5888-
if (!Args.hasFlag(options::OPT_fsycl_unnamed_lambda,
5889-
options::OPT_fno_sycl_unnamed_lambda, true))
5888+
// '-fsycl-unnamed-lambda' is not supported with '-fsycl-host-compiler'
5889+
if (Args.hasArg(options::OPT_fsycl_host_compiler_EQ)) {
5890+
if (Args.hasFlag(options::OPT_fsycl_unnamed_lambda,
5891+
options::OPT_fno_sycl_unnamed_lambda, false))
5892+
D.Diag(diag::err_drv_cannot_mix_options) << "-fsycl-host-compiler"
5893+
<< "-fsycl-unnamed-lambda";
5894+
else // '-fsycl-host-compiler' implies '-fno-sycl-unnamed-lambda'
5895+
CmdArgs.push_back("-fno-sycl-unnamed-lambda");
5896+
} else if (!Args.hasFlag(options::OPT_fsycl_unnamed_lambda,
5897+
options::OPT_fno_sycl_unnamed_lambda, true))
58905898
CmdArgs.push_back("-fno-sycl-unnamed-lambda");
58915899

58925900
if (!Args.hasFlag(options::OPT_fsycl_esimd_force_stateless_mem,

clang/test/Driver/sycl-host-compiler-old-model.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,16 @@
6262
// RUN: | FileCheck -check-prefix=HOST_COMPILER_NOARG %s
6363
// HOST_COMPILER_NOARG: missing argument to '-fsycl-host-compiler='
6464

65+
/// error for -fsycl-host-compiler and -fsycl-unnamed-lambda combination
66+
// RUN: not %clangxx -fsycl --no-offload-new-driver -fsycl-host-compiler=g++ -fsycl-unnamed-lambda -c -### %s 2>&1 \
67+
// RUN: | FileCheck -check-prefix=HOST_COMPILER_AND_UNNAMED_LAMBDA %s
68+
// HOST_COMPILER_AND_UNNAMED_LAMBDA: error: cannot specify '-fsycl-unnamed-lambda' along with '-fsycl-host-compiler'
69+
70+
// -fsycl-host-compiler implies -fno-sycl-unnamed-lambda
71+
// RUN: %clangxx -### -fsycl --no-offload-new-driver -fsycl-host-compiler=g++ -c -### %s 2>&1 \
72+
// RUN: | FileCheck -check-prefix=IMPLY-NO-SYCL-UNNAMED-LAMBDA %s
73+
// IMPLY-NO-SYCL-UNNAMED-LAMBDA: clang{{.*}} "-fno-sycl-unnamed-lambda"
74+
6575
/// Warning should not be emitted when using -fsycl-host-compiler when linking
6676
// RUN: touch %t.o
6777
// RUN: %clangxx -fsycl --no-offload-new-driver -fsycl-host-compiler=g++ %t.o -### 2>&1 \

devops/scripts/benchmarks/options.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ class Options:
4040
build_compute_runtime: bool = False
4141
extra_ld_libraries: list[str] = field(default_factory=list)
4242
extra_env_vars: dict = field(default_factory=dict)
43-
compute_runtime_tag: str = "25.05.32567.18"
43+
compute_runtime_tag: str = "25.09.32961.7"
4444
build_igc: bool = False
4545
current_run_name: str = "This PR"
4646
preset: str = "Full"

llvm/lib/SYCLNativeCPUUtils/CMakeLists.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,15 @@ endif()
3535
if(NATIVECPU_USE_OCK)
3636
if(NATIVECPU_OCK_USE_FETCHCONTENT)
3737
set(OCK_GIT_INTERNAL_REPO "https://github.com/uxlfoundation/oneapi-construction-kit.git")
38-
# commit 652f9943b0bfcf61123a0f82b2bdd499738c5391
39-
# Merge: c24c971bcb e0f02ae739
40-
# Author: Colin Davidson <colin.davidson@codeplay.com>
41-
# Date: Fri Feb 28 15:59:50 2025 +0000
38+
# commit ffef31717750d3f15bfd2f18d9cd7f4677fe9d3e
39+
# Merge: 574307afde 0b00238554
40+
# Author: Harald van Dijk <harald.vandijk@codeplay.com>
41+
# Date: Fri Apr 4 16:26:38 2025 +0100
4242
#
43-
# Merge pull request #677 from coldav/colin/build_installed_llvm
43+
# Merge pull request #751 from hvdijk/llvm21-address-space
4444
#
45-
# Change llvm over to a choice of install or cache, default PRs to install
46-
set(OCK_GIT_INTERNAL_TAG 652f9943b0bfcf61123a0f82b2bdd499738c5391)
45+
# [LLVM 21] Take address space into account for legality.
46+
set(OCK_GIT_INTERNAL_TAG ffef31717750d3f15bfd2f18d9cd7f4677fe9d3e)
4747

4848
# Overwrite OCK_GIT_INTERNAL_REPO/OCK_GIT_INTERNAL_TAG if the corresponding options are set
4949
if(OCK_GIT_REPO)

sycl/include/sycl/detail/type_traits.hpp

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,6 @@ template <class T> struct is_fixed_size_group : std::false_type {};
2424

2525
template <class T>
2626
inline constexpr bool is_fixed_size_group_v = is_fixed_size_group<T>::value;
27-
28-
template <typename VecT, typename OperationLeftT, typename OperationRightT,
29-
template <typename> class OperationCurrentT, int... Indexes>
30-
class SwizzleOp;
3127
} // namespace detail
3228

3329
template <int Dimensions> class group;
@@ -154,12 +150,20 @@ template <typename T, size_t N> struct get_elem_type_unqual<marray<T, N>> {
154150
template <typename T, int N> struct get_elem_type_unqual<vec<T, N>> {
155151
using type = T;
156152
};
153+
#if __SYCL_USE_LIBSYCL8_VEC_IMPL
157154
template <typename VecT, typename OperationLeftT, typename OperationRightT,
158155
template <typename> class OperationCurrentT, int... Indexes>
159156
struct get_elem_type_unqual<SwizzleOp<VecT, OperationLeftT, OperationRightT,
160157
OperationCurrentT, Indexes...>> {
161158
using type = typename get_elem_type_unqual<std::remove_cv_t<VecT>>::type;
162159
};
160+
#else
161+
template <bool IsConstVec, typename DataT, int VecSize, int... Indexes>
162+
struct get_elem_type_unqual<detail::hide_swizzle_from_adl::Swizzle<
163+
IsConstVec, DataT, VecSize, Indexes...>> {
164+
using type = DataT;
165+
};
166+
#endif
163167

164168
template <typename ElementType, access::address_space Space,
165169
access::decorated DecorateAddress>

0 commit comments

Comments
 (0)