Skip to content

Commit 716c34b

Browse files
authored
merge main into amd-staging (llvm#1163)
2 parents 202d9a7 + 0639201 commit 716c34b

File tree

570 files changed

+8530
-4708
lines changed

Some content is hidden

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

570 files changed

+8530
-4708
lines changed

bolt/lib/Passes/AsmDump.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ void dumpFunction(const BinaryFunction &BF) {
143143
std::move(MCEInstance.MCE), std::move(MAB)));
144144
AsmStreamer->initSections(true, *BC.STI);
145145
std::unique_ptr<TargetMachine> TM(BC.TheTarget->createTargetMachine(
146-
BC.TripleName, "", "", TargetOptions(), std::nullopt));
146+
*BC.TheTriple, "", "", TargetOptions(), std::nullopt));
147147
std::unique_ptr<AsmPrinter> MAP(
148148
BC.TheTarget->createAsmPrinter(*TM, std::move(AsmStreamer)));
149149

clang/AreaTeamMembers.txt

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
This is a list of the current Clang Area Team members.
2+
3+
Chair
4+
-----
5+
Aaron Ballman
6+
[email protected] (email), AaronBallman (Discourse), AaronBallman (GitHub), AaronBallman (Discord)
7+
8+
Secretary
9+
---------
10+
Reid Kleckner
11+
[email protected] (email), rnk (Discourse), rnk (GitHub), rnk (Discord)
12+
13+
Other Members
14+
-------------
15+
Eli Friedman
16+
[email protected]> (email), efriedma-quic (Discourse), efriedma-quic (GitHub)
17+

clang/Maintainers.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ Clang Maintainers
44

55
This file is a list of the
66
`maintainers <https://llvm.org/docs/DeveloperPolicy.html#maintainers>`_ for
7-
Clang.
7+
Clang. The list of current Clang Area Team members can be found
8+
`here <https://github.com/llvm/llvm-project/blob/main/clang/AreaTeamMembers.txt>`_.
89

910
.. contents::
1011
:depth: 2

clang/docs/ReleaseNotes.rst

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -357,8 +357,6 @@ Android Support
357357
Windows Support
358358
^^^^^^^^^^^^^^^
359359

360-
- Clang now supports MSVC vector deleting destructors (GH19772).
361-
362360
LoongArch Support
363361
^^^^^^^^^^^^^^^^^
364362

clang/docs/analyzer/checkers.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3642,6 +3642,12 @@ The goal of this rule is to make sure that lifetime of any dynamically allocated
36423642
36433643
The rules of when to use and not to use CheckedPtr / CheckedRef are same as alpha.webkit.UncountedCallArgsChecker for ref-counted objects.
36443644
3645+
alpha.webkit.UnretainedCallArgsChecker
3646+
""""""""""""""""""""""""""""""""""""""
3647+
The goal of this rule is to make sure that lifetime of any dynamically allocated NS or CF objects passed as a call argument keeps its memory region past the end of the call. This applies to call to any function, method, lambda, function pointer or functor. NS or CF objects aren't supposed to be allocated on stack so we check arguments for parameters of raw pointers and references to unretained types.
3648+
3649+
The rules of when to use and not to use RetainPtr are same as alpha.webkit.UncountedCallArgsChecker for ref-counted objects.
3650+
36453651
alpha.webkit.UncountedLocalVarsChecker
36463652
""""""""""""""""""""""""""""""""""""""
36473653
The goal of this rule is to make sure that any uncounted local variable is backed by a ref-counted object with lifetime that is strictly larger than the scope of the uncounted local variable. To be on the safe side we require the scope of an uncounted variable to be embedded in the scope of ref-counted object that backs it.

clang/include/clang/AST/VTableBuilder.h

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ class VTableComponent {
150150

151151
bool isRTTIKind() const { return isRTTIKind(getKind()); }
152152

153-
GlobalDecl getGlobalDecl(bool HasVectorDeletingDtors) const {
153+
GlobalDecl getGlobalDecl() const {
154154
assert(isUsedFunctionPointerKind() &&
155155
"GlobalDecl can be created only from virtual function");
156156

@@ -161,9 +161,7 @@ class VTableComponent {
161161
case CK_CompleteDtorPointer:
162162
return GlobalDecl(DtorDecl, CXXDtorType::Dtor_Complete);
163163
case CK_DeletingDtorPointer:
164-
return GlobalDecl(DtorDecl, (HasVectorDeletingDtors)
165-
? CXXDtorType::Dtor_VectorDeleting
166-
: CXXDtorType::Dtor_Deleting);
164+
return GlobalDecl(DtorDecl, CXXDtorType::Dtor_Deleting);
167165
case CK_VCallOffset:
168166
case CK_VBaseOffset:
169167
case CK_OffsetToTop:

clang/include/clang/Basic/ABI.h

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,10 @@ enum CXXCtorType {
3131

3232
/// C++ destructor types.
3333
enum CXXDtorType {
34-
Dtor_Deleting, ///< Deleting dtor
35-
Dtor_Complete, ///< Complete object dtor
36-
Dtor_Base, ///< Base object dtor
37-
Dtor_Comdat, ///< The COMDAT used for dtors
38-
Dtor_VectorDeleting ///< Vector deleting dtor
34+
Dtor_Deleting, ///< Deleting dtor
35+
Dtor_Complete, ///< Complete object dtor
36+
Dtor_Base, ///< Base object dtor
37+
Dtor_Comdat ///< The COMDAT used for dtors
3938
};
4039

4140
} // end namespace clang

clang/include/clang/StaticAnalyzer/Checkers/Checkers.td

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1785,6 +1785,10 @@ def UncheckedCallArgsChecker : Checker<"UncheckedCallArgsChecker">,
17851785
HelpText<"Check unchecked call arguments.">,
17861786
Documentation<HasDocumentation>;
17871787

1788+
def UnretainedCallArgsChecker : Checker<"UnretainedCallArgsChecker">,
1789+
HelpText<"Check unretained call arguments.">,
1790+
Documentation<HasDocumentation>;
1791+
17881792
def UncountedLocalVarsChecker : Checker<"UncountedLocalVarsChecker">,
17891793
HelpText<"Check uncounted local variables.">,
17901794
Documentation<HasDocumentation>;

clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,19 +41,19 @@ class BugType {
4141
Checker(nullptr), SuppressOnSink(SuppressOnSink) {}
4242
BugType(const CheckerBase *Checker, StringRef Desc,
4343
StringRef Cat = categories::LogicError, bool SuppressOnSink = false)
44-
: CheckerName(Checker->getCheckerName()), Description(Desc),
45-
Category(Cat), Checker(Checker), SuppressOnSink(SuppressOnSink) {}
44+
: CheckerName(), Description(Desc), Category(Cat), Checker(Checker),
45+
SuppressOnSink(SuppressOnSink) {}
4646
virtual ~BugType() = default;
4747

4848
StringRef getDescription() const { return Description; }
4949
StringRef getCategory() const { return Category; }
5050
StringRef getCheckerName() const {
51-
// FIXME: This is a workaround to ensure that the correct checerk name is
51+
// FIXME: This is a workaround to ensure that the correct checker name is
5252
// used. The checker names are set after the constructors are run.
5353
// In case the BugType object is initialized in the checker's ctor
5454
// the CheckerName field will be empty. To circumvent this problem we use
5555
// CheckerBase whenever it is possible.
56-
StringRef Ret = Checker ? Checker->getCheckerName() : CheckerName;
56+
StringRef Ret = Checker ? Checker->getName() : CheckerName;
5757
assert(!Ret.empty() && "Checker name is not set properly.");
5858
return Ret;
5959
}

clang/include/clang/StaticAnalyzer/Core/Checker.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -490,7 +490,7 @@ class CheckerBase : public ProgramPointTag {
490490

491491
public:
492492
StringRef getTagDescription() const override;
493-
CheckerNameRef getCheckerName() const;
493+
CheckerNameRef getName() const;
494494

495495
/// See CheckerManager::runCheckersForPrintState.
496496
virtual void printState(raw_ostream &Out, ProgramStateRef State,

0 commit comments

Comments
 (0)