Skip to content

Commit 000b3a4

Browse files
committed
Merge branch 'sycl' into change-MAX_MEMORY_BANDWIDTH-device-query-to-int64
2 parents 259ed04 + d160d75 commit 000b3a4

File tree

236 files changed

+4022
-1194
lines changed

Some content is hidden

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

236 files changed

+4022
-1194
lines changed

Diff for: .github/CODEOWNERS

+16
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,22 @@ sycl/doc/design/spirv-extensions/ @intel/dpcpp-spirv-doc-reviewers
3535
sycl/doc/extensions/ @intel/dpcpp-specification-reviewers
3636

3737
# Unified Runtime
38+
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
43+
unified-runtime/*/adapters/cuda/ @intel/llvm-reviewers-cuda
44+
unified-runtime/*/adapters/hip/ @intel/llvm-reviewers-cuda
45+
unified-runtime/*/adapters/native_cpu/ @intel/dpcpp-nativecpu-reviewers
46+
unified-runtime/source/adapters/**/command_buffer.* @intel/sycl-graphs-reviewers
47+
unified-runtime/scripts/core/EXP-COMMAND-BUFFER.rst @intel/sycl-graphs-reviewers
48+
unified-runtime/scripts/core/exp-command-buffer.yml @intel/sycl-graphs-reviewers
49+
unified-runtime/test/conformance/exp_command_buffer** @intel/sycl-graphs-reviewers
50+
unified-runtime/source/adapters/**/image.* @intel/bindless-images-reviewers
51+
unified-runtime/scripts/core/EXP-BINDLESS-IMAGES.rst @intel/bindless-images-reviewers
52+
unified-runtime/scripts/core/exp-bindless-images.yml @intel/bindless-images-reviewers
53+
unified-runtime/test/conformance/exp_bindless_images** @intel/bindless-images-reviewers
3854
sycl/cmake/modules/FetchUnifiedRuntime.cmake @intel/unified-runtime-reviewers
3955
sycl/cmake/modules/UnifiedRuntimeTag.cmake @intel/unified-runtime-reviewers
4056
sycl/include/sycl/detail/ur.hpp @intel/unified-runtime-reviewers

Diff for: .github/workflows/coverity.yml

+82
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
name: Coverity
2+
on:
3+
workflow_dispatch:
4+
schedule:
5+
- cron: '0 0 * * 0'
6+
7+
permissions: read-all
8+
9+
jobs:
10+
coverity:
11+
name: Coverity
12+
runs-on: [Linux, build]
13+
container:
14+
image: ghcr.io/intel/llvm/ubuntu2404_intel_drivers:alldeps
15+
options: -u 1001:1001
16+
17+
steps:
18+
- uses: actions/checkout@v4
19+
with:
20+
sparse-checkout: |
21+
devops/actions
22+
23+
- name: Register cleanup after job is finished
24+
uses: ./devops/actions/cleanup
25+
26+
- uses: ./devops/actions/cached_checkout
27+
with:
28+
path: src
29+
ref: ${{ github.sha }}
30+
cache_path: "/__w/repo_cache/"
31+
32+
- name: Get coverity tool
33+
run: |
34+
wget https://scan.coverity.com/download/linux64 --post-data "token=${{ secrets.COVERITY_TOKEN }}&project=intel%2Fllvm" -O coverity_tool.tgz
35+
tar -xf coverity_tool.tgz
36+
37+
- name: Configure
38+
env:
39+
CC: gcc
40+
CXX: g++
41+
CUDA_LIB_PATH: "/usr/local/cuda/lib64/stubs"
42+
run: |
43+
mkdir -p $GITHUB_WORKSPACE/build
44+
cd $GITHUB_WORKSPACE/build
45+
python3 $GITHUB_WORKSPACE/src/buildbot/configure.py -w $GITHUB_WORKSPACE \
46+
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t Release \
47+
--ci-defaults --hip --cuda \
48+
--cmake-opt="-DNATIVECPU_USE_OCK=Off" \
49+
--cmake-opt="-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=SPIRV"
50+
51+
- name: Build with coverity
52+
run: $GITHUB_WORKSPACE/cov-analysis-linux64-*/bin/cov-build --dir cov-int cmake --build $GITHUB_WORKSPACE/build
53+
54+
- name: Compress results
55+
run: tar -czf intel_llvm.tgz cov-int
56+
57+
- name: Submit build
58+
run: |
59+
# Initialize a build. Fetch a cloud upload url.
60+
curl -X POST \
61+
-d version="sycl: ${{ github.sha }}" \
62+
-d description="Regular build" \
63+
-d email=${{ secrets.COVERITY_EMAIL }} \
64+
-d token=${{ secrets.COVERITY_TOKEN }} \
65+
-d file_name="intel_llvm.tgz" \
66+
https://scan.coverity.com/projects/31090/builds/init \
67+
| tee response
68+
69+
# Store response data to use in later stages.
70+
upload_url=$(jq -r '.url' response)
71+
build_id=$(jq -r '.build_id' response)
72+
73+
# Upload the tarball to the Cloud.
74+
curl -X PUT \
75+
--header 'Content-Type: application/json' \
76+
--upload-file $PWD/intel_llvm.tgz \
77+
$upload_url
78+
79+
# Trigger the build on Scan.
80+
curl -X PUT \
81+
-d token=${{ secrets.COVERITY_TOKEN }} \
82+
https://scan.coverity.com/projects/31090/builds/$build_id/enqueue

Diff for: .github/workflows/trivy.yml

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# This workflow performs a trivy check of docker config files.
2+
3+
name: Trivy
4+
5+
on:
6+
pull_request:
7+
paths:
8+
- 'devops/containers/**'
9+
- 'devops/.trivyignore.yaml'
10+
- '.github/workflows/trivy.yml'
11+
workflow_dispatch:
12+
13+
jobs:
14+
build:
15+
name: Trivy
16+
runs-on: ubuntu-latest
17+
steps:
18+
- name: Checkout code
19+
uses: actions/checkout@v4
20+
with:
21+
sparse-checkout: devops
22+
23+
# There is a github action, but for some reason it ignores ignore-file.
24+
- name: Install Trivy
25+
run: |
26+
curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh
27+
./bin/trivy --version
28+
29+
- name: Run Trivy vulnerability scanner
30+
run: ./bin/trivy config --format json --output trivy-report.json --ignorefile=devops/.trivyignore.yaml devops/containers --exit-code 1
31+
32+
- name: Upload report artifact
33+
uses: actions/upload-artifact@v4
34+
with:
35+
name: trivy-report
36+
path: trivy-report.json
37+
retention-days: 3

Diff for: clang/lib/Driver/ToolChains/SYCL.cpp

+18-3
Original file line numberDiff line numberDiff line change
@@ -611,7 +611,13 @@ SYCL::getDeviceLibraries(const Compilation &C, const llvm::Triple &TargetTriple,
611611
{"libsycl-asan-cpu", "internal"},
612612
{"libsycl-asan-dg2", "internal"},
613613
{"libsycl-asan-pvc", "internal"}};
614-
const SYCLDeviceLibsList SYCLDeviceMsanLibs = {{"libsycl-msan", "internal"}};
614+
const SYCLDeviceLibsList SYCLDeviceMsanLibs = {
615+
{"libsycl-msan", "internal"},
616+
{"libsycl-msan-cpu", "internal"},
617+
// Currently, we only provide aot msan libdevice for PVC and CPU.
618+
// For DG2, we just use libsycl-msan as placeholder.
619+
{"libsycl-msan", "internal"},
620+
{"libsycl-msan-pvc", "internal"}};
615621
#endif
616622

617623
const SYCLDeviceLibsList SYCLNativeCpuDeviceLibs = {
@@ -769,7 +775,7 @@ SYCL::getDeviceLibraries(const Compilation &C, const llvm::Triple &TargetTriple,
769775
if (SanitizeVal == "address")
770776
addSingleLibrary(SYCLDeviceAsanLibs[sanitizer_lib_idx]);
771777
else if (SanitizeVal == "memory")
772-
addLibraries(SYCLDeviceMsanLibs);
778+
addSingleLibrary(SYCLDeviceMsanLibs[sanitizer_lib_idx]);
773779
#endif
774780

775781
if (isNativeCPU)
@@ -2055,9 +2061,18 @@ void SYCLToolChain::AddImpliedTargetArgs(const llvm::Triple &Triple,
20552061
if (Args.hasFlag(options::OPT_ftarget_export_symbols,
20562062
options::OPT_fno_target_export_symbols, false))
20572063
BeArgs.push_back("-library-compilation");
2058-
} else if (IsJIT)
2064+
// -foffload-fp32-prec-[sqrt/div]
2065+
if (Args.hasArg(options::OPT_foffload_fp32_prec_div) ||
2066+
Args.hasArg(options::OPT_foffload_fp32_prec_sqrt))
2067+
BeArgs.push_back("-ze-fp32-correctly-rounded-divide-sqrt");
2068+
} else if (IsJIT) {
20592069
// -ftarget-compile-fast JIT
20602070
Args.AddLastArg(BeArgs, options::OPT_ftarget_compile_fast);
2071+
// -foffload-fp32-prec-div JIT
2072+
Args.AddLastArg(BeArgs, options::OPT_foffload_fp32_prec_div);
2073+
// -foffload-fp32-prec-sqrt JIT
2074+
Args.AddLastArg(BeArgs, options::OPT_foffload_fp32_prec_sqrt);
2075+
}
20612076
if (IsGen) {
20622077
for (auto [DeviceName, BackendArgStr] : PerDeviceArgs) {
20632078
CmdArgs.push_back("-device_options");

Diff for: clang/test/Driver/sycl-device-lib-old-model.cpp

+23
Original file line numberDiff line numberDiff line change
@@ -355,3 +355,26 @@
355355
// SYCL_DEVICE_MSAN_MACRO-SAME: "USE_SYCL_DEVICE_MSAN"
356356
// SYCL_DEVICE_MSAN_MACRO: llvm-link{{.*}} "-only-needed"
357357
// SYCL_DEVICE_MSAN_MACRO-SAME: "{{.*}}libsycl-msan.bc"
358+
359+
/// ###########################################################################
360+
/// test behavior of linking libsycl-msan-pvc for PVC target AOT compilation when msan flag is applied.
361+
// RUN: %clangxx -fsycl -fsycl-targets=intel_gpu_pvc --no-offload-new-driver %s --sysroot=%S/Inputs/SYCL \
362+
// RUN: -Xarch_device -fsanitize=memory -### 2>&1 | FileCheck %s -check-prefix=SYCL_DEVICE_LIB_MSAN_PVC
363+
// RUN: %clangxx -fsycl -fsycl-targets=spir64_gen -Xsycl-target-backend "-device pvc" --no-offload-new-driver %s \
364+
// RUN: --sysroot=%S/Inputs/SYCL -Xarch_device -fsanitize=memory -### 2>&1 | FileCheck %s -check-prefix=SYCL_DEVICE_LIB_MSAN_PVC
365+
// RUN: %clangxx -fsycl -fsycl-targets=spir64_gen -Xsycl-target-backend=spir64_gen "-device pvc" --no-offload-new-driver %s \
366+
// RUN: --sysroot=%S/Inputs/SYCL -Xarch_device -fsanitize=memory -### 2>&1 | FileCheck %s -check-prefix=SYCL_DEVICE_LIB_MSAN_PVC
367+
// RUN: %clangxx -fsycl -fsycl-targets=spir64_gen -Xsycl-target-backend "-device 12.60.7" --no-offload-new-driver %s \
368+
// RUN: --sysroot=%S/Inputs/SYCL -Xarch_device -fsanitize=memory -### 2>&1 | FileCheck %s -check-prefix=SYCL_DEVICE_LIB_MSAN_PVC
369+
// RUN: %clangxx -fsycl -fsycl-targets=spir64_gen -Xs "-device 12.60.7" --no-offload-new-driver %s --sysroot=%S/Inputs/SYCL \
370+
// RUN: -Xarch_device -fsanitize=memory -### 2>&1 | FileCheck %s -check-prefix=SYCL_DEVICE_LIB_MSAN_PVC
371+
// SYCL_DEVICE_LIB_MSAN_PVC: llvm-link{{.*}} "{{.*}}libsycl-crt.bc"
372+
// SYCL_DEVICE_LIB_MSAN_PVC-SAME: "{{.*}}libsycl-msan-pvc.bc"
373+
374+
375+
/// ###########################################################################
376+
/// test behavior of linking libsycl-msan-cpu for CPU target AOT compilation when msan flag is applied.
377+
// RUN: %clangxx -fsycl -fsycl-targets=spir64_x86_64 --no-offload-new-driver %s --sysroot=%S/Inputs/SYCL \
378+
// RUN: -Xarch_device -fsanitize=memory -### 2>&1 | FileCheck %s -check-prefix=SYCL_DEVICE_LIB_MSAN_CPU
379+
// SYCL_DEVICE_LIB_MSAN_CPU: llvm-link{{.*}} "{{.*}}libsycl-crt.bc"
380+
// SYCL_DEVICE_LIB_MSAN_CPU-SAME: "{{.*}}libsycl-msan-cpu.bc"

Diff for: clang/test/Driver/sycl-device-lib.cpp

+13
Original file line numberDiff line numberDiff line change
@@ -352,3 +352,16 @@
352352
// SYCL_DEVICE_MSAN_MACRO: "-cc1"
353353
// SYCL_DEVICE_MSAN_MACRO-SAME: "USE_SYCL_DEVICE_MSAN"
354354
// SYCL_DEVICE_MSAN_MACRO: libsycl-msan.new.o
355+
356+
/// test behavior of msan libdevice linking when -fsanitize=memory is available for AOT targets
357+
// RUN: %clangxx -fsycl -fsycl-targets=intel_gpu_pvc --offload-new-driver %s --sysroot=%S/Inputs/SYCL \
358+
// RUN: -fsanitize=memory -### 2>&1 | FileCheck %s -check-prefix=SYCL_DEVICE_LIB_MSAN_PVC
359+
// SYCL_DEVICE_LIB_MSAN_PVC: clang-linker-wrapper{{.*}} "-sycl-device-libraries
360+
// SYCL_DEVICE_LIB_MSAN_PVC-SAME: {{.*}}libsycl-msan-pvc.new.o
361+
362+
/// test behavior of msan libdevice linking when -fsanitize=memory is available for AOT targets
363+
// RUN: %clangxx -fsycl -fsycl-targets=spir64_x86_64 --offload-new-driver %s --sysroot=%S/Inputs/SYCL \
364+
// RUN: -fsanitize=memory -### 2>&1 | FileCheck %s -check-prefix=SYCL_DEVICE_LIB_MSAN_CPU
365+
// SYCL_DEVICE_LIB_MSAN_CPU: clang-linker-wrapper{{.*}} "-sycl-device-libraries
366+
// SYCL_DEVICE_LIB_MSAN_CPU-SAME: {{.*}}libsycl-msan-cpu.new.o
367+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// Test SYCL -foffload-fp32-prec-div
2+
3+
// RUN: %clang -### -fsycl --no-offload-new-driver \
4+
// RUN: -fsycl-targets=spir64_gen -foffload-fp32-prec-div %s 2>&1 \
5+
// RUN: | FileCheck -check-prefix=AOT %s
6+
7+
// RUN: %clang -### -fsycl --no-offload-new-driver \
8+
// RUN: -foffload-fp32-prec-div %s 2>&1 \
9+
// RUN: | FileCheck -check-prefix=JIT %s
10+
11+
// AOT: "-ze-fp32-correctly-rounded-divide-sqrt"
12+
13+
// JIT: clang-offload-wrapper{{.*}} "-compile-opts={{.*}}-foffload-fp32-prec-div"

Diff for: clang/test/Driver/sycl-foffload-fp32-prec-div.cpp

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// Test SYCL -foffload-fp32-prec-div
2+
3+
// RUN: %clang -### -fsycl --offload-new-driver \
4+
// RUN: -fsycl-targets=spir64_gen -foffload-fp32-prec-div %s 2>&1 \
5+
// RUN: | FileCheck -check-prefix=AOT %s
6+
7+
// RUN: %clang -### -fsycl --offload-new-driver \
8+
// RUN: -foffload-fp32-prec-div %s 2>&1 \
9+
// RUN: | FileCheck -check-prefix=JIT %s
10+
11+
// AOT: clang-offload-packager{{.*}} "--image=file={{.*}}.bc,triple=spir64_gen-unknown-unknown,arch={{.*}},kind=sycl,compile-opts=-options -ze-fp32-correctly-rounded-divide-sqrt{{.*}}"
12+
13+
// JIT: clang-offload-packager{{.*}} "--image=file={{.*}}.bc,triple=spir64-unknown-unknown,arch={{.*}}compile-opts={{.*}}-foffload-fp32-prec-div"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// Test SYCL -foffload-fp32-prec-sqrt
2+
3+
// RUN: %clang -### -fsycl --no-offload-new-driver \
4+
// RUN: -fsycl-targets=spir64_gen -foffload-fp32-prec-sqrt %s 2>&1 \
5+
// RUN: | FileCheck -check-prefix=AOT %s
6+
7+
// RUN: %clang -### -fsycl --no-offload-new-driver \
8+
// RUN: -foffload-fp32-prec-sqrt %s 2>&1 \
9+
// RUN: | FileCheck -check-prefix=JIT %s
10+
11+
// AOT: "-ze-fp32-correctly-rounded-divide-sqrt"
12+
13+
// JIT: clang-offload-wrapper{{.*}} "-compile-opts={{.*}}-foffload-fp32-prec-sqrt"

Diff for: clang/test/Driver/sycl-foffload-fp32-prec-sqrt.cpp

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// Test SYCL -foffload-fp32-prec-sqrt
2+
3+
// RUN: %clang -### -fsycl --offload-new-driver \
4+
// RUN: -fsycl-targets=spir64_gen -foffload-fp32-prec-sqrt %s 2>&1 \
5+
// RUN: | FileCheck -check-prefix=AOT %s
6+
7+
// RUN: %clang -### -fsycl --offload-new-driver \
8+
// RUN: -foffload-fp32-prec-sqrt %s 2>&1 \
9+
// RUN: | FileCheck -check-prefix=JIT %s
10+
11+
// AOT: clang-offload-packager{{.*}} "--image=file={{.*}}.bc,triple=spir64_gen-unknown-unknown,arch={{.*}},kind=sycl,compile-opts=-options -ze-fp32-correctly-rounded-divide-sqrt{{.*}}"
12+
13+
// JIT: clang-offload-packager{{.*}} "--image=file={{.*}}.bc,triple=spir64-unknown-unknown,arch={{.*}}compile-opts={{.*}}-foffload-fp32-prec-sqrt"

Diff for: clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

+3-5
Original file line numberDiff line numberDiff line change
@@ -47,15 +47,13 @@
4747
#include "llvm/Support/Errc.h"
4848
#include "llvm/Support/FileOutputBuffer.h"
4949
#include "llvm/Support/FileSystem.h"
50-
#include "llvm/Support/FileUtilities.h"
5150
#include "llvm/Support/InitLLVM.h"
5251
#include "llvm/Support/LineIterator.h"
5352
#include "llvm/Support/MemoryBuffer.h"
5453
#include "llvm/Support/Parallel.h"
5554
#include "llvm/Support/Path.h"
5655
#include "llvm/Support/Program.h"
5756
#include "llvm/Support/Signals.h"
58-
#include "llvm/Support/SimpleTable.h"
5957
#include "llvm/Support/SourceMgr.h"
6058
#include "llvm/Support/StringSaver.h"
6159
#include "llvm/Support/TargetSelect.h"
@@ -156,7 +154,7 @@ static std::optional<llvm::module_split::IRSplitMode> SYCLModuleSplitMode;
156154

157155
static bool UseSYCLPostLinkTool;
158156

159-
SmallString<128> SPIRVDumpDir;
157+
static SmallString<128> SPIRVDumpDir;
160158

161159
using OffloadingImage = OffloadBinary::OffloadingImage;
162160

@@ -1480,7 +1478,7 @@ Error extractBundledObjects(StringRef Filename, const ArgList &Args,
14801478
if (Magic == file_magic::spirv_object)
14811479
return createStringError(
14821480
"SPIR-V fat objects must be generated with --offload-new-driver");
1483-
auto Arg = Args.MakeArgString(
1481+
const auto *Arg = Args.MakeArgString(
14841482
"sycl-" +
14851483
(Triple.isSPIROrSPIRV() ? Triple.str() + "-" : Triple.str()) + "=" +
14861484
ObjectFilePath);
@@ -2237,7 +2235,7 @@ DerivedArgList getLinkerArgs(ArrayRef<OffloadFile> Input,
22372235
DAL.AddJoinedArg(nullptr, Tbl.getOption(OPT_triple_EQ),
22382236
Args.MakeArgString(Input.front().getBinary()->getTriple()));
22392237

2240-
auto Bin = Input.front().getBinary();
2238+
const auto *Bin = Input.front().getBinary();
22412239
DAL.AddJoinedArg(
22422240
nullptr, Tbl.getOption(OPT_sycl_backend_compile_options_from_image_EQ),
22432241
Args.MakeArgString(Bin->getString(COMPILE_OPTS)));

Diff for: devops/.trivyignore.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
misconfigurations:
2+
- id: AVD-DS-0001
3+
statement: "We use our own containers, no uncontrolled behavior is expected when the image is updated"
4+
- id: AVD-DS-0026
5+
statement: "Our containers do not provide running services, but only preinstalled tools, there is not much value in adding HEALTHCHECK directives"

Diff for: devops/actions/run-tests/e2e/action.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ runs:
5959
- name: SYCL End-to-end tests
6060
shell: bash {0}
6161
env:
62-
LIT_OPTS: -v --no-progress-bar --show-unsupported --show-pass --show-xfail --max-time 3600 --time-tests --param test-mode=${{ inputs.testing_mode }} --param sycl_devices=${{ inputs.target_devices }} ${{ inputs.extra_lit_opts }}
62+
LIT_OPTS: -v --no-progress-bar --show-unsupported --show-pass --show-xfail --max-time 3600 --time-tests --param print_features=True --param test-mode=${{ inputs.testing_mode }} --param sycl_devices=${{ inputs.target_devices }} ${{ inputs.extra_lit_opts }}
6363
run: |
6464
ninja -C build-e2e check-sycl-e2e > e2e.log 2>&1
6565
exit_code=$?

Diff for: devops/scripts/windows_detect_hung_tests.ps1

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@ $hungTests = Get-Process | Where-Object { ($_.Path -match "llvm\\install") -or (
33
$hungTests | Foreach-Object {
44
$exitCode = 1
55
echo "Test $($_.Path) hung!"
6-
Stop-Process -Force $_
6+
tskill $_.ID
77
}
88
exit $exitCode

Diff for: libclc/generic/lib/common/radians.cl

-2
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@
2323
#include <clc/clc.h>
2424
#include <clc/clcmacro.h>
2525
#include <clc/common/clc_radians.h>
26-
#include <libspirv/spirv.h>
27-
2826

2927
_CLC_DEFINE_UNARY_BUILTIN(float, radians, __clc_radians, float)
3028

Diff for: libclc/generic/lib/common/smoothstep.cl

-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222

2323
#include <clc/clc.h>
2424
#include <clc/clcmacro.h>
25-
#include <libspirv/spirv.h>
2625
#include <clc/common/clc_smoothstep.h>
2726

2827
#define SMOOTHSTEP_SINGLE_DEF(X_TYPE) \

Diff for: libclc/generic/lib/math/mad.inc

-3
This file was deleted.

Diff for: libclc/libspirv/include/libspirv/spirv.h

+1
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@
5858
#include <libspirv/workitem/get_global_size.h>
5959
#include <libspirv/workitem/get_group_id.h>
6060
#include <libspirv/workitem/get_local_id.h>
61+
#include <libspirv/workitem/get_local_linear_id.h>
6162
#include <libspirv/workitem/get_local_size.h>
6263
#include <libspirv/workitem/get_max_sub_group_size.h>
6364
#include <libspirv/workitem/get_num_groups.h>

Diff for: libclc/libspirv/lib/generic/math/mad.inc renamed to libclc/libspirv/include/libspirv/workitem/get_local_linear_id.h

+1-5
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,4 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9-
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __spirv_ocl_mad(__CLC_GENTYPE a,
10-
__CLC_GENTYPE b,
11-
__CLC_GENTYPE c) {
12-
return a * b + c;
13-
}
9+
_CLC_DECL _CLC_OVERLOAD size_t __spirv_LocalInvocationIndex();

0 commit comments

Comments
 (0)