Skip to content

Commit bc36da2

Browse files
authored
Merge branch 'main' into vplan-cost-forced-instr-cost-interleave
2 parents 80fb20c + c77fe58 commit bc36da2

File tree

371 files changed

+11673
-3069
lines changed

Some content is hidden

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

371 files changed

+11673
-3069
lines changed

.github/workflows/libcxx-build-and-test.yaml

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,9 @@ jobs:
223223
source .venv/bin/activate
224224
python -m pip install psutil
225225
xcrun bash libcxx/utils/ci/run-buildbot ${{ matrix.config }}
226+
env:
227+
CC: clang
228+
CXX: clang++
226229
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
227230
if: always() # Upload artifacts even if the build or test suite fails
228231
with:
@@ -241,16 +244,16 @@ jobs:
241244
fail-fast: false
242245
matrix:
243246
include:
244-
- { config: clang-cl-dll, mingw: false }
245-
- { config: clang-cl-static, mingw: false }
246-
- { config: clang-cl-no-vcruntime, mingw: false }
247-
- { config: clang-cl-debug, mingw: false }
248-
- { config: clang-cl-static-crt, mingw: false }
249-
- { config: mingw-dll, mingw: true }
250-
- { config: mingw-static, mingw: true }
251-
- { config: mingw-dll-i686, mingw: true }
252-
- { config: mingw-incomplete-sysroot, mingw: true }
253-
- { config: mingw-static, mingw: true, runner: windows-11-arm }
247+
- { config: clang-cl-dll, mingw: false, cc: clang-cl, cxx: clang-cl }
248+
- { config: clang-cl-static, mingw: false, cc: clang-cl, cxx: clang-cl }
249+
- { config: clang-cl-no-vcruntime, mingw: false, cc: clang-cl, cxx: clang-cl }
250+
- { config: clang-cl-debug, mingw: false, cc: clang-cl, cxx: clang-cl }
251+
- { config: clang-cl-static-crt, mingw: false, cc: clang-cl, cxx: clang-cl }
252+
- { config: mingw-dll, mingw: true, cc: cc, cxx: c++ }
253+
- { config: mingw-dll, mingw: true, cc: i686-w64-mingw32-clang, cxx: i686-w64-mingw32-clang++ }
254+
- { config: mingw-static, mingw: true, cc: cc, cxx: c++ }
255+
- { config: mingw-incomplete-sysroot, mingw: true, cc: cc, cxx: c++ }
256+
- { config: mingw-static, mingw: true, cc: cc, cxx: c++, runner: windows-11-arm }
254257
runs-on: ${{ matrix.runner != '' && matrix.runner || 'windows-2022' }}
255258
steps:
256259
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
@@ -286,5 +289,7 @@ jobs:
286289
run: |
287290
echo "c:\Program Files\LLVM\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
288291
- name: Build and test
289-
run: |
290-
bash libcxx/utils/ci/run-buildbot ${{ matrix.config }}
292+
run: bash libcxx/utils/ci/run-buildbot ${{ matrix.config }}
293+
env:
294+
CC: ${{ matrix.cc }}
295+
CXX: ${{ matrix.cxx }}

.github/workflows/libcxx-check-generated-files.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,6 @@ jobs:
2222

2323
- name: Check generated files
2424
run: libcxx/utils/ci/run-buildbot check-generated-output
25+
env:
26+
CC: cc
27+
CXX: c++

bolt/docs/BAT.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ Functions table:
6161

6262
### Functions table
6363
Hot and cold functions tables share the encoding except differences marked below.
64+
6465
Header:
6566
| Entry | Encoding | Description |
6667
| ------ | ----- | ----------- |

clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ class ExpandModularHeadersPPCallbacks : public PPCallbacks {
137137
std::unique_ptr<Preprocessor> PP;
138138
bool EnteredMainFile = false;
139139
bool StartedLexing = false;
140-
Token CurrentToken;
140+
Token CurrentToken = Token();
141141
};
142142

143143
} // namespace tooling

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ void FloatLoopCounterCheck::registerMatchers(MatchFinder *Finder) {
3131

3232
void FloatLoopCounterCheck::check(const MatchFinder::MatchResult &Result) {
3333
const auto *FS = Result.Nodes.getNodeAs<ForStmt>("for");
34+
assert(FS && "FS should not be null");
3435

3536
diag(FS->getInc()->getBeginLoc(), "loop induction expression should not have "
3637
"floating-point type")

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ void ProBoundsAvoidUncheckedContainerAccessCheck::check(
176176
}
177177
} else if (const auto *MCE = dyn_cast<CXXMemberCallExpr>(MatchedExpr)) {
178178
// Case: a.operator[](i) or a->operator[](i)
179-
const auto *Callee = dyn_cast<MemberExpr>(MCE->getCallee());
179+
const auto *Callee = cast<MemberExpr>(MCE->getCallee());
180180

181181
if (FixMode == At) {
182182
// Cases: a.operator[](i) => a.at(i) and a->operator[](i) => a->at(i)

clang/docs/ReleaseNotes.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -563,6 +563,7 @@ Bug Fixes to C++ Support
563563
- Fix for clang incorrectly rejecting the default construction of a union with
564564
nontrivial member when another member has an initializer. (#GH81774)
565565
- Fixed a template depth issue when parsing lambdas inside a type constraint. (#GH162092)
566+
- Fix the support of zero-length arrays in SFINAE context. (#GH170040)
566567
- Diagnose unresolved overload sets in non-dependent compound requirements. (#GH51246) (#GH97753)
567568
- Fix a crash when extracting unavailable member type from alias in template deduction. (#GH165560)
568569
- Fix incorrect diagnostics for lambdas with init-captures inside braced initializers. (#GH163498)
@@ -641,6 +642,9 @@ RISC-V Support
641642
- `__GCC_CONSTRUCTIVE_SIZE` and `__GCC_DESTRUCTIVE_SIZE` are changed to 64. These values are
642643
unstable according to `Clang's documentation <https://clang.llvm.org/docs/LanguageExtensions.html#gcc-destructive-size-and-gcc-constructive-size>`_.
643644

645+
- DWARF fission is now compatible with linker relaxations, allowing `-gsplit-dwarf` and `-mrelax`
646+
to be used together when building for the RISC-V platform.
647+
644648
CUDA/HIP Language Changes
645649
^^^^^^^^^^^^^^^^^^^^^^^^^
646650

clang/docs/StandardCPlusPlusModules.rst

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,10 @@ Standard C++ Named modules
2828
In order to better understand the compiler's behavior, it is helpful to
2929
understand some terms and definitions for readers who are not familiar with the
3030
C++ feature. This document is not a tutorial on C++; it only introduces
31-
necessary concepts to better understand use of modules in a project.
31+
necessary concepts to better understand use of modules in a project. Other
32+
resources at `Wikipedia <https://en.wikipedia.org/wiki/Modules_(C++)>`_ and
33+
`cppreference <https://en.cppreference.com/w/cpp/language/modules.html>`_ can
34+
provide more background information about modules if needed.
3235

3336
Background and terminology
3437
--------------------------

clang/include/clang/AST/ASTConsumer.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ namespace clang {
2727
class VarDecl;
2828
class FunctionDecl;
2929
class ImportDecl;
30+
class OpenACCRoutineDecl;
3031

3132
/// ASTConsumer - This is an abstract interface that should be implemented by
3233
/// clients that read ASTs. This abstraction layer allows the client to be
@@ -116,6 +117,11 @@ class ASTConsumer {
116117
// variable has been instantiated.
117118
virtual void HandleCXXStaticMemberVarInstantiation(VarDecl *D) {}
118119

120+
/// Callback to handle the end-of-translation unit attachment of OpenACC
121+
/// routine declaration information.
122+
virtual void HandleOpenACCRoutineReference(const FunctionDecl *FD,
123+
const OpenACCRoutineDecl *RD) {}
124+
119125
/// Callback involved at the end of a translation unit to
120126
/// notify the consumer that a vtable for the given C++ class is
121127
/// required.

clang/include/clang/Basic/Attr.td

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5172,6 +5172,14 @@ def HLSLVkConstantId : InheritableAttr {
51725172
let Documentation = [VkConstantIdDocs];
51735173
}
51745174

5175+
def HLSLVkLocation : HLSLAnnotationAttr {
5176+
let Spellings = [CXX11<"vk", "location">];
5177+
let Args = [IntArgument<"Location">];
5178+
let Subjects = SubjectList<[ParmVar, Field, Function], ErrorDiag>;
5179+
let LangOpts = [HLSL];
5180+
let Documentation = [HLSLVkLocationDocs];
5181+
}
5182+
51755183
def RandomizeLayout : InheritableAttr {
51765184
let Spellings = [GCC<"randomize_layout">];
51775185
let Subjects = SubjectList<[Record]>;

0 commit comments

Comments
 (0)