Skip to content

Commit d6d75e1

Browse files
committed
Merge remote-tracking branch 'origin/sycl' into llvmspirv_pulldown
Conflicts: clang/lib/Basic/Targets/NVPTX.cpp sycl-jit/jit-compiler/lib/translation/KernelTranslation.cpp
2 parents 7a89f95 + 0a406c9 commit d6d75e1

File tree

453 files changed

+16317
-4644
lines changed

Some content is hidden

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

453 files changed

+16317
-4644
lines changed

.ci/metrics/requirements.lock.txt

Lines changed: 34 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -186,34 +186,38 @@ charset-normalizer==3.4.0 \
186186
--hash=sha256:fe9f97feb71aa9896b81973a7bbada8c49501dc73e58a10fcef6663af95e5079 \
187187
--hash=sha256:ffc519621dce0c767e96b9c53f09c5d215578e10b02c285809f76509a3931482
188188
# via requests
189-
cryptography==43.0.3 \
190-
--hash=sha256:0c580952eef9bf68c4747774cde7ec1d85a6e61de97281f2dba83c7d2c806362 \
191-
--hash=sha256:0f996e7268af62598f2fc1204afa98a3b5712313a55c4c9d434aef49cadc91d4 \
192-
--hash=sha256:1ec0bcf7e17c0c5669d881b1cd38c4972fade441b27bda1051665faaa89bdcaa \
193-
--hash=sha256:281c945d0e28c92ca5e5930664c1cefd85efe80e5c0d2bc58dd63383fda29f83 \
194-
--hash=sha256:2ce6fae5bdad59577b44e4dfed356944fbf1d925269114c28be377692643b4ff \
195-
--hash=sha256:315b9001266a492a6ff443b61238f956b214dbec9910a081ba5b6646a055a805 \
196-
--hash=sha256:443c4a81bb10daed9a8f334365fe52542771f25aedaf889fd323a853ce7377d6 \
197-
--hash=sha256:4a02ded6cd4f0a5562a8887df8b3bd14e822a90f97ac5e544c162899bc467664 \
198-
--hash=sha256:53a583b6637ab4c4e3591a15bc9db855b8d9dee9a669b550f311480acab6eb08 \
199-
--hash=sha256:63efa177ff54aec6e1c0aefaa1a241232dcd37413835a9b674b6e3f0ae2bfd3e \
200-
--hash=sha256:74f57f24754fe349223792466a709f8e0c093205ff0dca557af51072ff47ab18 \
201-
--hash=sha256:7e1ce50266f4f70bf41a2c6dc4358afadae90e2a1e5342d3c08883df1675374f \
202-
--hash=sha256:81ef806b1fef6b06dcebad789f988d3b37ccaee225695cf3e07648eee0fc6b73 \
203-
--hash=sha256:846da004a5804145a5f441b8530b4bf35afbf7da70f82409f151695b127213d5 \
204-
--hash=sha256:8ac43ae87929a5982f5948ceda07001ee5e83227fd69cf55b109144938d96984 \
205-
--hash=sha256:9762ea51a8fc2a88b70cf2995e5675b38d93bf36bd67d91721c309df184f49bd \
206-
--hash=sha256:a2a431ee15799d6db9fe80c82b055bae5a752bef645bba795e8e52687c69efe3 \
207-
--hash=sha256:bf7a1932ac4176486eab36a19ed4c0492da5d97123f1406cf15e41b05e787d2e \
208-
--hash=sha256:c2e6fc39c4ab499049df3bdf567f768a723a5e8464816e8f009f121a5a9f4405 \
209-
--hash=sha256:cbeb489927bd7af4aa98d4b261af9a5bc025bd87f0e3547e11584be9e9427be2 \
210-
--hash=sha256:d03b5621a135bffecad2c73e9f4deb1a0f977b9a8ffe6f8e002bf6c9d07b918c \
211-
--hash=sha256:d56e96520b1020449bbace2b78b603442e7e378a9b3bd68de65c782db1507995 \
212-
--hash=sha256:df6b6c6d742395dd77a23ea3728ab62f98379eff8fb61be2744d4679ab678f73 \
213-
--hash=sha256:e1be4655c7ef6e1bbe6b5d0403526601323420bcf414598955968c9ef3eb7d16 \
214-
--hash=sha256:f18c716be16bc1fea8e95def49edf46b82fccaa88587a45f8dc0ff6ab5d8e0a7 \
215-
--hash=sha256:f46304d6f0c6ab8e52770addfa2fc41e6629495548862279641972b6215451cd \
216-
--hash=sha256:f7b178f11ed3664fd0e995a47ed2b5ff0a12d893e41dd0494f406d1cf555cab7
189+
cryptography==44.0.1 \
190+
--hash=sha256:00918d859aa4e57db8299607086f793fa7813ae2ff5a4637e318a25ef82730f7 \
191+
--hash=sha256:1e8d181e90a777b63f3f0caa836844a1182f1f265687fac2115fcf245f5fbec3 \
192+
--hash=sha256:1f9a92144fa0c877117e9748c74501bea842f93d21ee00b0cf922846d9d0b183 \
193+
--hash=sha256:21377472ca4ada2906bc313168c9dc7b1d7ca417b63c1c3011d0c74b7de9ae69 \
194+
--hash=sha256:24979e9f2040c953a94bf3c6782e67795a4c260734e5264dceea65c8f4bae64a \
195+
--hash=sha256:2a46a89ad3e6176223b632056f321bc7de36b9f9b93b2cc1cccf935a3849dc62 \
196+
--hash=sha256:322eb03ecc62784536bc173f1483e76747aafeb69c8728df48537eb431cd1911 \
197+
--hash=sha256:436df4f203482f41aad60ed1813811ac4ab102765ecae7a2bbb1dbb66dcff5a7 \
198+
--hash=sha256:4f422e8c6a28cf8b7f883eb790695d6d45b0c385a2583073f3cec434cc705e1a \
199+
--hash=sha256:53f23339864b617a3dfc2b0ac8d5c432625c80014c25caac9082314e9de56f41 \
200+
--hash=sha256:5fed5cd6102bb4eb843e3315d2bf25fede494509bddadb81e03a859c1bc17b83 \
201+
--hash=sha256:610a83540765a8d8ce0f351ce42e26e53e1f774a6efb71eb1b41eb01d01c3d12 \
202+
--hash=sha256:6c8acf6f3d1f47acb2248ec3ea261171a671f3d9428e34ad0357148d492c7864 \
203+
--hash=sha256:6f76fdd6fd048576a04c5210d53aa04ca34d2ed63336d4abd306d0cbe298fddf \
204+
--hash=sha256:72198e2b5925155497a5a3e8c216c7fb3e64c16ccee11f0e7da272fa93b35c4c \
205+
--hash=sha256:887143b9ff6bad2b7570da75a7fe8bbf5f65276365ac259a5d2d5147a73775f2 \
206+
--hash=sha256:888fcc3fce0c888785a4876ca55f9f43787f4c5c1cc1e2e0da71ad481ff82c5b \
207+
--hash=sha256:8e6a85a93d0642bd774460a86513c5d9d80b5c002ca9693e63f6e540f1815ed0 \
208+
--hash=sha256:94f99f2b943b354a5b6307d7e8d19f5c423a794462bde2bf310c770ba052b1c4 \
209+
--hash=sha256:9b336599e2cb77b1008cb2ac264b290803ec5e8e89d618a5e978ff5eb6f715d9 \
210+
--hash=sha256:a2d8a7045e1ab9b9f803f0d9531ead85f90c5f2859e653b61497228b18452008 \
211+
--hash=sha256:b8272f257cf1cbd3f2e120f14c68bff2b6bdfcc157fafdee84a1b795efd72862 \
212+
--hash=sha256:bf688f615c29bfe9dfc44312ca470989279f0e94bb9f631f85e3459af8efc009 \
213+
--hash=sha256:d9c5b9f698a83c8bd71e0f4d3f9f839ef244798e5ffe96febfa9714717db7af7 \
214+
--hash=sha256:dd7c7e2d71d908dc0f8d2027e1604102140d84b155e658c20e8ad1304317691f \
215+
--hash=sha256:df978682c1504fc93b3209de21aeabf2375cb1571d4e61907b3e7a2540e83026 \
216+
--hash=sha256:e403f7f766ded778ecdb790da786b418a9f2394f36e8cc8b796cc056ab05f44f \
217+
--hash=sha256:eb3889330f2a4a148abead555399ec9a32b13b7c8ba969b72d8e500eb7ef84cd \
218+
--hash=sha256:f4daefc971c2d1f82f03097dc6f216744a6cd2ac0f04c68fb935ea2ba2a0d420 \
219+
--hash=sha256:f51f5705ab27898afda1aaa430f34ad90dc117421057782022edf0600bec5f14 \
220+
--hash=sha256:fd0ee90072861e276b0ff08bd627abec29e32a53b2be44e41dbcdf87cbee2b00
217221
# via pyjwt
218222
deprecated==1.2.15 \
219223
--hash=sha256:353bc4a8ac4bfc96800ddab349d89c25dec1079f65fd53acdcc1e0b975b21320 \
@@ -232,8 +236,8 @@ pygithub==2.5.0 \
232236
--hash=sha256:e1613ac508a9be710920d26eb18b1905ebd9926aa49398e88151c1b526aad3cf
233237
# via -r ./requirements.txt
234238
pyjwt[crypto]==2.10.1 \
235-
--hash=sha256:543b77207db656de204372350926bed5a86201c4cbff159f623f79c7bb487a15 \
236-
--hash=sha256:7628a7eb7938959ac1b26e819a1df0fd3259505627b575e4bad6d08f76db695c
239+
--hash=sha256:3cc5772eb20009233caf06e9d8a0577824723b44e6648ee0a2aedb6cf9381953 \
240+
--hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb
237241
# via pygithub
238242
pynacl==1.5.0 \
239243
--hash=sha256:06b8f6fa7f5de8d5d2f7573fe8c863c051225a27b61e6860fd047b1775807858 \

.github/CODEOWNERS

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,9 @@ devops/ @intel/dpcpp-devops-reviewers
128128
# dev-igc driver update
129129
devops/dependencies-igc-dev.json @intel/sycl-matrix-reviewers @intel/dpcpp-esimd-reviewers @intel/dpcpp-devops-reviewers
130130

131+
# Benchmarking scripts
132+
devops/scripts/benchmarks/ @intel/llvm-reviewers-benchmarking
133+
131134
# Kernel fusion JIT compiler
132135
sycl-jit/ @intel/dpcpp-kernel-fusion-reviewers
133136
sycl/doc/design/KernelFusionJIT.md @intel/dpcpp-kernel-fusion-reviewers

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ on:
1212
paths-ignore:
1313
- '.github/ISSUE_TEMPLATE/**'
1414
- '.github/CODEOWNERS'
15+
- 'sycl/cts_exclude_filter/**'
1516
- 'sycl/doc/**'
1617
- 'sycl/gdb/**'
1718
- 'clang/docs/**'

.github/workflows/sycl-nightly.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@ jobs:
257257
runner: '["Windows", "build-e2e"]'
258258
cts_testing_mode: 'build-only'
259259
tests_selector: cts
260-
ref: ${{ github.sha }}
260+
repo_ref: ${{ github.sha }}
261261
sycl_toolchain_archive: ${{ needs.build-win.outputs.artifact_archive_name }}
262262
sycl_cts_artifact: sycl_cts_bin_win
263263

@@ -278,7 +278,7 @@ jobs:
278278
cts_testing_mode: 'run-only'
279279
target_devices: ${{ matrix.target_devices }}
280280
tests_selector: cts
281-
ref: ${{ github.sha }}
281+
repo_ref: ${{ github.sha }}
282282
sycl_toolchain_archive: ${{ needs.build-win.outputs.artifact_archive_name }}
283283
sycl_cts_artifact: sycl_cts_bin_win
284284

.github/workflows/sycl-post-commit.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,6 @@ jobs:
5858
runner: '["Linux", "arc"]'
5959
extra_lit_opts: --param matrix-xmx8=True
6060
reset_intel_gpu: true
61-
- name: AMD/HIP
62-
runner: '["Linux", "amdgpu"]'
63-
image_options: -u 1001 --device=/dev/dri --device=/dev/kfd
64-
target_devices: hip:gpu
65-
reset_intel_gpu: false
6661
# Performance tests below. Specifics:
6762
# - only run performance tests (use LIT_FILTER env)
6863
# - ask llvm-lit to show all the output, even for PASS (-a)

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

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
steps:
2121
- uses: actions/checkout@v4
2222
with:
23-
ref: sycl-rel-6_0_0
23+
ref: sycl-rel-6_1_0
2424
- run: git show --quiet | tee -a $GITHUB_STEP_SUMMARY
2525

2626
- id: is_new_commit
@@ -40,7 +40,7 @@ jobs:
4040
build_artifact_suffix: default
4141
build_configure_extra_args: '--hip --cuda'
4242
build_image: ghcr.io/intel/llvm/ubuntu2204_build:latest
43-
build_ref: sycl-rel-6_0_0
43+
build_ref: sycl-rel-6_1_0
4444

4545
# We upload the build for people to download/use, override its name and
4646
# prefer widespread gzip compression.
@@ -89,7 +89,7 @@ jobs:
8989
tests_selector: ${{ matrix.tests_selector }}
9090
extra_lit_opts: ${{ matrix.extra_lit_opts }}
9191
reset_intel_gpu: ${{ matrix.reset_intel_gpu }}
92-
repo_ref: sycl-rel-6_0_0
92+
repo_ref: sycl-rel-6_1_0
9393
devops_ref: sycl
9494
sycl_toolchain_artifact: sycl_linux_default
9595
sycl_toolchain_archive: ${{ needs.ubuntu2204_build.outputs.artifact_archive_name }}
@@ -100,7 +100,7 @@ jobs:
100100
if: ${{ github.repository == 'intel/llvm' && needs.check_for_new_commits.outputs.is_new_commit != 'false' }}
101101
uses: ./.github/workflows/sycl-windows-build.yml
102102
with:
103-
ref: sycl-rel-6_0_0
103+
ref: sycl-rel-6_1_0
104104

105105
# We upload both Linux/Windows build via Github's "Releases"
106106
# functionality, make sure Linux/Windows names follow the same pattern.
@@ -119,7 +119,7 @@ jobs:
119119
runner: '["Windows","gen12"]'
120120
sycl_toolchain_archive: ${{ needs.build-win.outputs.artifact_archive_name }}
121121
extra_lit_opts: --param gpu-intel-gen12=True
122-
ref: sycl-rel-6_0_0
122+
repo_ref: sycl-rel-6_1_0
123123
devops_ref: sycl
124124

125125
cuda-aws-start:
@@ -129,7 +129,7 @@ jobs:
129129
secrets: inherit
130130
with:
131131
mode: start
132-
ref: sycl-rel-6_0_0
132+
ref: sycl-rel-6_1_0
133133

134134
cuda-run-tests:
135135
needs: [ubuntu2204_build, cuda-aws-start]
@@ -141,7 +141,7 @@ jobs:
141141
image: ghcr.io/intel/llvm/ubuntu2204_build:latest
142142
image_options: -u 1001 --gpus all --cap-add SYS_ADMIN --env NVIDIA_DISABLE_REQUIRE=1
143143
target_devices: cuda:gpu
144-
repo_ref: sycl-rel-6_0_0
144+
repo_ref: sycl-rel-6_1_0
145145
devops_ref: sycl
146146

147147
sycl_toolchain_artifact: sycl_linux_default
@@ -155,7 +155,7 @@ jobs:
155155
secrets: inherit
156156
with:
157157
mode: stop
158-
ref: sycl-rel-6_0_0
158+
ref: sycl-rel-6_1_0
159159

160160
build-sycl-cts:
161161
needs: ubuntu2204_build
@@ -167,11 +167,13 @@ jobs:
167167
cts_testing_mode: 'build-only'
168168
image_options: -u 1001 --device=/dev/dri --privileged --cap-add SYS_ADMIN
169169
tests_selector: cts
170-
repo_ref: sycl-rel-6_0_0
170+
repo_ref: sycl-rel-6_1_0
171171
devops_ref: sycl
172+
tests_ref: ead7474b9cb2189ce48025550912ccad5a72bd30
172173
sycl_toolchain_artifact: sycl_linux_default
173174
sycl_toolchain_archive: ${{ needs.ubuntu2204_build.outputs.artifact_archive_name }}
174175
sycl_toolchain_decompress_command: ${{ needs.ubuntu2204_build.outputs.artifact_decompress_command }}
176+
sycl_cts_artifact: sycl_cts_bin_linux
175177

176178
run-sycl-cts:
177179
needs: [ubuntu2204_build, build-sycl-cts]
@@ -202,4 +204,4 @@ jobs:
202204
sycl_toolchain_artifact: sycl_linux_default
203205
sycl_toolchain_archive: ${{ needs.ubuntu2204_build.outputs.artifact_archive_name }}
204206
sycl_toolchain_decompress_command: ${{ needs.ubuntu2204_build.outputs.artifact_decompress_command }}
205-
sycl_cts_artifact: sycl_cts_bin
207+
sycl_cts_artifact: sycl_cts_bin_linux
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: Benchmarks
2+
3+
# This workflow is a WIP: this workflow file acts as a placeholder.
4+
5+
on: [ workflow_dispatch ]
6+
7+
jobs:
8+
do-nothing:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- run: echo 'This workflow is a WIP.'
12+

.github/workflows/sycl-weekly.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
1-
# This workflow builds SYCL-CTS with -fsycl-use-spirv-backend-for-spirv-gen and
2-
# runs it with opencl:cpu & gen12 and level_zero:gpu & PVC on Sundays.
3-
4-
name: SYCL-CTS with SPIR-V backend
1+
name: SYCL Weekly
52

63
on:
74
workflow_dispatch:
85
schedule:
6+
# At 00:00 on Sunday.
97
- cron: '0 0 * * 0'
108

119
permissions: read-all
@@ -20,6 +18,7 @@ jobs:
2018
build_artifact_suffix: default
2119
build_configure_extra_args: ''
2220

21+
# This job builds SYCL-CTS with -fsycl-use-spirv-backend-for-spirv-gen.
2322
build-sycl-cts:
2423
needs: ubuntu2204_build
2524
if: ${{ always() && !cancelled() && needs.ubuntu2204_build.outputs.build_conclusion == 'success' }}
@@ -35,6 +34,7 @@ jobs:
3534
sycl_toolchain_archive: ${{ needs.ubuntu2204_build.outputs.artifact_archive_name }}
3635
sycl_toolchain_decompress_command: ${{ needs.ubuntu2204_build.outputs.artifact_decompress_command }}
3736
extra_cmake_args: -DDPCPP_FLAGS=-fsycl-use-spirv-backend-for-spirv-gen
37+
sycl_cts_artifact: sycl_cts_bin
3838

3939
run-sycl-cts:
4040
needs: [ubuntu2204_build, build-sycl-cts]

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ on:
1010
paths-ignore:
1111
- '.github/ISSUE_TEMPLATE/**'
1212
- '.github/CODEOWNERS'
13+
- 'sycl/cts_exclude_filter/**'
1314
- 'sycl/doc/**'
1415
- 'sycl/gdb/**'
1516
- 'clang/docs/**'

.github/workflows/sycl-windows-run-tests.yml

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ on:
66
name:
77
type: string
88
required: True
9+
910
runner:
1011
type: string
1112
required: True
@@ -27,19 +28,17 @@ on:
2728
Extra options to be added to LIT_OPTS.
2829
type: string
2930
default: ''
30-
ref:
31+
32+
repo_ref:
3133
type: string
3234
required: False
35+
description: |
36+
Commit SHA or branch to checkout the intel/llvm repo.
3337
devops_ref:
3438
type: string
3539
required: False
3640
description: |
37-
By default we checkout the devops directory from "inputs.ref" branch.
38-
devops_ref may be specified to checkout the devops dir from different
39-
branch.
40-
Note: it doesn't affect ./devops/actions/run-tests/* as these actions
41-
call checkout again and therefore override the devops directory, so
42-
configs/dependecies from input.ref are used.
41+
Commit SHA or branch to checkout the devops directory.
4342
tests_ref:
4443
type: string
4544
required: False
@@ -104,7 +103,7 @@ jobs:
104103
with:
105104
sparse-checkout: |
106105
devops/actions
107-
ref: ${{ inputs.devops_ref|| inputs.ref || github.sha }}
106+
ref: ${{ inputs.devops_ref|| inputs.repo_ref || github.sha }}
108107
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756
109108
with:
110109
arch: amd64
@@ -122,7 +121,7 @@ jobs:
122121
if: inputs.tests_selector == 'e2e'
123122
with:
124123
path: llvm
125-
ref: ${{ inputs.ref || github.sha }}
124+
ref: ${{ inputs.repo_ref || github.sha }}
126125
cache_path: "D:\\\\github\\\\_work\\\\repo_cache\\\\"
127126
- name: Download compiler toolchain
128127
uses: actions/download-artifact@v4

.github/workflows/ur-benchmarks-reusable.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
name: Benchmarks Reusable
22

33
# This workflow is a WIP: This workflow file acts as a placeholder.
4+
#
5+
# This workflow is set to be merged into benchmark.yml
46

57
on: [ workflow_call ]
68

.github/workflows/ur-benchmarks.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
name: Benchmarks
22

33
# This workflow is a WIP: this workflow file acts as a placeholder.
4+
#
5+
# This workflow is set to be merged into benchmark.yml
46

57
on: [ workflow_dispatch ]
68

.github/workflows/ur-source-checks.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ jobs:
3333
if: matrix.os == 'ubuntu-22.04'
3434
run: |
3535
sudo apt-get update
36-
sudo apt-get install -y doxygen
36+
sudo apt-get install -y doxygen libhwloc-dev
3737
3838
- name: "[Win] Install doxygen"
3939
if: matrix.os == 'windows-2022'
@@ -53,7 +53,6 @@ jobs:
5353
-DCMAKE_BUILD_TYPE=Debug
5454
-DUR_BUILD_TESTS=OFF
5555
-DUR_FORMAT_CPP_STYLE=ON
56-
-DUMF_DISABLE_HWLOC=ON
5756
5857
# Verifying license should be enough on a single OS
5958
- name: Verify that each source file contains a license

clang/include/clang/Basic/Attr.td

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1616,12 +1616,12 @@ def SYCLType: InheritableAttr {
16161616
let Subjects = SubjectList<[CXXRecord, Enum], ErrorDiag>;
16171617
let LangOpts = [SYCLIsDevice, SilentlyIgnoreSYCLIsHost];
16181618
let Args = [EnumArgument<"Type", "SYCLType", /*is_string=*/true,
1619-
["accessor", "local_accessor", "work_group_memory",
1619+
["accessor", "local_accessor", "work_group_memory", "dynamic_work_group_memory",
16201620
"specialization_id", "kernel_handler", "buffer_location",
16211621
"no_alias", "accessor_property_list", "group",
16221622
"private_memory", "aspect", "annotated_ptr", "annotated_arg",
16231623
"stream", "sampler", "host_pipe", "multi_ptr"],
1624-
["accessor", "local_accessor", "work_group_memory",
1624+
["accessor", "local_accessor", "work_group_memory", "dynamic_work_group_memory",
16251625
"specialization_id", "kernel_handler", "buffer_location",
16261626
"no_alias", "accessor_property_list", "group",
16271627
"private_memory", "aspect", "annotated_ptr", "annotated_arg",

clang/include/clang/Basic/LangOptions.def

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,10 @@ LANGOPT(
318318
"SYCL compiler assumes value fits within MAX_INT for member function of "
319319
"get/operator[], get_id/operator[] and get_global_id/get_global_linear_id "
320320
"in SYCL class id, iterm and nd_iterm")
321+
LANGOPT(SYCLCUDACompat, 1, 0,
322+
"Enable CUDA definitions and implicit includes when building for the "
323+
"NVPTX backend. This mode can help SYCL program to run using the CUDA "
324+
"infrastructure on Nvidia's platforms. ")
321325
ENUM_LANGOPT(SYCLRangeRounding, SYCLRangeRoundingPreference, 2,
322326
SYCLRangeRoundingPreference::On,
323327
"Preference for SYCL parallel_for range rounding")

clang/include/clang/Driver/Options.td

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7094,6 +7094,13 @@ defm sycl_decompose_functor
70947094
NegFlag<SetFalse, [], [ClangOption, CLOption], "Do not">,
70957095
BothFlags<[], [ClangOption, CLOption, CC1Option],
70967096
" decompose SYCL functor if possible (experimental, CUDA only)">>;
7097+
defm sycl_cuda_compat
7098+
: BoolFOption<"sycl-cuda-compatibility", LangOpts<"SYCLCUDACompat">, DefaultFalse,
7099+
PosFlag<SetTrue, [], [ClangOption, CLOption, CC1Option], "Enable CUDA compatibility mode (experimental). "
7100+
"Enable the use of CUDA device code with SYCL device code. "
7101+
"Under this mode, a SYCL device function can call a CUDA device function (but not the other way around). "
7102+
"This implies the definition of CUDA macros and the inclusion of implicit header files.">,
7103+
NegFlag<SetFalse, [], [ClangOption, CLOption, CC1Option], "Disable CUDA compatibility mode.">>;
70977104
def flink_huge_device_code : Flag<["-"], "flink-huge-device-code">,
70987105
HelpText<"Generate and use a custom linker script for huge device code "
70997106
"sections">;

0 commit comments

Comments
 (0)