[all-commits] [llvm/llvm-project] 9324cc: Change __builtin_sycl_unique_stable_name to just u...
Erich Keane via All-commits
all-commits at lists.llvm.org
Tue Sep 28 06:41:29 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 9324cc2ca951fe5fe11c85470cb08e699c59499c
https://github.com/llvm/llvm-project/commit/9324cc2ca951fe5fe11c85470cb08e699c59499c
Author: Erich Keane <erich.keane at intel.com>
Date: 2021-09-28 (Tue, 28 Sep 2021)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ItaniumCXXABI.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftCXXABI.cpp
M clang/lib/Sema/SemaSYCL.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/test/CodeGenSYCL/unique_stable_name.cpp
M clang/test/CodeGenSYCL/unique_stable_name_windows_diff.cpp
M clang/test/SemaSYCL/unique_stable_name.cpp
Log Message:
-----------
Change __builtin_sycl_unique_stable_name to just use an Itanium mangling
After significant problems in our downstream with the previous
implementation, the SYCL standard has opted to make using macros/etc to
change kernel-naming-lambdas in any way UB (even passively). As a
result, we are able to just emit the itanium mangling.
However, this DOES require a little work in the CXXABI, as the microsoft
and itanium mangler use different numbering schemes for lambdas. This
patch adds a pair of mangling contexts that use the normal 'itanium'
mangling strategy to fill in the "DeviceManglingNumber" used previously
by CUDA.
Differential Revision: https://reviews.llvm.org/D110281
More information about the All-commits
mailing list