Skip to content

Commit 8641e7f

Browse files
committed
rebase
Created using spr 1.3.4
2 parents 4e34bfe + 3de88fe commit 8641e7f

File tree

232 files changed

+18429
-3093
lines changed

Some content is hidden

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

232 files changed

+18429
-3093
lines changed

bolt/runtime/hugify.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
//
77
//===---------------------------------------------------------------------===//
88

9-
#if defined(__x86_64__) || \
10-
(defined(__aarch64__) || defined(__arm64__)) && !defined(__APPLE__)
9+
#if (defined(__x86_64__) || defined(__aarch64__) || defined(__arm64__)) && \
10+
!defined(__APPLE__)
1111

1212
#include "common.h"
1313

clang/cmake/caches/Fuchsia-stage2.cmake

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -459,7 +459,6 @@ set(LLVM_TOOLCHAIN_TOOLS
459459
llvm-libtool-darwin
460460
llvm-lipo
461461
llvm-ml
462-
llvm-mt
463462
llvm-nm
464463
llvm-objcopy
465464
llvm-objdump
@@ -481,6 +480,10 @@ set(LLVM_TOOLCHAIN_TOOLS
481480
scan-build-py
482481
CACHE STRING "")
483482

483+
if (LLVM_ENABLE_LIBXML2)
484+
list(APPEND LLVM_TOOLCHAIN_TOOLS llvm-mt)
485+
endif()
486+
484487
set(LLVM_Toolchain_DISTRIBUTION_COMPONENTS
485488
bolt
486489
clang

clang/docs/ReleaseNotes.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -402,6 +402,7 @@ Bug Fixes in This Version
402402
when using the ``INTn_C`` macros. (#GH85995)
403403
- Fixed an assertion failure in the expansion of builtin macros like ``__has_embed()`` with line breaks before the
404404
closing paren. (#GH133574)
405+
- Fixed a crash in error recovery for expressions resolving to templates. (#GH135621)
405406
- Clang no longer accepts invalid integer constants which are too large to fit
406407
into any (standard or extended) integer type when the constant is unevaluated.
407408
Merely forming the token is sufficient to render the program invalid. Code
@@ -457,7 +458,6 @@ Bug Fixes to C++ Support
457458
by template argument deduction.
458459
- Clang is now better at instantiating the function definition after its use inside
459460
of a constexpr lambda. (#GH125747)
460-
- Fixed a local class member function instantiation bug inside dependent lambdas. (#GH59734), (#GH132208)
461461
- Clang no longer crashes when trying to unify the types of arrays with
462462
certain differences in qualifiers (this could happen during template argument
463463
deduction or when building a ternary operator). (#GH97005)
@@ -545,7 +545,7 @@ Arm and AArch64 Support
545545
^^^^^^^^^^^^^^^^^^^^^^^
546546
- For ARM targets, cc1as now considers the FPU's features for the selected CPU or Architecture.
547547
- The ``+nosimd`` attribute is now fully supported for ARM. Previously, this had no effect when being used with
548-
ARM targets, however this will now disable NEON instructions being generated. The ``simd`` option is
548+
ARM targets, however this will now disable NEON instructions being generated. The ``simd`` option is
549549
also now printed when the ``--print-supported-extensions`` option is used.
550550

551551
- Support for __ptrauth type qualifier has been added.

clang/include/clang/AST/OpenACCClause.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -430,6 +430,11 @@ class OpenACCSelfClause final
430430
}
431431

432432
bool isConditionExprClause() const { return HasConditionExpr.has_value(); }
433+
bool isVarListClause() const { return !isConditionExprClause(); }
434+
bool isEmptySelfClause() const {
435+
return (isConditionExprClause() && !hasConditionExpr()) ||
436+
(!isConditionExprClause() && getVarList().empty());
437+
}
433438

434439
bool hasConditionExpr() const {
435440
assert(HasConditionExpr.has_value() &&

clang/include/clang/Basic/BuiltinsNVPTX.td

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -580,6 +580,15 @@ def __nvvm_f2bf16_rz : NVPTXBuiltinSMAndPTX<"__bf16(float)", SM_80, PTX70>;
580580
def __nvvm_f2bf16_rz_relu : NVPTXBuiltinSMAndPTX<"__bf16(float)", SM_80, PTX70>;
581581

582582
def __nvvm_f2tf32_rna : NVPTXBuiltinSMAndPTX<"int32_t(float)", SM_80, PTX70>;
583+
def __nvvm_f2tf32_rna_satfinite : NVPTXBuiltinSMAndPTX<"int32_t(float)", SM_89, PTX81>;
584+
def __nvvm_f2tf32_rn : NVPTXBuiltinSMAndPTX<"int32_t(float)", SM_90, PTX78>;
585+
def __nvvm_f2tf32_rn_relu : NVPTXBuiltinSMAndPTX<"int32_t(float)", SM_90, PTX78>;
586+
def __nvvm_f2tf32_rn_satfinite : NVPTXBuiltinSMAndPTX<"int32_t(float)", SM_100, PTX86>;
587+
def __nvvm_f2tf32_rn_relu_satfinite : NVPTXBuiltinSMAndPTX<"int32_t(float)", SM_100, PTX86>;
588+
def __nvvm_f2tf32_rz : NVPTXBuiltinSMAndPTX<"int32_t(float)", SM_90, PTX78>;
589+
def __nvvm_f2tf32_rz_relu : NVPTXBuiltinSMAndPTX<"int32_t(float)", SM_90, PTX78>;
590+
def __nvvm_f2tf32_rz_satfinite : NVPTXBuiltinSMAndPTX<"int32_t(float)", SM_100, PTX86>;
591+
def __nvvm_f2tf32_rz_relu_satfinite : NVPTXBuiltinSMAndPTX<"int32_t(float)", SM_100, PTX86>;
583592

584593
def __nvvm_ff_to_e4m3x2_rn : NVPTXBuiltinSMAndPTX<"short(float, float)", SM_89, PTX81>;
585594
def __nvvm_ff_to_e4m3x2_rn_relu : NVPTXBuiltinSMAndPTX<"short(float, float)", SM_89, PTX81>;
@@ -596,6 +605,28 @@ def __nvvm_e4m3x2_to_f16x2_rn_relu : NVPTXBuiltinSMAndPTX<"_Vector<2, __fp16>(sh
596605
def __nvvm_e5m2x2_to_f16x2_rn : NVPTXBuiltinSMAndPTX<"_Vector<2, __fp16>(short)", SM_89, PTX81>;
597606
def __nvvm_e5m2x2_to_f16x2_rn_relu : NVPTXBuiltinSMAndPTX<"_Vector<2, __fp16>(short)", SM_89, PTX81>;
598607

608+
def __nvvm_ff_to_e2m3x2_rn_satfinite : NVPTXBuiltinSMAndPTX<"short(float, float)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
609+
def __nvvm_ff_to_e2m3x2_rn_relu_satfinite : NVPTXBuiltinSMAndPTX<"short(float, float)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
610+
def __nvvm_ff_to_e3m2x2_rn_satfinite : NVPTXBuiltinSMAndPTX<"short(float, float)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
611+
def __nvvm_ff_to_e3m2x2_rn_relu_satfinite : NVPTXBuiltinSMAndPTX<"short(float, float)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
612+
613+
def __nvvm_e2m3x2_to_f16x2_rn : NVPTXBuiltinSMAndPTX<"_Vector<2, __fp16>(short)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
614+
def __nvvm_e2m3x2_to_f16x2_rn_relu : NVPTXBuiltinSMAndPTX<"_Vector<2, __fp16>(short)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
615+
def __nvvm_e3m2x2_to_f16x2_rn : NVPTXBuiltinSMAndPTX<"_Vector<2, __fp16>(short)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
616+
def __nvvm_e3m2x2_to_f16x2_rn_relu : NVPTXBuiltinSMAndPTX<"_Vector<2, __fp16>(short)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
617+
618+
def __nvvm_ff_to_ue8m0x2_rz : NVPTXBuiltinSMAndPTX<"short(float, float)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
619+
def __nvvm_ff_to_ue8m0x2_rz_satfinite : NVPTXBuiltinSMAndPTX<"short(float, float)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
620+
def __nvvm_ff_to_ue8m0x2_rp : NVPTXBuiltinSMAndPTX<"short(float, float)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
621+
def __nvvm_ff_to_ue8m0x2_rp_satfinite : NVPTXBuiltinSMAndPTX<"short(float, float)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
622+
623+
def __nvvm_bf16x2_to_ue8m0x2_rz : NVPTXBuiltinSMAndPTX<"short(_Vector<2, __bf16>)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
624+
def __nvvm_bf16x2_to_ue8m0x2_rz_satfinite : NVPTXBuiltinSMAndPTX<"short(_Vector<2, __bf16>)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
625+
def __nvvm_bf16x2_to_ue8m0x2_rp : NVPTXBuiltinSMAndPTX<"short(_Vector<2, __bf16>)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
626+
def __nvvm_bf16x2_to_ue8m0x2_rp_satfinite : NVPTXBuiltinSMAndPTX<"short(_Vector<2, __bf16>)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
627+
628+
def __nvvm_ue8m0x2_to_bf16x2 : NVPTXBuiltinSMAndPTX<"_Vector<2, __bf16>(short)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
629+
599630
// FNS
600631
let Attributes = [NoThrow] in {
601632
def __nvvm_fns : NVPTXBuiltinPTX<"unsigned int(unsigned int, unsigned int, int)", PTX60>;

clang/lib/AST/Type.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4401,7 +4401,8 @@ TemplateSpecializationType::TemplateSpecializationType(
44014401
T.getKind() == TemplateName::SubstTemplateTemplateParmPack ||
44024402
T.getKind() == TemplateName::UsingTemplate ||
44034403
T.getKind() == TemplateName::QualifiedTemplate ||
4404-
T.getKind() == TemplateName::DeducedTemplate) &&
4404+
T.getKind() == TemplateName::DeducedTemplate ||
4405+
T.getKind() == TemplateName::AssumedTemplate) &&
44054406
"Unexpected template name for TemplateSpecializationType");
44064407

44074408
auto *TemplateArgs =

0 commit comments

Comments
 (0)