Skip to content

Commit 00da882

Browse files
committed
Merge branch 'sycl' into remove_outdated_templates
* sycl: (108 commits) [SYCL][XPTI] Revisit resource management strategy (intel#4494) [SYCL][ESIMD] Fix misprint: ESIMD_L1_FLUASH_RO_DATA -> ESIMD_L1_FLUSH_RO_DATA (intel#4681) [SYCL] Make kernel_bundle interop more conformant (intel#4672) [SYCL] Submission with kernel parameter ignores set kernel bundle (intel#4667) [SYCL] Add support for std::byte to vec class (intel#4637) [BuildBot] Uplift CPU/FPGAEMU RT version for CI Process (intel#4671) [SYCL] Fix an error on host when big image is used on opencl:gpu (intel#4668) [SYCL] Exclude exported symbols from kernel bundles (intel#4660) Revert "[SYCL] Allow overriding plugin libraries (intel#4067)" (intel#4659) [SYCL] Handle exceptions on mutually exclusive handler operations (intel#4639) [sycl-post-link] Don't split module if function pointer has a user that's not CallInst (intel#4657) [SYCL][HIP] Fix MemBufferFill for nvidia platform (intel#4629) [SYCL][Doc] Describe DPC++ CUDA install w/ non-standard toolkit loc (intel#4663) [SYCL] Fix device code instrumentation (intel#4615) Remove myself as a code owner (intel#4653) [SYCL] Fix overwriting insert to sub_group_mask (intel#4656) [x86][Matrix] Replace packed_a with row_major in matrix testcases (intel#4641) [SYCL][Doc] Add device global extension spec (intel#4233) [sycl-post-link] Adds property listing exported functions (intel#4626) [Driver][SYCL] Do not consider non-archive files for FPGA binary checks (intel#4644) ...
2 parents a2e9d60 + c91b3b8 commit 00da882

File tree

559 files changed

+11383
-5838
lines changed

Some content is hidden

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

559 files changed

+11383
-5838
lines changed

.github/CODEOWNERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
* @bader
22

33
# Front-end compiler
4-
clang/ @premanandrao @elizabethandrews @AaronBallman
4+
clang/ @premanandrao @elizabethandrews
55

66
# Driver
77
clang/**/Driver @mdtoguchi @AGindinson @hchilama

.github/workflows/linux_post_commit.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,11 @@ jobs:
7878
run: |
7979
python3 $GITHUB_WORKSPACE/src/buildbot/check.py -w $GITHUB_WORKSPACE \
8080
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t check-llvm-spirv
81+
- name: check-xptifw
82+
if: always()
83+
run: |
84+
python3 $GITHUB_WORKSPACE/src/buildbot/check.py -w $GITHUB_WORKSPACE \
85+
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t check-xptifw
8186
- name: Pack
8287
run: tar -czvf llvm_sycl.tar.gz -C $GITHUB_WORKSPACE/build/install .
8388
- name: Upload artifacts

buildbot/configure.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ def do_configure(args):
4040
llvm_enable_lld = 'OFF'
4141

4242
sycl_enable_xpti_tracing = 'ON'
43+
xpti_enable_werror = 'ON'
4344

4445
if args.ci_defaults:
4546
print("#############################################")
@@ -79,6 +80,7 @@ def do_configure(args):
7980

8081
if args.no_werror:
8182
sycl_werror = 'OFF'
83+
xpti_enable_werror = 'OFF'
8284

8385
if args.no_assertions:
8486
llvm_enable_assertions = 'OFF'
@@ -123,7 +125,8 @@ def do_configure(args):
123125
"-DBUILD_SHARED_LIBS={}".format(llvm_build_shared_libs),
124126
"-DSYCL_ENABLE_XPTI_TRACING={}".format(sycl_enable_xpti_tracing),
125127
"-DLLVM_ENABLE_LLD={}".format(llvm_enable_lld),
126-
"-DSYCL_BUILD_PI_ESIMD_CPU={}".format(sycl_build_pi_esimd_cpu)
128+
"-DSYCL_BUILD_PI_ESIMD_CPU={}".format(sycl_build_pi_esimd_cpu),
129+
"-DXPTI_ENABLE_WERROR={}".format(xpti_enable_werror)
127130
]
128131

129132
if args.l0_headers and args.l0_loader:

buildbot/dependency.conf

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
[VERSIONS]
2-
# https://github.com/intel/llvm/releases/download/2021-WW26/oclcpuexp-2021.12.6.0.19_rel.tar.gz
3-
ocl_cpu_rt_ver=2021.12.6.0.19
4-
# https://github.com/intel/llvm/releases/download/2021-WW26/win-oclcpuexp-2021.12.6.0.19_rel.zip
5-
ocl_cpu_rt_ver_win=2021.12.6.0.19
2+
# https://github.com/intel/llvm/releases/download/2021-WW40/oclcpuexp-2021.12.9.0.24_rel.tar.gz
3+
ocl_cpu_rt_ver=2021.12.9.0.24
4+
# https://github.com/intel/llvm/releases/download/2021-WW40/win-oclcpuexp-2021.12.9.0.24_rel.zip
5+
ocl_cpu_rt_ver_win=2021.12.9.0.24
66
# Same GPU driver supports Level Zero and OpenCL
77
# https://github.com/intel/compute-runtime/releases/tag/21.37.20939
88
ocl_gpu_rt_ver=21.37.20939
@@ -14,26 +14,26 @@ intel_sycl_ver=build
1414
# TBB binaries can be built from sources following instructions under
1515
# https://github.com/oneapi-src/oneTBB/blob/master/cmake/README.md
1616
# or downloaded using links below:
17-
# https://github.com/oneapi-src/oneTBB/releases/download/v2021.2.0/oneapi-tbb-2021.2.0-lin.tgz
18-
tbb_ver=2021.3.0.418
19-
# https://github.com/oneapi-src/oneTBB/releases/download/v2021.2.0/oneapi-tbb-2021.2.0-win.zip
20-
tbb_ver_win=2021.3.0.418
17+
# https://github.com/oneapi-src/oneTBB/releases/download/v2021.3.0/oneapi-tbb-2021.3.0-lin.tgz
18+
tbb_ver=2021.4.0.569
19+
# https://github.com/oneapi-src/oneTBB/releases/download/v2021.3.0/oneapi-tbb-2021.3.0-win.zip
20+
tbb_ver_win=2021.4.0.561
2121

22-
# https://github.com/intel/llvm/releases/download/2021-WW26/fpgaemu-2021.12.6.0.19_rel.tar.gz
23-
ocl_fpga_emu_ver=2021.12.6.0.19
24-
# https://github.com/intel/llvm/releases/download/2021-WW26/win-fpgaemu-2021.12.6.0.19_rel.zip
25-
ocl_fpga_emu_ver_win=2021.12.6.0.19
26-
fpga_ver=20210519_000004
27-
fpga_ver_win=20210509_000006
22+
# https://github.com/intel/llvm/releases/download/2021-WW40/fpgaemu-2021.12.9.0.24_rel.tar.gz
23+
ocl_fpga_emu_ver=2021.12.9.0.24
24+
# https://github.com/intel/llvm/releases/download/2021-WW40/win-fpgaemu-2021.12.9.0.24_rel.zip
25+
ocl_fpga_emu_ver_win=2021.12.9.0.24
26+
fpga_ver=20210805_000004
27+
fpga_ver_win=20210805_000004
2828
ocloc_ver_win=27.20.100.9168
2929

3030
[DRIVER VERSIONS]
31-
cpu_driver_lin=2021.12.6.0.19
32-
cpu_driver_win=2021.12.6.0.19
31+
cpu_driver_lin=2021.12.9.0.24
32+
cpu_driver_win=2021.12.9.0.24
3333
gpu_driver_lin=21.37.20939
3434
gpu_driver_win=30.0.100.9864
35-
fpga_driver_lin=2021.12.6.0.19
36-
fpga_driver_win=2021.12.6.0.19
35+
fpga_driver_lin=2021.12.9.0.24
36+
fpga_driver_win=2021.12.9.0.24
3737
# NVidia CUDA driver
3838
# TODO provide URL for CUDA driver
3939
nvidia_gpu_driver_lin=435.21

clang-tools-extra/clangd/InlayHints.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -366,6 +366,12 @@ std::vector<InlayHint> inlayHints(ParsedAST &AST) {
366366
std::vector<InlayHint> Results;
367367
InlayHintVisitor Visitor(Results, AST);
368368
Visitor.TraverseAST(AST.getASTContext());
369+
370+
// De-duplicate hints. Duplicates can sometimes occur due to e.g. explicit
371+
// template instantiations.
372+
llvm::sort(Results);
373+
Results.erase(std::unique(Results.begin(), Results.end()), Results.end());
374+
369375
return Results;
370376
}
371377

clang-tools-extra/clangd/Protocol.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1326,6 +1326,14 @@ llvm::json::Value toJSON(const InlayHint &H) {
13261326
return llvm::json::Object{
13271327
{"range", H.range}, {"kind", H.kind}, {"label", H.label}};
13281328
}
1329+
bool operator==(const InlayHint &A, const InlayHint &B) {
1330+
return std::tie(A.kind, A.range, A.label) ==
1331+
std::tie(B.kind, B.range, B.label);
1332+
}
1333+
bool operator<(const InlayHint &A, const InlayHint &B) {
1334+
return std::tie(A.kind, A.range, A.label) <
1335+
std::tie(B.kind, B.range, B.label);
1336+
}
13291337

13301338
static const char *toString(OffsetEncoding OE) {
13311339
switch (OE) {

clang-tools-extra/clangd/Protocol.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1548,6 +1548,8 @@ struct InlayHint {
15481548
std::string label;
15491549
};
15501550
llvm::json::Value toJSON(const InlayHint &);
1551+
bool operator==(const InlayHint &, const InlayHint &);
1552+
bool operator<(const InlayHint &, const InlayHint &);
15511553

15521554
struct ReferenceContext {
15531555
/// Include the declaration of the current symbol.

clang-tools-extra/clangd/unittests/InlayHintTests.cpp

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -612,6 +612,18 @@ TEST(TypeHints, DefaultTemplateArgs) {
612612
ExpectedHint{": A<float>", "var"});
613613
}
614614

615+
TEST(TypeHints, Deduplication) {
616+
assertTypeHints(R"cpp(
617+
template <typename T>
618+
void foo() {
619+
auto $var[[var]] = 42;
620+
}
621+
template void foo<int>();
622+
template void foo<float>();
623+
)cpp",
624+
ExpectedHint{": int", "var"});
625+
}
626+
615627
// FIXME: Low-hanging fruit where we could omit a type hint:
616628
// - auto x = TypeName(...);
617629
// - auto x = (TypeName) (...);
@@ -625,4 +637,4 @@ TEST(TypeHints, DefaultTemplateArgs) {
625637

626638
} // namespace
627639
} // namespace clangd
628-
} // namespace clang
640+
} // namespace clang

clang/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -709,6 +709,7 @@ if (CLANG_ENABLE_BOOTSTRAP)
709709
CMAKE_CXX_COMPILER_LAUNCHER
710710
CMAKE_MAKE_PROGRAM
711711
CMAKE_OSX_ARCHITECTURES
712+
CMAKE_BUILD_TYPE
712713
LLVM_ENABLE_PROJECTS
713714
LLVM_ENABLE_RUNTIMES)
714715

clang/cmake/modules/AddClang.cmake

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -100,12 +100,7 @@ macro(add_clang_library name)
100100
# The Xcode generator doesn't handle object libraries correctly.
101101
list(APPEND LIBTYPE OBJECT)
102102
endif()
103-
if (NOT EXCLUDE_FROM_ALL)
104-
# Only include libraries that don't have EXCLUDE_FROM_ALL set. This
105-
# ensure that the clang static analyzer libraries are not compiled
106-
# as part of clang-shlib if CLANG_ENABLE_STATIC_ANALYZER=OFF.
107-
set_property(GLOBAL APPEND PROPERTY CLANG_STATIC_LIBS ${name})
108-
endif()
103+
set_property(GLOBAL APPEND PROPERTY CLANG_STATIC_LIBS ${name})
109104
endif()
110105
llvm_add_library(${name} ${LIBTYPE} ${ARG_UNPARSED_ARGUMENTS} ${srcs})
111106

@@ -115,11 +110,8 @@ macro(add_clang_library name)
115110
endif()
116111

117112
foreach(lib ${libs})
118-
if(TARGET ${lib})
113+
if(TARGET ${lib})
119114
target_link_libraries(${lib} INTERFACE ${LLVM_COMMON_LIBS})
120-
if (EXCLUDE_FROM_ALL)
121-
continue()
122-
endif()
123115

124116
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ARG_INSTALL_WITH_TOOLCHAIN)
125117
get_target_export_arg(${name} Clang export_to_clangtargets UMBRELLA clang-libraries)

0 commit comments

Comments
 (0)