Skip to content

Commit d891bc0

Browse files
author
Sergey Kanaev
committed
Merge remote-tracking branch 'public/sycl' into fix-cmake-unit-test-win
2 parents 220b40b + 6ac26ad commit d891bc0

File tree

7,806 files changed

+440120
-176866
lines changed

Some content is hidden

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

7,806 files changed

+440120
-176866
lines changed

.github/CODEOWNERS

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@ sycl/doc/extensions/ @intel/dpcpp-specification-reviewers
2828

2929
# Sub-groups
3030
sycl/include/CL/sycl/detail/spirv.hpp @Pennycook @AlexeySachkov
31-
sycl/include/CL/sycl/intel/group_algorithm.hpp @Pennycook @AlexeySachkov
32-
sycl/include/CL/sycl/intel/sub_group.hpp @Pennycook @AlexeySachkov
33-
sycl/include/CL/sycl/intel/sub_group_host.hpp @Pennycook @AlexeySachkov
31+
sycl/include/sycl/ext/intel/group_algorithm.hpp @Pennycook @AlexeySachkov
32+
sycl/include/sycl/ext/intel/sub_group.hpp @Pennycook @AlexeySachkov
33+
sycl/include/sycl/ext/intel/sub_group_host.hpp @Pennycook @AlexeySachkov
3434

3535
# PI API
3636
sycl/include/CL/sycl/detail/pi.def @smaslov-intel
@@ -53,17 +53,17 @@ sycl/source/detail/stream_impl.cpp @againull
5353
sycl/source/stream.cpp @againull
5454

5555
# FPGA extensions
56-
sycl/include/CL/sycl/intel/fpga_device_selector.hpp @MrSidims
57-
sycl/include/CL/sycl/intel/fpga_extensions.hpp @MrSidims
58-
sycl/include/CL/sycl/intel/fpga_reg.hpp @MrSidims
59-
sycl/include/CL/sycl/intel/pipes.hpp @MrSidims
56+
sycl/include/sycl/ext/intel/fpga_device_selector.hpp @MrSidims
57+
sycl/include/sycl/ext/intel/fpga_extensions.hpp @MrSidims
58+
sycl/include/sycl/ext/intel/fpga_reg.hpp @MrSidims
59+
sycl/include/sycl/ext/intel/pipes.hpp @MrSidims
6060
sycl/include/CL/sycl/pipes.hpp @MrSidims
6161

6262
# Reduction extension
63-
sycl/include/CL/sycl/intel/reduction.hpp @v-klochkov
63+
sycl/include/sycl/ext/intel/reduction.hpp @v-klochkov
6464

6565
# Function pointers
66-
sycl/include/CL/sycl/intel/function_pointer.hpp @AlexeySachkov
66+
sycl/include/sycl/ext/intel/function_pointer.hpp @AlexeySachkov
6767
sycl/source/function_pointer.cpp @AlexeySachkov
6868

6969
# Half Type

buildbot/configure.py

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ def do_configure(args):
1515

1616
llvm_external_projects = 'sycl;llvm-spirv;opencl;libdevice;xpti;xptifw'
1717

18+
if args.llvm_external_projects:
19+
llvm_external_projects += ";" + args.llvm_external_projects.replace(",", ";")
20+
1821
llvm_dir = os.path.join(abs_src_dir, "llvm")
1922
sycl_dir = os.path.join(abs_src_dir, "sycl")
2023
spirv_dir = os.path.join(abs_src_dir, "llvm-spirv")
@@ -27,6 +30,7 @@ def do_configure(args):
2730
sycl_build_pi_cuda = 'OFF'
2831
sycl_build_pi_esimd_cpu = 'ON'
2932
sycl_build_pi_rocm = 'OFF'
33+
sycl_build_pi_rocm_platform = 'AMD'
3034
sycl_werror = 'ON'
3135
llvm_enable_assertions = 'ON'
3236
llvm_enable_doxygen = 'OFF'
@@ -40,21 +44,26 @@ def do_configure(args):
4044
if args.arm:
4145
llvm_targets_to_build = 'ARM;AArch64'
4246

47+
if args.disable_esimd_cpu:
48+
sycl_build_pi_esimd_cpu = 'OFF'
49+
50+
if args.cuda or args.rocm:
51+
llvm_enable_projects += ';libclc'
52+
4353
if args.cuda:
4454
llvm_targets_to_build += ';NVPTX'
45-
llvm_enable_projects += ';libclc'
4655
libclc_targets_to_build = 'nvptx64--;nvptx64--nvidiacl'
4756
sycl_build_pi_cuda = 'ON'
4857

49-
if args.disable_esimd_cpu:
50-
sycl_build_pi_esimd_cpu = 'OFF'
51-
5258
if args.rocm:
53-
llvm_targets_to_build += ';AMDGPU'
54-
# TODO libclc should be added once,
55-
# TODO when we build DPC++ with both CUDA and ROCM support
56-
llvm_enable_projects += ';libclc'
57-
libclc_targets_to_build = 'amdgcn--;amdgcn--amdhsa'
59+
if args.rocm_platform == 'AMD':
60+
llvm_targets_to_build += ';AMDGPU'
61+
libclc_targets_to_build += ';amdgcn--;amdgcn--amdhsa'
62+
elif args.rocm_platform == 'NVIDIA' and not args.cuda:
63+
llvm_targets_to_build += ';NVPTX'
64+
libclc_targets_to_build += ';nvptx64--;nvptx64--nvidiacl'
65+
66+
sycl_build_pi_rocm_platform = args.rocm_platform
5867
sycl_build_pi_rocm = 'ON'
5968

6069
if args.no_werror:
@@ -92,6 +101,7 @@ def do_configure(args):
92101
"-DLIBCLC_TARGETS_TO_BUILD={}".format(libclc_targets_to_build),
93102
"-DSYCL_BUILD_PI_CUDA={}".format(sycl_build_pi_cuda),
94103
"-DSYCL_BUILD_PI_ROCM={}".format(sycl_build_pi_rocm),
104+
"-DSYCL_BUILD_PI_ROCM_PLATFORM={}".format(sycl_build_pi_rocm_platform),
95105
"-DLLVM_BUILD_TOOLS=ON",
96106
"-DSYCL_ENABLE_WERROR={}".format(sycl_werror),
97107
"-DCMAKE_INSTALL_PREFIX={}".format(install_dir),
@@ -161,7 +171,8 @@ def main():
161171
parser.add_argument("-t", "--build-type",
162172
metavar="BUILD_TYPE", default="Release", help="build type: Debug, Release")
163173
parser.add_argument("--cuda", action='store_true', help="switch from OpenCL to CUDA")
164-
parser.add_argument("--rocm", action='store_true', help="swith from OpenCL to ROCM")
174+
parser.add_argument("--rocm", action='store_true', help="switch from OpenCL to ROCm")
175+
parser.add_argument("--rocm-platform", type=str, choices=['AMD', 'NVIDIA'], default='AMD', help="choose ROCm backend")
165176
parser.add_argument("--arm", action='store_true', help="build ARM support rather than x86")
166177
parser.add_argument("--disable-esimd-cpu", action='store_true', help="build without ESIMD_CPU support")
167178
parser.add_argument("--no-assertions", action='store_true', help="build without assertions")
@@ -174,6 +185,7 @@ def main():
174185
parser.add_argument("--libcxx-include", metavar="LIBCXX_INCLUDE_PATH", help="libcxx include path")
175186
parser.add_argument("--libcxx-library", metavar="LIBCXX_LIBRARY_PATH", help="libcxx library path")
176187
parser.add_argument("--use-lld", action="store_true", help="Use LLD linker for build")
188+
parser.add_argument("--llvm-external-projects", help="Add external projects to build. Add as comma seperated list.")
177189
args = parser.parse_args()
178190

179191
print("args:{}".format(args))

clang-tools-extra/clang-doc/HTMLGenerator.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -579,8 +579,8 @@ genHTML(const Index &Index, StringRef InfoPath, bool IsOutermostList) {
579579
if (!Index.JumpToSection)
580580
SpanBody->Children.emplace_back(genReference(Index, InfoPath));
581581
else
582-
SpanBody->Children.emplace_back(genReference(
583-
Index, InfoPath, StringRef{Index.JumpToSection.getValue()}));
582+
SpanBody->Children.emplace_back(
583+
genReference(Index, InfoPath, Index.JumpToSection.getValue().str()));
584584
}
585585
if (Index.Children.empty())
586586
return Out;

clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
#include "CopyConstructorInitCheck.h"
1919
#include "DanglingHandleCheck.h"
2020
#include "DynamicStaticInitializersCheck.h"
21+
#include "EasilySwappableParametersCheck.h"
2122
#include "ExceptionEscapeCheck.h"
2223
#include "FoldInitTypeCheck.h"
2324
#include "ForwardDeclarationNamespaceCheck.h"
@@ -91,6 +92,8 @@ class BugproneModule : public ClangTidyModule {
9192
"bugprone-dangling-handle");
9293
CheckFactories.registerCheck<DynamicStaticInitializersCheck>(
9394
"bugprone-dynamic-static-initializers");
95+
CheckFactories.registerCheck<EasilySwappableParametersCheck>(
96+
"bugprone-easily-swappable-parameters");
9497
CheckFactories.registerCheck<ExceptionEscapeCheck>(
9598
"bugprone-exception-escape");
9699
CheckFactories.registerCheck<FoldInitTypeCheck>(

clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ add_clang_library(clangTidyBugproneModule
1313
CopyConstructorInitCheck.cpp
1414
DanglingHandleCheck.cpp
1515
DynamicStaticInitializersCheck.cpp
16+
EasilySwappableParametersCheck.cpp
1617
ExceptionEscapeCheck.cpp
1718
FoldInitTypeCheck.cpp
1819
ForwardDeclarationNamespaceCheck.cpp

0 commit comments

Comments
 (0)