Skip to content

Commit c330517

Browse files
committed
Merge commit '212a60ec37322f853e91e171b305479b1abff2f2' into cast_cmp
2 parents fbb7e63 + 212a60e commit c330517

File tree

15,010 files changed

+782325
-305959
lines changed

Some content is hidden

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

15,010 files changed

+782325
-305959
lines changed

.ci/generate-buildkite-pipeline-premerge

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,11 @@ set -eu
2121
set -o pipefail
2222

2323
# Environment variables script works with:
24+
25+
# Fetch origin/main to have an up to date merge base for main...HEAD diff.
26+
git fetch origin main:main
2427
# List of files affected by this commit
25-
: ${MODIFIED_FILES:=$(git diff --name-only HEAD~1)}
28+
: ${MODIFIED_FILES:=$(git diff --name-only main...HEAD)}
2629
# Filter rules for generic windows tests
2730
: ${WINDOWS_AGENTS:='{"queue": "windows"}'}
2831
# Filter rules for generic linux tests

.github/CODEOWNERS

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,34 @@
1+
# This file lists reviewers that are auto-assigned when a pull request modifies
2+
# certain files or directories. If you add yourself to this file, you commit to
3+
# reviewing a large fraction of pull requests in the relevant area.
4+
#
5+
# The GitHub "code owners" mechanism is used exclusively to auto-assign
6+
# reviewers and does not carry significance beyond that. It is not necessary
7+
# to receive an approval from a "code owner" in particular -- any LLVM project
8+
# member can approve pull requests.
9+
#
10+
# Note that GitHub's concept of "code owner" is independent from LLVM's own
11+
# "code owner" concept, they merely happen to share terminology. See
12+
# https://llvm.org/docs/DeveloperPolicy.html#code-owners, as well as the
13+
# CODE_OWNERS.txt files in the respective subproject directories.
14+
115
/libcxx/ @llvm/reviewers-libcxx
216
/libcxxabi/ @llvm/reviewers-libcxxabi
317
/libunwind/ @llvm/reviewers-libunwind
418
/runtimes/ @llvm/reviewers-libcxx
19+
20+
/llvm/lib/Analysis/BasicAliasAnalysis.cpp @nikic
21+
/llvm/lib/Analysis/InstructionSimplify.cpp @nikic
22+
/llvm/lib/Analysis/LazyValueInfo.cpp @nikic
23+
/llvm/lib/Analysis/ScalarEvolution.cpp @nikic
24+
/llvm/lib/Analysis/ValueTracking.cpp @nikic
25+
/llvm/lib/IR/ConstantRange.cpp @nikic
26+
/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp @nikic
27+
/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp @nikic
28+
/llvm/lib/Transforms/InstCombine/ @nikic
29+
30+
/clang/test/CXX/drs/ @Endilll
31+
/clang/www/cxx_dr_status.html @Endilll
32+
/clang/www/make_cxx_dr_status @Endilll
33+
34+
/lldb/ @JDevlieghere

.github/new-issues-labeler.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
'libc++':
1111
- '/libc[+x]{2}(?!\-)/i'
1212

13-
'libc++-abi':
14-
- '/libc[+x]{2}-abi/i'
13+
'libc++abi':
14+
- '/libc[+x]{2}-?abi/i'
1515

1616
'libc':
1717
- '/\blibc(?![-+])\b/i'

.github/new-prs-labeler.yml

Lines changed: 46 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
clang:dataflow:
2-
- clang/**/Analysis/**/*
2+
- clang/include/clang/Analysis/FlowSensitive/**/*
3+
- clang/lib/Analysis/FlowSensitive/**/*
4+
- clang/unittests/Analysis/FlowSensitive/**/*
5+
- clang/docs/DataFlowAnalysisIntro.md
6+
- clang/docs/DataFlowAnalysisIntroImages/**/*
37

48
clang:frontend:
59
- clang/lib/AST/**/*
@@ -40,15 +44,6 @@ lld:
4044
llvm-lit:
4145
- llvm/utils/lit/**/*
4246

43-
mlir:afine:
44-
- mlir/**/Affine/**/*
45-
46-
mlir:python:
47-
- mlir/python/**/*
48-
49-
mlir:vectorops:
50-
- mlir/**/Vector/**/*
51-
5247
PGO:
5348
- llvm/lib/Transforms/Instrumentation/CGProfile.cpp
5449
- llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
@@ -263,6 +258,15 @@ mlir:vector:
263258
mlir:execution-engine:
264259
- mlir/**/ExecutionEngine/**
265260

261+
mlir:presburger:
262+
- mlir/**/*Presburger*/**
263+
264+
mlir:python:
265+
- mlir/python/**/*
266+
267+
mlir:vectorops:
268+
- mlir/**/Vector/**/*
269+
266270
coroutines:
267271
- clang/docs/DebuggingCoroutines.rst
268272
- clang/lib/Sema/SemaCoroutine.cpp
@@ -309,10 +313,6 @@ tools:llvm-mca:
309313
- llvm/include/llvm/MCA/**
310314
- llvm/lib/MCA/**
311315

312-
vectorizers:
313-
- llvm/lib/Transforms/Vectorize/**
314-
- llvm/include/llvm/Transforms/Vectorize/**
315-
316316
clang:
317317
- any:
318318
- clang/**
@@ -637,9 +637,6 @@ llvm:regalloc:
637637
- llvm/include/llvm/CodeGen/Spiller.h
638638
- llvm/**/*RegAlloc
639639

640-
mlir:presburger:
641-
- mlir/**/*Presburger
642-
643640
lldb:
644641
- lldb/**
645642

@@ -801,3 +798,35 @@ llvm:binary-utilities:
801798
- llvm/tools/llvm-size/**
802799
- llvm/tools/llvm-strings/**
803800
- llvm/tools/llvm-symbolizer/**
801+
802+
clang:openmp:
803+
- clang/include/clang/Basic/OpenMP*
804+
- clang/include/clang/AST/OpenMPClause.h
805+
- clang/include/clang/AST/DeclOpenMP.h
806+
- clang/include/clang/AST/ExprOpenMP.h
807+
- clang/include/clang/AST/StmtOpenMP.h
808+
- clang/lib/AST/DeclOpenMP.cpp
809+
- clang/lib/AST/OpenMPClause.cpp
810+
- clang/lib/AST/StmtOpenMP.cpp
811+
- clang/lib/Headers/openmp_wrappers/**
812+
- clang/lib/Parse/ParseOpenMP.cpp
813+
- clang/lib/Basic/OpenMPKinds.cpp
814+
- clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
815+
- clang/lib/Driver/ToolChains/AMDGPUOpenMP.h
816+
- clang/lib/CodeGen/CgStmtOpenMP.cpp
817+
- clang/lib/CodeGen/CGOpenMP*
818+
- clang/lib/Sema/SemaOpenMP.cpp
819+
- clang/test/OpenMP/**
820+
- clang/test/AST/ast-dump-openmp-*
821+
- llvm/lib/Frontend/OpenMP/**
822+
- llvm/lib/Transforms/IPO/OpenMPOpt.cpp
823+
- llvm/include/llvm/Frontend/OpenMP/**
824+
- llvm/include/llvm/Transforms/IPO/OpenMPOpt.h
825+
- llvm/unittests/Frontend/OpenMP*
826+
- llvm/test/Transforms/OpenMP/**
827+
828+
openmp:libomp:
829+
- any: ['openmp/**', '!openmp/libomptarget/**']
830+
831+
openmp:libomptarget:
832+
- any: ['openmp/**', '!openmp/runtime/**']

.github/workflows/docs.yml

Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
# LLVM Documentation CI
2+
# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
3+
# See https://llvm.org/LICENSE.txt for license information.
4+
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
5+
6+
name: "Test documentation build"
7+
8+
permissions:
9+
contents: read
10+
11+
on:
12+
push:
13+
branches:
14+
- 'main'
15+
paths:
16+
- 'llvm/docs/**'
17+
- 'clang/docs/**'
18+
- 'clang-tools-extra/docs/**'
19+
- 'lldb/docs/**'
20+
- 'libunwind/docs/**'
21+
- 'libcxx/docs/**'
22+
- 'libc/docs/**'
23+
- 'lld/docs/**'
24+
- 'openmp/docs/**'
25+
- 'polly/docs/**'
26+
- 'flang/docs/**'
27+
pull_request:
28+
paths:
29+
- 'llvm/docs/**'
30+
- 'clang/docs/**'
31+
- 'clang-tools-extra/docs/**'
32+
- 'lldb/docs/**'
33+
- 'libunwind/docs/**'
34+
- 'libcxx/docs/**'
35+
- 'libc/docs/**'
36+
- 'lld/docs/**'
37+
- 'openmp/docs/**'
38+
- 'polly/docs/**'
39+
- 'flang/docs/**'
40+
41+
jobs:
42+
check-docs-build:
43+
name: "Test documentation build"
44+
runs-on: ubuntu-latest
45+
if: github.repository == 'llvm/llvm-project'
46+
steps:
47+
# Don't fetch before checking for file changes to force the file changes
48+
# action to use the Github API in pull requests. If it's a push to a
49+
# branch we can't use the Github API to get the diff, so we need to have
50+
# a local checkout beforehand.
51+
- name: Fetch LLVM sources (Push)
52+
if: ${{ github.event_name == 'push' }}
53+
uses: actions/checkout@v4
54+
with:
55+
fetch-depth: 1
56+
- name: Get subprojects that have doc changes
57+
id: docs-changed-subprojects
58+
uses: tj-actions/changed-files@v39
59+
with:
60+
files_yaml: |
61+
llvm:
62+
- 'llvm/docs/**'
63+
clang:
64+
- 'clang/docs/**'
65+
clang-tools-extra:
66+
- 'clang-tools-extra/docs/**'
67+
lldb:
68+
- 'lldb/docs/**'
69+
libunwind:
70+
- 'libunwind/docs/**'
71+
libcxx:
72+
- 'libcxx/docs/**'
73+
libc:
74+
- 'libc/docs/**'
75+
lld:
76+
- 'lld/docs/**'
77+
openmp:
78+
- 'openmp/docs/**'
79+
polly:
80+
- 'polly/docs/**'
81+
flang:
82+
- 'flang/docs/**'
83+
- name: Fetch LLVM sources (PR)
84+
if: ${{ github.event_name == 'pull_request' }}
85+
uses: actions/checkout@v4
86+
with:
87+
fetch-depth: 1
88+
- name: Setup Python env
89+
uses: actions/setup-python@v4
90+
with:
91+
python-version: '3.11'
92+
cache: 'pip'
93+
cache-dependency-path: 'llvm/docs/requirements.txt'
94+
- name: Install python dependencies
95+
run: pip install -r llvm/docs/requirements.txt
96+
- name: Install system dependencies
97+
run: |
98+
sudo apt-get update
99+
# swig and graphviz are lldb specific dependencies
100+
sudo apt-get install -y cmake ninja-build swig graphviz
101+
- name: Build LLVM docs
102+
if: steps.docs-changed-subprojects.outputs.llvm_any_changed == 'true'
103+
run: |
104+
cmake -B llvm-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_SPHINX=ON ./llvm
105+
TZ=UTC ninja -C llvm-build docs-llvm-html docs-llvm-man
106+
- name: Build Clang docs
107+
if: steps.docs-changed-subprojects.outputs.clang_any_changed == 'true'
108+
run: |
109+
cmake -B clang-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang" -DLLVM_ENABLE_SPHINX=ON ./llvm
110+
TZ=UTC ninja -C clang-build docs-clang-html docs-clang-man
111+
- name: Build clang-tools-extra docs
112+
if: steps.docs-changed-subprojects.outputs.clang-tools-extra_any_changed == 'true'
113+
run: |
114+
cmake -B clang-tools-extra-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra" -DLLVM_ENABLE_SPHINX=ON ./llvm
115+
TZ=UTC ninja -C clang-tools-extra-build docs-clang-tools-html docs-clang-tools-man
116+
- name: Build LLDB docs
117+
if: steps.docs-changed-subprojects.outputs.lldb_any_changed == 'true'
118+
run: |
119+
cmake -B lldb-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;lldb" -DLLVM_ENABLE_SPHINX=ON ./llvm
120+
TZ=UTC ninja -C lldb-build docs-lldb-html docs-lldb-man
121+
- name: Build libunwind docs
122+
if: steps.docs-changed-subprojects.outputs.libunwind_any_changed == 'true'
123+
run: |
124+
cmake -B libunwind-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_RUNTIMES="libunwind" -DLLVM_ENABLE_SPHINX=ON ./runtimes
125+
TZ=UTC ninja -C libunwind-build docs-libunwind-html
126+
- name: Build libcxx docs
127+
if: steps.docs-changed-subprojects.outputs.libcxx_any_changed == 'true'
128+
run: |
129+
cmake -B libcxx-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_RUNTIMES="libcxxabi;libcxx" -DLLVM_ENABLE_SPHINX=ON ./runtimes
130+
TZ=UTC ninja -C libcxx-build docs-libcxx-html
131+
- name: Build libc docs
132+
if: steps.docs-changed-subprojects.outputs.libc_any_changed == 'true'
133+
run: |
134+
cmake -B libc-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_RUNTIMES="libc" -DLLVM_ENABLE_SPHINX=ON ./runtimes
135+
TZ=UTC ninja -C libc-build docs-libc-html
136+
- name: Build LLD docs
137+
if: steps.docs-changed-subprojects.outputs.lld_any_changed == 'true'
138+
run: |
139+
cmake -B lld-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="lld" -DLLVM_ENABLE_SPHINX=ON ./llvm
140+
TZ=UTC ninja -C lld-build docs-lld-html
141+
- name: Build OpenMP docs
142+
if: steps.docs-changed-subprojects.outputs.openmp_any_changed == 'true'
143+
run: |
144+
cmake -B openmp-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;openmp" -DLLVM_ENABLE_SPHINX=ON ./llvm
145+
TZ=UTC ninja -C openmp-build docs-openmp-html
146+
- name: Build Polly docs
147+
if: steps.docs-changed-subprojects.outputs.polly_any_changed == 'true'
148+
run: |
149+
cmake -B polly-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="polly" -DLLVM_ENABLE_SPHINX=ON ./llvm
150+
TZ=UTC ninja -C polly-build docs-polly-html docs-polly-man
151+
- name: Build Flang docs
152+
if: steps.docs-changed-subprojects.outputs.flang_any_changed == 'true'
153+
# TODO(boomanaiden154): Remove the SPHINX_WARNINGS_AS_ERRORS from the
154+
# CMake invocation once the warnings in the flang docs build are fixed.
155+
run: |
156+
cmake -B flang-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;mlir;flang" -DLLVM_ENABLE_SPHINX=ON -DSPHINX_WARNINGS_AS_ERRORS=OFF ./llvm
157+
TZ=UTC ninja -C flang-build docs-flang-html docs-flang-man
158+

.github/workflows/issue-subscriber.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ jobs:
1515
steps:
1616
- name: Setup Automation Script
1717
run: |
18-
curl -O -L https://raw.githubusercontent.com/"$GITHUB_REPOSITORY"/"$GITHUB_SHA"/llvm/utils/git/github-automation.py
19-
curl -O -L https://raw.githubusercontent.com/"$GITHUB_REPOSITORY"/"$GITHUB_SHA"/llvm/utils/git/requirements.txt
18+
curl -O -L --fail https://raw.githubusercontent.com/"$GITHUB_REPOSITORY"/"$GITHUB_SHA"/llvm/utils/git/github-automation.py
19+
curl -O -L --fail https://raw.githubusercontent.com/"$GITHUB_REPOSITORY"/"$GITHUB_SHA"/llvm/utils/git/requirements.txt
2020
chmod a+x github-automation.py
2121
pip install -r requirements.txt
2222
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
name: "Check libc++ generated files"
2+
on:
3+
pull_request:
4+
paths:
5+
- 'libcxx/**'
6+
7+
permissions:
8+
contents: read
9+
10+
jobs:
11+
check_generated_files:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Fetch LLVM sources
15+
uses: actions/checkout@v4
16+
17+
- name: Install dependencies
18+
uses: aminya/setup-cpp@v1
19+
with:
20+
clangformat: 17.0.1
21+
ninja: true
22+
23+
- name: Check generated files
24+
run: libcxx/utils/ci/run-buildbot check-generated-output

.github/workflows/llvm-tests.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,14 +170,17 @@ jobs:
170170
uses: actions/download-artifact@v3
171171
with:
172172
name: build-baseline
173+
path: build-baseline
173174
- name: Download latest
174175
uses: actions/download-artifact@v3
175176
with:
176177
name: build-latest
178+
path: build-latest
177179
- name: Download symbol list
178180
uses: actions/download-artifact@v3
179181
with:
180182
name: symbol-list
183+
path: symbol-list
181184

182185
- name: Install abi-compliance-checker
183186
run: sudo apt-get install abi-compliance-checker

0 commit comments

Comments
 (0)