Skip to content

Commit ac45d7a

Browse files
author
iclsrc
committed
Merge from 'sycl' to 'sycl-web' (37 commits)
2 parents b819c4e + 64ceadc commit ac45d7a

File tree

143 files changed

+6364
-1083
lines changed

Some content is hidden

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

143 files changed

+6364
-1083
lines changed

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

-2
Original file line numberDiff line numberDiff line change
@@ -111,14 +111,12 @@ jobs:
111111
runner: '["Linux", "pvc"]'
112112
image_options: -u 1001 --device=/dev/dri -v /dev/dri/by-path:/dev/dri/by-path --privileged --cap-add SYS_ADMIN
113113
target_devices: level_zero:gpu;opencl:gpu
114-
extra_lit_opts: -j 50
115114
- name: Dev IGC on Intel Ponte Vecchio GPU
116115
runner: '["Linux", "pvc"]'
117116
image: ghcr.io/intel/llvm/ubuntu2404_intel_drivers:devigc
118117
image_options: -u 1001 --device=/dev/dri -v /dev/dri/by-path:/dev/dri/by-path --privileged --cap-add SYS_ADMIN
119118
target_devices: level_zero:gpu;opencl:gpu
120119
use_igc_dev: true
121-
extra_lit_opts: -j 50
122120
- name: Intel Battlemage Graphics
123121
runner: '["Linux", "bmg"]'
124122
image_options: -u 1001 --device=/dev/dri -v /dev/dri/by-path:/dev/dri/by-path --privileged --cap-add SYS_ADMIN

.github/workflows/sycl-nightly.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -249,7 +249,7 @@ jobs:
249249
uses: ./.github/workflows/sycl-windows-run-tests.yml
250250
with:
251251
name: Build SYCL-CTS for Windows
252-
runner: '["Windows", "build-e2e"]'
252+
runner: '["Windows", "build"]'
253253
cts_testing_mode: 'build-only'
254254
tests_selector: cts
255255
repo_ref: ${{ github.sha }}

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

+1
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ jobs:
117117
with:
118118
name: Intel GEN12 Graphics with Level Zero
119119
runner: '["Windows","gen12"]'
120+
target_devices: "level_zero:gpu"
120121
sycl_toolchain_archive: ${{ needs.build-win.outputs.artifact_archive_name }}
121122
compiler: icx
122123

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

+19
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ on:
2525
description: 'Artifacts retention period'
2626
type: string
2727
default: 3
28+
e2e_binaries_artifact:
29+
type: string
30+
required: false
2831
compiler:
2932
type: string
3033
required: false
@@ -226,6 +229,22 @@ jobs:
226229
name: sycl_windows_default
227230
path: ${{ inputs.artifact_archive_name }}
228231
retention-days: ${{ inputs.retention-days }}
232+
233+
- name: Setup SYCL toolchain
234+
run: |
235+
echo "PATH=$env:GITHUB_WORKSPACE\\install\\bin;$env:PATH" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
236+
echo "LIB=$env:GITHUB_WORKSPACE\\install\\lib;$env:LIB" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
237+
238+
- name: Build E2E tests
239+
if: ${{ inputs.e2e_binaries_artifact && always() && !cancelled() && steps.build.conclusion == 'success' }}
240+
uses: ./devops/actions/run-tests/windows/e2e
241+
with:
242+
ref: ${{ inputs.ref || github.sha }}
243+
testing_mode: build-only
244+
target_devices: all
245+
binaries_artifact: ${{ inputs.e2e_binaries_artifact }}
246+
extra_lit_opts: --param sycl_build_targets="spir"
247+
229248
- name: Detect hung tests
230249
if: always()
231250
shell: powershell

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

+2-16
Original file line numberDiff line numberDiff line change
@@ -49,25 +49,10 @@ jobs:
4949
uses: ./.github/workflows/sycl-windows-build.yml
5050
with:
5151
changes: ${{ needs.detect_changes.outputs.filters }}
52-
53-
build-e2e:
54-
needs: build
55-
# Continue if build was successful.
56-
if: |
57-
always()
58-
&& !cancelled()
59-
&& needs.build.outputs.build_conclusion == 'success'
60-
uses: ./.github/workflows/sycl-windows-run-tests.yml
61-
with:
62-
name: Build Windows E2E tests
63-
runner: '["Windows", "build-e2e"]'
64-
sycl_toolchain_archive: ${{ needs.build.outputs.artifact_archive_name }}
65-
e2e_testing_mode: build-only
66-
extra_lit_opts: --param sycl_build_targets="spir"
6752
e2e_binaries_artifact: sycl_windows_e2ebin
6853

6954
run_prebuilt_e2e_tests:
70-
needs: [build, build-e2e]
55+
needs: build
7156
# Continue if build was successful.
7257
if: |
7358
always()
@@ -85,6 +70,7 @@ jobs:
8570
with:
8671
name: ${{ matrix.name }}
8772
runner: ${{ matrix.runner }}
73+
target_devices: "level_zero:gpu"
8874
sycl_toolchain_archive: ${{ needs.build.outputs.artifact_archive_name }}
8975
e2e_testing_mode: run-only
9076
e2e_binaries_artifact: sycl_windows_e2ebin

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

+11-65
Original file line numberDiff line numberDiff line change
@@ -152,73 +152,19 @@ jobs:
152152
- run: |
153153
sycl-ls --verbose
154154
155-
- name: Download E2E Binaries
156-
if: ${{ inputs.tests_selector == 'e2e' && inputs.e2e_testing_mode == 'run-only' }}
157-
uses: actions/download-artifact@v4
158-
with:
159-
name: ${{ inputs.e2e_binaries_artifact }}
160-
- name: Extract E2E Binaries
161-
if: ${{ inputs.tests_selector == 'e2e' && inputs.e2e_testing_mode == 'run-only' }}
162-
shell: bash
163-
run: |
164-
mkdir build-e2e
165-
tar -xf e2e_bin.tar.gz -C build-e2e
166-
167-
- name: Configure E2E with Level Zero target
168-
if: inputs.tests_selector == 'e2e'
169-
shell: cmd
170-
run: |
171-
mkdir build-e2e
172-
cmake -GNinja -B build-e2e -S.\llvm\sycl\test-e2e -DSYCL_TEST_E2E_TARGETS="level_zero:gpu" -DCMAKE_CXX_COMPILER="clang++" -DLEVEL_ZERO_LIBS_DIR="D:\\github\\level-zero_win-sdk\\lib" -DLEVEL_ZERO_INCLUDE="D:\\github\\level-zero_win-sdk\\include" -DLLVM_LIT="..\\llvm\\llvm\\utils\\lit\\lit.py"
173-
174-
- name: Keep track of files after configuring E2E step
175-
if: ${{ always() && inputs.tests_selector == 'e2e' && inputs.e2e_testing_mode == 'build-only' }}
176-
shell: bash
177-
run: ls build-e2e > e2econf_files.txt
178-
179-
- name: Run End-to-End tests
155+
- name: Run E2E Tests
180156
if: inputs.tests_selector == 'e2e'
181-
shell: bash {0}
182-
env:
183-
LIT_OPTS: -v --no-progress-bar --show-unsupported --show-pass --show-xfail --max-time ${{ inputs.e2e_testing_mode == 'run-only' && 1200 || 3600 }} --time-tests --param print_features=True --param test-mode=${{ inputs.e2e_testing_mode }} ${{ inputs.extra_lit_opts }}
184-
run: |
185-
# Run E2E tests.
186-
if [[ ${{inputs.compiler}} == 'icx' ]]; then
187-
export LIT_FILTER_OUT="compile_on_win_with_mdd"
188-
fi
189-
cmake --build build-e2e --target check-sycl-e2e > e2e.log 2>&1
190-
191-
exit_code=$?
192-
cat e2e.log
193-
if [ $exit_code -ne 0 ]; then
194-
# This is duplicated between lin/win, updates must change both.
195-
awk '/^Failed Tests|Unexpectedly Passed Tests|Unresolved tests|Timed Out Tests|Testing Time/{flag=1}/FAILED: CMakeFiles/{flag=0}flag' e2e.log >> $GITHUB_STEP_SUMMARY
196-
fi
197-
exit $exit_code
198-
199-
# Github CI doesn't support containers on Windows, so we cannot guarantee
200-
# that paths are the same between building and running systems. To avoid
201-
# CMake issues related to absolute paths we reconfigure the build-e2e
202-
# folder on the run system.
203-
- name: Remove E2E configuration files
204-
if: ${{ always() && inputs.tests_selector == 'e2e' && inputs.e2e_testing_mode == 'build-only' }}
205-
shell: bash
206-
run: |
207-
for FILE in $(cat e2econf_files.txt); do rm -r build-e2e/$FILE; done
208-
rm e2econf_files.txt
209-
210-
- name: Pack E2E test binaries
211-
if: ${{ always() && !cancelled() && inputs.tests_selector == 'e2e' && inputs.e2e_testing_mode == 'build-only' }}
212-
shell: bash
213-
run: |
214-
tar -czf e2e_bin.tar.gz -C build-e2e .
215-
- name: Upload E2E test binaries
216-
if: ${{ always() && !cancelled() && inputs.tests_selector == 'e2e' && inputs.e2e_testing_mode == 'build-only' }}
217-
uses: actions/upload-artifact@v4
157+
uses: ./devops/actions/run-tests/windows/e2e
158+
timeout-minutes: 60
218159
with:
219-
name: ${{ inputs.e2e_binaries_artifact }}
220-
path: e2e_bin.tar.gz
221-
retention-days: 3
160+
ref: ${{ inputs.tests_ref || inputs.repo_ref || github.sha }}
161+
binaries_artifact: ${{ inputs.e2e_binaries_artifact }}
162+
testing_mode: ${{ inputs.e2e_testing_mode }}
163+
extra_cmake_args: ${{ inputs.extra_cmake_args }}
164+
target_devices: ${{ inputs.target_devices }}
165+
extra_lit_opts: ${{ inputs.extra_lit_opts }}
166+
retention-days: ${{ inputs.artifact_retention_days }}
167+
compiler: ${{ inputs.compiler }}
222168

223169
- name: Run SYCL CTS Tests
224170
if: inputs.tests_selector == 'cts'

clang/include/clang/Basic/DiagnosticSemaKinds.td

+2
Original file line numberDiff line numberDiff line change
@@ -12845,6 +12845,8 @@ def err_registered_kernels_name_already_registered : Error<
1284512845
"free function kernel has already been registered with '%0'; cannot register with '%1'">;
1284612846
def err_not_sycl_free_function : Error<
1284712847
"attempting to register a function that is not a SYCL free function as '%0'">;
12848+
def err_free_function_variadic_args: Error<
12849+
"free function kernel cannot be a variadic function">;
1284812850

1284912851
// SYCL kernel entry point diagnostics
1285012852
def err_sycl_entry_point_invalid : Error<

clang/lib/Driver/ToolChains/Clang.cpp

-5
Original file line numberDiff line numberDiff line change
@@ -5383,11 +5383,6 @@ static void ProcessVSRuntimeLibrary(const ToolChain &TC, const ArgList &Args,
53835383
CmdArgs.push_back("-D_MT");
53845384
if (Defines & addDLL && !isSPIROrSPIRV)
53855385
CmdArgs.push_back("-D_DLL");
5386-
// for /MDd with spir targets
5387-
if ((Defines & addDLL) && (Defines & addDEBUG) && isSPIROrSPIRV) {
5388-
CmdArgs.push_back("-D_CONTAINER_DEBUG_LEVEL=0");
5389-
CmdArgs.push_back("-D_ITERATOR_DEBUG_LEVEL=0");
5390-
}
53915386
};
53925387
StringRef FlagForCRT;
53935388
switch (RTOptionID) {

0 commit comments

Comments
 (0)