Skip to content

Commit 953585c

Browse files
committed
Merge remote-tracking branch 'my_remote/sycl' into ImproveTempAttrSupport
2 parents eaabb18 + f295e78 commit 953585c

15 files changed

+244
-186
lines changed

buildbot/configure.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,12 @@ def do_configure(args):
1717
sycl_dir = os.path.join(abs_src_dir, "sycl")
1818
spirv_dir = os.path.join(abs_src_dir, "llvm-spirv")
1919
xpti_dir = os.path.join(abs_src_dir, "xpti")
20+
xptifw_dir = os.path.join(abs_src_dir, "xptifw")
2021
libdevice_dir = os.path.join(abs_src_dir, "libdevice")
2122
ocl_header_dir = os.path.join(abs_obj_dir, "OpenCL-Headers")
2223
icd_loader_lib = os.path.join(abs_obj_dir, "OpenCL-ICD-Loader", "build")
2324
llvm_targets_to_build = 'X86'
24-
llvm_enable_projects = 'clang;llvm-spirv;sycl;opencl-aot;xpti;libdevice'
25+
llvm_enable_projects = 'clang;llvm-spirv;sycl;opencl-aot;xpti;xptifw;libdevice'
2526
libclc_targets_to_build = ''
2627
sycl_build_pi_cuda = 'OFF'
2728
sycl_werror = 'ON'
@@ -63,10 +64,12 @@ def do_configure(args):
6364
"-DCMAKE_BUILD_TYPE={}".format(args.build_type),
6465
"-DLLVM_ENABLE_ASSERTIONS={}".format(llvm_enable_assertions),
6566
"-DLLVM_TARGETS_TO_BUILD={}".format(llvm_targets_to_build),
66-
"-DLLVM_EXTERNAL_PROJECTS=sycl;llvm-spirv;opencl-aot;xpti;libdevice",
67+
"-DLLVM_EXTERNAL_PROJECTS=sycl;llvm-spirv;opencl-aot;xpti;xptifw;libdevice",
6768
"-DLLVM_EXTERNAL_SYCL_SOURCE_DIR={}".format(sycl_dir),
6869
"-DLLVM_EXTERNAL_LLVM_SPIRV_SOURCE_DIR={}".format(spirv_dir),
6970
"-DLLVM_EXTERNAL_XPTI_SOURCE_DIR={}".format(xpti_dir),
71+
"-DXPTI_SOURCE_DIR={}".format(xpti_dir),
72+
"-DLLVM_EXTERNAL_XPTIFW_SOURCE_DIR={}".format(xptifw_dir),
7073
"-DLLVM_EXTERNAL_LIBDEVICE_SOURCE_DIR={}".format(libdevice_dir),
7174
"-DLLVM_ENABLE_PROJECTS={}".format(llvm_enable_projects),
7275
"-DLIBCLC_TARGETS_TO_BUILD={}".format(libclc_targets_to_build),

buildbot/dependency.conf

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,15 @@ ocl_gpu_rt_ver=21.02.18820
1010
# https://downloadmirror.intel.com/30066/a08/igfx_win10_100.9030.zip
1111
ocl_gpu_rt_ver_win=27.20.100.9030
1212
intel_sycl_ver=build
13-
# https://github.com/oneapi-src/oneTBB/releases/download/v2021.1-beta10/oneapi-tbb-2021.1-beta10-lin.tgz
14-
tbb_ver=2021.1.053
15-
# Binaries can be built from sources following instructions under:
13+
14+
# TBB binaries can be built from sources following instructions under
1615
# https://github.com/oneapi-src/oneTBB/blob/master/cmake/README.md
16+
# or downloaded using links below:
17+
# https://github.com/oneapi-src/oneTBB/releases/download/v2021.1.1/oneapi-tbb-2021.1.1-lin.tgz
18+
tbb_ver=2021.1.053
19+
# https://github.com/oneapi-src/oneTBB/releases/download/v2021.1.1/oneapi-tbb-2021.1.1-win.zip
1720
tbb_ver_win=2021.1.049
21+
1822
# https://github.com/intel/llvm/releases/download/2020-WW45/fpgaemu-2020.11.11.0.04_rel.tar.gz
1923
ocl_fpga_emu_ver=2020.11.11.0.04
2024
# https://github.com/intel/llvm/releases/download/2020-WW45/win-fpgaemu-2020.11.11.0.04_rel.zip

clang/test/SemaSYCL/sycl-device-intel-max-work-group-size-template.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ int main() {
3838
// CHECK: ClassTemplateDecl {{.*}} {{.*}} KernelFunctor
3939
// CHECK: ClassTemplateSpecializationDecl {{.*}} {{.*}} class KernelFunctor definition
4040
// CHECK: CXXRecordDecl {{.*}} {{.*}} implicit class KernelFunctor
41-
// SYCLIntelMaxWorkGroupSizeAttr {{.*}}
41+
// CHECK: SYCLIntelMaxWorkGroupSizeAttr {{.*}}
4242
// CHECK: SubstNonTypeTemplateParmExpr {{.*}}
4343
// CHECK-NEXT: NonTypeTemplateParmDecl {{.*}}
4444
// CHECK-NEXT: IntegerLiteral{{.*}}4{{$}}
@@ -49,7 +49,7 @@ int main() {
4949
// CHECK-NEXT: NonTypeTemplateParmDecl {{.*}}
5050
// CHECK-NEXT: IntegerLiteral{{.*}}4{{$}}
5151

52-
// Test that checks template parameter suppport on function.
52+
// Test that checks template parameter support on function.
5353
template <int N, int N1, int N2>
5454
[[intel::max_work_group_size(N, N1, N2)]] void func3() {}
5555

@@ -61,7 +61,7 @@ int check() {
6161
// CHECK: FunctionTemplateDecl {{.*}} {{.*}} func3
6262
// CHECK: NonTypeTemplateParmDecl {{.*}} {{.*}} referenced 'int' depth 0 index 0 N
6363
// CHECK: FunctionDecl {{.*}} {{.*}} func3 'void ()'
64-
// SYCLIntelMaxWorkGroupSizeAttr {{.*}}
64+
// CHECK: SYCLIntelMaxWorkGroupSizeAttr {{.*}}
6565
// CHECK: SubstNonTypeTemplateParmExpr {{.*}}
6666
// CHECK-NEXT: NonTypeTemplateParmDecl {{.*}}
6767
// CHECK-NEXT: IntegerLiteral{{.*}}8{{$}}

clang/test/SemaSYCL/sycl-device-intel-reqd-work-group-size-template.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ int main() {
4949
// CHECK-NEXT: NonTypeTemplateParmDecl {{.*}}
5050
// CHECK-NEXT: IntegerLiteral{{.*}}1{{$}}
5151

52-
// Test that checks template parameter suppport on function.
52+
// Test that checks template parameter support on function.
5353
template <int N, int N1, int N2>
5454
[[intel::reqd_work_group_size(N, N1, N2)]] void func3() {}
5555

clang/test/SemaSYCL/sycl-device-reqd-work-group-size-template.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ int main() {
4949
// CHECK-NEXT: NonTypeTemplateParmDecl {{.*}}
5050
// CHECK-NEXT: IntegerLiteral{{.*}}1{{$}}
5151

52-
// Test that checks template parameter suppport on function.
52+
// Test that checks template parameter support on function.
5353
template <int N, int N1, int N2>
5454
[[cl::reqd_work_group_size(N, N1, N2)]] void func3() {}
5555

sycl/CMakeLists.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,10 @@ if (NOT WIN32)
274274
COMPONENT sycl-headers-extras)
275275
endif()
276276

277+
if (SYCL_ENABLE_XPTI_TRACING)
278+
set(XPTIFW_LIBS xptifw)
279+
endif()
280+
277281
# SYCL toolchain builds all components: compiler, libraries, headers, etc.
278282
add_custom_target( sycl-toolchain
279283
DEPENDS ${SYCL_RT_LIBS}
@@ -291,6 +295,7 @@ add_custom_target( sycl-toolchain
291295
llvm-objcopy
292296
sycl-post-link
293297
sycl-ls
298+
${XPTIFW_LIBS}
294299
COMMENT "Building SYCL compiler toolchain..."
295300
)
296301

@@ -352,6 +357,7 @@ set( SYCL_TOOLCHAIN_DEPLOY_COMPONENTS
352357
pi_opencl
353358
pi_level_zero
354359
libsycldevice
360+
${XPTIFW_LIBS}
355361
)
356362
if(OpenCL_INSTALL_KHRONOS_ICD_LOADER AND TARGET ocl-icd)
357363
list(APPEND SYCL_TOOLCHAIN_DEPLOY_COMPONENTS opencl-icd)

sycl/doc/GetStartedGuide.md

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -207,35 +207,37 @@ run the following commands
207207
/etc/OpenCL/vendors/intel_expcpu.icd
208208
```
209209

210-
3) Extract TBB libraries. For example, for the archive tbb-<tbb_version>-lin.tgz
210+
3) Extract or build TBB libraries using links in
211+
[the dependency configuration file](../../buildbot/dependency.conf). For example,
212+
for the archive oneapi-tbb-<tbb_version>-lin.tgz:
211213

212214
```bash
213-
mkdir -p /opt/intel/tbb_<tbb_version>
214-
cd /opt/intel/tbb_<tbb_version>
215-
tar -zxvf tbb*lin.tgz
215+
mkdir -p /opt/intel
216+
cd /opt/intel
217+
tar -zxvf oneapi-tbb*lin.tgz
216218
```
217219

218220
4) Copy files from or create symbolic links to TBB libraries in OpenCL RT
219221
folder:
220222

221223
```bash
222224
# OpenCL FPGA emulation RT
223-
ln -s /opt/intel/tbb_<tbb_version>/tbb/lib/intel64/gcc4.8/libtbb.so
225+
ln -s /opt/intel/oneapi-tbb-<tbb_version>/lib/intel64/gcc4.8/libtbb.so
224226
/opt/intel/oclfpgaemu_<fpga_version>/x64
225-
ln -s /opt/intel/tbb_<tbb_version>/tbb/lib/intel64/gcc4.8/libtbbmalloc.so
227+
ln -s /opt/intel/oneapi-tbb-<tbb_version>/lib/intel64/gcc4.8/libtbbmalloc.so
226228
/opt/intel/oclfpgaemu_<fpga_version>/x64
227-
ln -s /opt/intel/tbb_<tbb_version>/tbb/lib/intel64/gcc4.8/libtbb.so.12
229+
ln -s /opt/intel/oneapi-tbb-<tbb_version>/lib/intel64/gcc4.8/libtbb.so.12
228230
/opt/intel/oclfpgaemu_<fpga_version>/x64
229-
ln -s /opt/intel/tbb_<tbb_version>/tbb/lib/intel64/gcc4.8/libtbbmalloc.so.2
231+
ln -s /opt/intel/oneapi-tbb-<tbb_version>/lib/intel64/gcc4.8/libtbbmalloc.so.2
230232
/opt/intel/oclfpgaemu_<fpga_version>/x64
231233
# OpenCL CPU RT
232-
ln -s /opt/intel/tbb_<tbb_version>/tbb/lib/intel64/gcc4.8/libtbb.so
234+
ln -s /opt/intel/oneapi-tbb-<tbb_version>/lib/intel64/gcc4.8/libtbb.so
233235
/opt/intel/oclcpuexp_<cpu_version>/x64
234-
ln -s /opt/intel/tbb_<tbb_version>/tbb/lib/intel64/gcc4.8/libtbbmalloc.so
236+
ln -s /opt/intel/oneapi-tbb-<tbb_version>/lib/intel64/gcc4.8/libtbbmalloc.so
235237
/opt/intel/oclcpuexp_<cpu_version>/x64
236-
ln -s /opt/intel/tbb_<tbb_version>/tbb/lib/intel64/gcc4.8/libtbb.so.12
238+
ln -s /opt/intel/oneapi-tbb-<tbb_version>/lib/intel64/gcc4.8/libtbb.so.12
237239
/opt/intel/oclcpuexp_<cpu_version>/x64
238-
ln -s /opt/intel/tbb_<tbb_version>/tbb/lib/intel64/gcc4.8/libtbbmalloc.so.2
240+
ln -s /opt/intel/oneapi-tbb-<tbb_version>/lib/intel64/gcc4.8/libtbbmalloc.so.2
239241
/opt/intel/oclcpuexp_<cpu_version>/x64
240242
```
241243

@@ -262,9 +264,9 @@ not working properly.
262264
[the dependency configuration file](../../buildbot/dependency.conf). For
263265
example, to `c:\oclcpu_rt_<cpu_version>`.
264266

265-
3) Extract the archive with TBB runtime using links in
266-
[the dependency configuration file](../../buildbot/dependency.conf). For
267-
example, to `c:\tbb_<tbb_version>`.
267+
3) Extract the archive with TBB runtime or build it from sources using links
268+
in [the dependency configuration file](../../buildbot/dependency.conf). For
269+
example, to `c:\oneapi-tbb-<tbb_version>`.
268270

269271
4) Run `Command Prompt` as `Administrator`. To do that click `Start` button,
270272
type `Command Prompt`, click the Right mouse button on it, then click
@@ -278,10 +280,10 @@ command:
278280
```bash
279281
# Install OpenCL FPGA emulation RT
280282
# Answer N to clean previous OCL_ICD_FILENAMES configuration
281-
c:\oclfpga_rt_<fpga_version>\install.bat c:\tbb_<tbb_version>\tbb\bin\intel64\vc14
283+
c:\oclfpga_rt_<fpga_version>\install.bat c:\oneapi-tbb-<tbb_version>\redist\intel64\vc14
282284
# Install OpenCL CPU RT
283285
# Answer Y to setup CPU RT side-bi-side with FPGA RT
284-
c:\oclcpu_rt_<cpu_version>\install.bat c:\tbb_<tbb_version>\tbb\bin\intel64\vc14
286+
c:\oclcpu_rt_<cpu_version>\install.bat c:\oneapi-tbb-<tbb_version>\redist\intel64\vc14
285287
```
286288
287289
### Obtain prerequisites for ahead of time (AOT) compilation

0 commit comments

Comments
 (0)