Skip to content

Commit b236f2c

Browse files
committed
Merge remote-tracking branch 'upstream/sycl' into xpti_pi_args
* upstream/sycl: (649 commits) [SYCL][Driver][NFC] Update integration footer test for 32-bit host (#4039) [SYCL][L0] Initialize descriptor .stype and .pNext (#4032) [SYCL] Add sycl::kernel::get_kernel_bundle method (#3855) [SYCL] Add support for device UUID as a SYCL extension. (#3696) [SYCL][Matrix] Add spec document for the matrix extension interface and its first implementation for AMX (#3551) Fix debug build mangler test after PR#3992 (8f38045). (#4033) [Driver][SYCL] Restrict user -include file in final integration footer step (#4036) [SYCL] [Tests] Do not copy device binary image mocks (#4023) [SYCL][Doc] Update docs to reflect new compiler features (#4030) [SYCL][CUDA] cl_khr_fp16 extension connected to cuda PI. (#4029) [SYCL][NFC] Refactor RT unit tests (#4021) [SYCL] Switch to using integration footer by default (#3777) [SYCL][CUDA] Add the Use Default Stream property (#4004) Uplift GPU RT version for Linux to 21.24.20098 (#4003) [SYCL][CUDA] atomic_ref.fetch_add used for fp64 reduction if device.has(atomic64) (#3950) [Driver][SYCL] Differentiate host dependency link from regular host link (#4002) [SYCL][ESIMD] Support device half type in intrinsics. (#4024) [SYCL] Allow fpga_reg only for PODs and Trivially-copyable structs (#3643) [SYCL][FPGA] Restore legacy debug info version for the hardware (#3991) [SYCL][PI][L0] Force reset of memcpy command-list. (#4001) ...
2 parents 47ee4c4 + 9d8e94d commit b236f2c

File tree

2,297 files changed

+136644
-113766
lines changed

Some content is hidden

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

2,297 files changed

+136644
-113766
lines changed

.mailmap

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@
2222
#
2323
# Please keep this file sorted.
2424

25+
26+
2527
2628
2729
@@ -30,3 +32,4 @@ Jon Roelofs <[email protected]> Jon Roelofs <[email protected]>
3032
Jon Roelofs <[email protected]> Jonathan Roelofs <[email protected]>
3133
Jon Roelofs <[email protected]> Jonathan Roelofs <[email protected]>
3234
Martin Storsjö <[email protected]>
35+
Saleem Abdulrasool <[email protected]> <[email protected]>

buildbot/configure.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ def do_configure(args):
2626
libclc_targets_to_build = ''
2727
sycl_build_pi_cuda = 'OFF'
2828
sycl_build_pi_esimd_cpu = 'ON'
29+
sycl_build_pi_rocm = 'OFF'
2930
sycl_werror = 'ON'
3031
llvm_enable_assertions = 'ON'
3132
llvm_enable_doxygen = 'OFF'
@@ -47,6 +48,14 @@ def do_configure(args):
4748

4849
if args.disable_esimd_cpu:
4950
sycl_build_pi_esimd_cpu = 'OFF'
51+
52+
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'
58+
sycl_build_pi_rocm = 'ON'
5059

5160
if args.no_werror:
5261
sycl_werror = 'OFF'
@@ -82,6 +91,7 @@ def do_configure(args):
8291
"-DLLVM_ENABLE_PROJECTS={}".format(llvm_enable_projects),
8392
"-DLIBCLC_TARGETS_TO_BUILD={}".format(libclc_targets_to_build),
8493
"-DSYCL_BUILD_PI_CUDA={}".format(sycl_build_pi_cuda),
94+
"-DSYCL_BUILD_PI_ROCM={}".format(sycl_build_pi_rocm),
8595
"-DLLVM_BUILD_TOOLS=ON",
8696
"-DSYCL_ENABLE_WERROR={}".format(sycl_werror),
8797
"-DCMAKE_INSTALL_PREFIX={}".format(install_dir),
@@ -151,6 +161,7 @@ def main():
151161
parser.add_argument("-t", "--build-type",
152162
metavar="BUILD_TYPE", default="Release", help="build type: Debug, Release")
153163
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")
154165
parser.add_argument("--arm", action='store_true', help="build ARM support rather than x86")
155166
parser.add_argument("--disable-esimd-cpu", action='store_true', help="build without ESIMD_CPU support")
156167
parser.add_argument("--no-assertions", action='store_true', help="build without assertions")

buildbot/dependency.conf

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ ocl_cpu_rt_ver=2021.12.6.0.19
44
# https://github.com/intel/llvm/releases/download/2021-WW26/win-oclcpuexp-2021.12.6.0.19_rel.zip
55
ocl_cpu_rt_ver_win=2021.12.6.0.19
66
# Same GPU driver supports Level Zero and OpenCL
7-
# https://github.com/intel/compute-runtime/releases/tag/21.19.19792
8-
ocl_gpu_rt_ver=21.19.19792
7+
# https://github.com/intel/compute-runtime/releases/tag/21.24.20098
8+
ocl_gpu_rt_ver=21.24.20098
99
# Same GPU driver supports Level Zero and OpenCL
1010
# https://downloadmirror.intel.com/30381/a08/igfx_win10_100.9466.zip
1111
ocl_gpu_rt_ver_win=27.20.100.9466
@@ -30,7 +30,7 @@ ocloc_ver_win=27.20.100.9168
3030
[DRIVER VERSIONS]
3131
cpu_driver_lin=2021.12.6.0.19
3232
cpu_driver_win=2021.12.6.0.19
33-
gpu_driver_lin=21.19.19792
33+
gpu_driver_lin=21.24.20098
3434
gpu_driver_win=27.20.100.9466
3535
fpga_driver_lin=2021.12.6.0.19
3636
fpga_driver_win=2021.12.6.0.19

clang-tools-extra/clang-tidy/ClangTidyCheck.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,11 +150,11 @@ llvm::Optional<int64_t> ClangTidyCheck::OptionsView::getEnumInt(
150150
unsigned EditDistance = 3;
151151
for (const auto &NameAndEnum : Mapping) {
152152
if (IgnoreCase) {
153-
if (Value.equals_lower(NameAndEnum.second))
153+
if (Value.equals_insensitive(NameAndEnum.second))
154154
return NameAndEnum.first;
155155
} else if (Value.equals(NameAndEnum.second)) {
156156
return NameAndEnum.first;
157-
} else if (Value.equals_lower(NameAndEnum.second)) {
157+
} else if (Value.equals_insensitive(NameAndEnum.second)) {
158158
Closest = NameAndEnum.second;
159159
EditDistance = 0;
160160
continue;

clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,9 @@ void KernelNameRestrictionPPCallbacks::InclusionDirective(
7070

7171
bool KernelNameRestrictionPPCallbacks::fileNameIsRestricted(
7272
StringRef FileName) {
73-
return FileName.equals_lower("kernel.cl") ||
74-
FileName.equals_lower("verilog.cl") ||
75-
FileName.equals_lower("vhdl.cl");
73+
return FileName.equals_insensitive("kernel.cl") ||
74+
FileName.equals_insensitive("verilog.cl") ||
75+
FileName.equals_insensitive("vhdl.cl");
7676
}
7777

7878
void KernelNameRestrictionPPCallbacks::EndOfMainFile() {

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,8 +176,8 @@ static bool sameName(StringRef InComment, StringRef InDecl, bool StrictMode) {
176176
return InComment == InDecl;
177177
InComment = InComment.trim('_');
178178
InDecl = InDecl.trim('_');
179-
// FIXME: compare_lower only works for ASCII.
180-
return InComment.compare_lower(InDecl) == 0;
179+
// FIXME: compare_insensitive only works for ASCII.
180+
return InComment.compare_insensitive(InDecl) == 0;
181181
}
182182

183183
static bool looksLikeExpectMethod(const CXXMethodDecl *Expect) {

clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ void PreferMemberInitializerCheck::check(
159159
if (S->getBeginLoc().isMacroID()) {
160160
StringRef MacroName = Lexer::getImmediateMacroName(
161161
S->getBeginLoc(), *Result.SourceManager, getLangOpts());
162-
if (MacroName.contains_lower("assert"))
162+
if (MacroName.contains_insensitive("assert"))
163163
return;
164164
}
165165
if (isControlStatement(S))

clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,8 @@ void StaticAssertCheck::check(const MatchFinder::MatchResult &Result) {
104104

105105
StringRef FalseMacroName =
106106
Lexer::getImmediateMacroName(FalseLiteralLoc, SM, Opts);
107-
if (FalseMacroName.compare_lower("false") == 0 ||
108-
FalseMacroName.compare_lower("null") == 0)
107+
if (FalseMacroName.compare_insensitive("false") == 0 ||
108+
FalseMacroName.compare_insensitive("null") == 0)
109109
return;
110110
}
111111

clang-tools-extra/clang-tidy/readability/InconsistentDeclarationParameterNameCheck.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,8 @@ bool nameMatch(StringRef L, StringRef R, bool Strict) {
9393
return L.empty() || R.empty() || L == R;
9494
// We allow two names if one is a prefix/suffix of the other, ignoring case.
9595
// Important special case: this is true if either parameter has no name!
96-
return L.startswith_lower(R) || R.startswith_lower(L) ||
97-
L.endswith_lower(R) || R.endswith_lower(L);
96+
return L.startswith_insensitive(R) || R.startswith_insensitive(L) ||
97+
L.endswith_insensitive(R) || R.endswith_insensitive(L);
9898
}
9999

100100
DifferingParamsContainer

clang-tools-extra/clang-tidy/readability/UppercaseLiteralSuffixCheck.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ getNewSuffix(llvm::StringRef OldSuffix,
9393
// Else, find matching suffix, case-*insensitive*ly.
9494
auto NewSuffix = llvm::find_if(
9595
NewSuffixes, [OldSuffix](const std::string &PotentialNewSuffix) {
96-
return OldSuffix.equals_lower(PotentialNewSuffix);
96+
return OldSuffix.equals_insensitive(PotentialNewSuffix);
9797
});
9898
// Have a match, return it.
9999
if (NewSuffix != NewSuffixes.end())

clang-tools-extra/clangd/CodeComplete.cpp

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@
6262
#include "llvm/ADT/SmallVector.h"
6363
#include "llvm/ADT/StringExtras.h"
6464
#include "llvm/ADT/StringRef.h"
65+
#include "llvm/Support/Casting.h"
6566
#include "llvm/Support/Compiler.h"
6667
#include "llvm/Support/Debug.h"
6768
#include "llvm/Support/Error.h"
@@ -1679,7 +1680,7 @@ class CodeCompleteFlow {
16791680
C.SemaResult->Kind == CodeCompletionResult::RK_Macro) ||
16801681
(C.IndexResult &&
16811682
C.IndexResult->SymInfo.Kind == index::SymbolKind::Macro)) &&
1682-
!C.Name.startswith_lower(Filter->pattern()))
1683+
!C.Name.startswith_insensitive(Filter->pattern()))
16831684
return None;
16841685
return Filter->match(C.Name);
16851686
}
@@ -1910,6 +1911,13 @@ bool isIndexedForCodeCompletion(const NamedDecl &ND, ASTContext &ASTCtx) {
19101911
if (isExplicitTemplateSpecialization(&ND))
19111912
return false;
19121913

1914+
// Category decls are not useful on their own outside the interface or
1915+
// implementation blocks. Moreover, sema already provides completion for
1916+
// these, even if it requires preamble deserialization. So by excluding them
1917+
// from the index, we reduce the noise in all the other completion scopes.
1918+
if (llvm::isa<ObjCCategoryDecl>(&ND) || llvm::isa<ObjCCategoryImplDecl>(&ND))
1919+
return false;
1920+
19131921
if (InTopLevelScope(ND))
19141922
return true;
19151923

clang-tools-extra/clangd/CompileCommands.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -296,9 +296,9 @@ enum DriverMode : unsigned char {
296296
DriverMode getDriverMode(const std::vector<std::string> &Args) {
297297
DriverMode Mode = DM_GCC;
298298
llvm::StringRef Argv0 = Args.front();
299-
if (Argv0.endswith_lower(".exe"))
299+
if (Argv0.endswith_insensitive(".exe"))
300300
Argv0 = Argv0.drop_back(strlen(".exe"));
301-
if (Argv0.endswith_lower("cl"))
301+
if (Argv0.endswith_insensitive("cl"))
302302
Mode = DM_CL;
303303
for (const llvm::StringRef Arg : Args) {
304304
if (Arg == "--driver-mode=cl") {

clang-tools-extra/clangd/ConfigYAML.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ class Parser {
169169

170170
void parse(Fragment::IndexBlock::ExternalBlock &F,
171171
Located<std::string> ExternalVal) {
172-
if (!llvm::StringRef(*ExternalVal).equals_lower("none")) {
172+
if (!llvm::StringRef(*ExternalVal).equals_insensitive("none")) {
173173
error("Only scalar value supported for External is 'None'",
174174
ExternalVal.Range);
175175
return;

clang-tools-extra/clangd/HeaderSourceSwitch.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ llvm::Optional<Path> getCorrespondingHeaderOrSource(
2727
// Lookup in a list of known extensions.
2828
auto SourceIter =
2929
llvm::find_if(SourceExtensions, [&PathExt](PathRef SourceExt) {
30-
return SourceExt.equals_lower(PathExt);
30+
return SourceExt.equals_insensitive(PathExt);
3131
});
3232
bool IsSource = SourceIter != std::end(SourceExtensions);
3333

3434
auto HeaderIter =
3535
llvm::find_if(HeaderExtensions, [&PathExt](PathRef HeaderExt) {
36-
return HeaderExt.equals_lower(PathExt);
36+
return HeaderExt.equals_insensitive(PathExt);
3737
});
3838
bool IsHeader = HeaderIter != std::end(HeaderExtensions);
3939

clang-tools-extra/clangd/InlayHints.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ class InlayHintVisitor : public RecursiveASTVisitor<InlayHintVisitor> {
156156
return false;
157157

158158
StringRef Name = getSimpleName(*Callee);
159-
if (!Name.startswith_lower("set"))
159+
if (!Name.startswith_insensitive("set"))
160160
return false;
161161

162162
// In addition to checking that the function has one parameter and its
@@ -168,10 +168,10 @@ class InlayHintVisitor : public RecursiveASTVisitor<InlayHintVisitor> {
168168
// This currently doesn't handle cases where params use snake_case
169169
// and functions don't, e.g.
170170
// void setExceptionHandler(EHFunc exception_handler);
171-
// We could improve this by replacing `equals_lower` with some
171+
// We could improve this by replacing `equals_insensitive` with some
172172
// `sloppy_equals` which ignores case and also skips underscores.
173173
StringRef WhatItIsSetting = Name.substr(3).ltrim("_");
174-
return WhatItIsSetting.equals_lower(ParamNames[0]);
174+
return WhatItIsSetting.equals_insensitive(ParamNames[0]);
175175
}
176176

177177
bool shouldHint(const Expr *Arg, StringRef ParamName) {

clang-tools-extra/clangd/Quality.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -378,7 +378,7 @@ static llvm::Optional<llvm::StringRef>
378378
wordMatching(llvm::StringRef Name, const llvm::StringSet<> *ContextWords) {
379379
if (ContextWords)
380380
for (const auto &Word : ContextWords->keys())
381-
if (Name.contains_lower(Word))
381+
if (Name.contains_insensitive(Word))
382382
return Word;
383383
return llvm::None;
384384
}
@@ -552,7 +552,7 @@ evaluateDecisionForest(const SymbolQualitySignals &Quality,
552552
int NumMatch = 0;
553553
if (Relevance.ContextWords) {
554554
for (const auto &Word : Relevance.ContextWords->keys()) {
555-
if (Relevance.Name.contains_lower(Word)) {
555+
if (Relevance.Name.contains_insensitive(Word)) {
556556
++NumMatch;
557557
}
558558
}

clang-tools-extra/clangd/index/SymbolCollector.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,8 @@ class SymbolCollector::HeaderFileURICache {
285285
Line = Line.ltrim();
286286
if (!Line.startswith("error"))
287287
return false;
288-
return Line.contains_lower("includ"); // Matches "include" or "including".
288+
return Line.contains_insensitive(
289+
"includ"); // Matches "include" or "including".
289290
}
290291

291292
// Heuristically headers that only want to be included via an umbrella.

0 commit comments

Comments
 (0)