Skip to content

Commit 3af6ae6

Browse files
authored
Merge branch 'llvm:main' into main
2 parents f26609b + 9e9fdd4 commit 3af6ae6

File tree

2,265 files changed

+178552
-26901
lines changed

Some content is hidden

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

2,265 files changed

+178552
-26901
lines changed

.clang-tidy

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,16 @@
1-
Checks: '-*,clang-diagnostic-*,llvm-*,misc-*,-misc-const-correctness,-misc-unused-parameters,-misc-non-private-member-variables-in-classes,-misc-no-recursion,-misc-use-anonymous-namespace,readability-identifier-naming,-misc-include-cleaner'
1+
Checks: >
2+
-*,
3+
clang-diagnostic-*,
4+
llvm-*,
5+
misc-*,
6+
-misc-const-correctness,
7+
-misc-include-cleaner,
8+
-misc-no-recursion,
9+
-misc-non-private-member-variables-in-classes,
10+
-misc-unused-parameters,
11+
-misc-use-anonymous-namespace,
12+
readability-identifier-naming
13+
214
CheckOptions:
315
- key: readability-identifier-naming.ClassCase
416
value: CamelCase

.github/new-prs-labeler.yml

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -784,18 +784,20 @@ backend:NVPTX:
784784
backend:MIPS:
785785
- '**/*mips*'
786786
- '**/*Mips*'
787+
- '**/*mips*/**'
788+
- '**/*Mips*/**'
787789

788790
backend:RISC-V:
789-
- clang/**/*riscv*
790-
- clang/**/*RISCV*
791-
- llvm/**/*riscv*
792-
- llvm/**/*RISCV*
791+
- '**/*riscv*'
792+
- '**/*RISCV*'
793+
- '**/*riscv*/**'
794+
- '**/*RISCV*/**'
793795

794796
backend:Xtensa:
795-
- clang/**/*xtensa*
796-
- clang/**/*Xtensa*
797-
- llvm/**/*xtensa*
798-
- llvm/**/*Xtensa*
797+
- '**/*xtensa*'
798+
- '**/*Xtensa*'
799+
- '**/*xtensa*/**'
800+
- '**/*Xtensa*/**'
799801

800802
lld:coff:
801803
- lld/**/COFF/**

.github/workflows/build-ci-container-windows.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ on:
2020
jobs:
2121
build-ci-container-windows:
2222
if: github.repository_owner == 'llvm'
23-
runs-on: windows-2019
23+
runs-on: windows-2022
2424
outputs:
2525
container-name: ${{ steps.vars.outputs.container-name }}
2626
container-name-tag: ${{ steps.vars.outputs.container-name-tag }}
@@ -34,7 +34,7 @@ jobs:
3434
id: vars
3535
run: |
3636
$tag = [int64](Get-Date -UFormat %s)
37-
$container_name="ghcr.io/$env:GITHUB_REPOSITORY_OWNER/ci-windows-2019"
37+
$container_name="ghcr.io/$env:GITHUB_REPOSITORY_OWNER/ci-windows-2022"
3838
echo "container-name=${container_name}" >> $env:GITHUB_OUTPUT
3939
echo "container-name-tag=${container_name}:${tag}" >> $env:GITHUB_OUTPUT
4040
echo "container-filename=ci-windows-${tag}.tar" >> $env:GITHUB_OUTPUT
@@ -58,7 +58,7 @@ jobs:
5858
- build-ci-container-windows
5959
permissions:
6060
packages: write
61-
runs-on: windows-2019
61+
runs-on: windows-2022
6262
env:
6363
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
6464
steps:

.github/workflows/containers/github-action-ci-windows/Dockerfile

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Agent image for LLVM org cluster.
22
# .net 4.8 is required by chocolately package manager.
3-
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
3+
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022
44

55
# Restore the default Windows shell for correct batch processing.
66
SHELL ["cmd", "/S", "/C"]
@@ -39,11 +39,16 @@ RUN regsvr32 /S "C:\BuildTools\DIA SDK\bin\amd64\msdia140.dll" & \
3939

4040
# install tools as described in https://llvm.org/docs/GettingStartedVS.html
4141
# and a few more that were not documented...
42-
RUN choco install -y ninja git sccache
4342
# Pin an older version of Python; the current Python 3.10 fails when
4443
# doing "pip install" for the other dependencies, as it fails to find libxml
4544
# while compiling some package.
46-
RUN choco install -y python3 --version 3.9.7
45+
# We version pin the other packages as well to ensure the container build is as
46+
# reproducible as possible to prevent issues when upgrading only part of the
47+
# container.
48+
RUN choco install -y ninja --version 1.13.1 && \
49+
choco install -y git --version 2.50.1 && \
50+
choco install -y sccache --version 0.10.0 && \
51+
choco install -y python3 --version 3.9.7
4752

4853
# Testing requires psutil
4954
RUN pip install psutil

.github/workflows/containers/github-action-ci/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ FROM docker.io/library/ubuntu:24.04 as base
22
ENV LLVM_SYSROOT=/opt/llvm
33

44
FROM base as stage1-toolchain
5-
ENV LLVM_VERSION=20.1.4
5+
ENV LLVM_VERSION=20.1.8
66

77
RUN apt-get update && \
88
apt-get install -y \

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

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,7 @@ concurrency:
3636
jobs:
3737
stage1:
3838
if: github.repository_owner == 'llvm'
39-
runs-on: libcxx-self-hosted-linux
40-
container: ghcr.io/llvm/libcxx-linux-builder:b060022103f551d8ca1dad84122ef73927c86512
39+
runs-on: llvm-premerge-libcxx-runners
4140
continue-on-error: false
4241
strategy:
4342
fail-fast: false
@@ -74,8 +73,7 @@ jobs:
7473
**/crash_diagnostics/*
7574
stage2:
7675
if: github.repository_owner == 'llvm'
77-
runs-on: libcxx-self-hosted-linux
78-
container: ghcr.io/llvm/libcxx-linux-builder:2b57ebb50b6d418e70382e655feaa619b558e254
76+
runs-on: llvm-premerge-libcxx-runners
7977
needs: [ stage1 ]
8078
continue-on-error: false
8179
strategy:
@@ -149,21 +147,20 @@ jobs:
149147
'generic-static',
150148
'bootstrapping-build'
151149
]
152-
machine: [ 'libcxx-self-hosted-linux' ]
150+
machine: [ 'llvm-premerge-libcxx-runners' ]
153151
include:
154152
- config: 'generic-cxx26'
155-
machine: libcxx-self-hosted-linux
153+
machine: llvm-premerge-libcxx-runners
156154
- config: 'generic-asan'
157-
machine: libcxx-self-hosted-linux
155+
machine: llvm-premerge-libcxx-runners
158156
- config: 'generic-tsan'
159-
machine: libcxx-self-hosted-linux
157+
machine: llvm-premerge-libcxx-runners
160158
- config: 'generic-ubsan'
161-
machine: libcxx-self-hosted-linux
159+
machine: llvm-premerge-libcxx-runners
162160
# Use a larger machine for MSAN to avoid timeout and memory allocation issues.
163161
- config: 'generic-msan'
164-
machine: libcxx-self-hosted-linux
162+
machine: llvm-premerge-libcxx-runners
165163
runs-on: ${{ matrix.machine }}
166-
container: ghcr.io/llvm/libcxx-linux-builder:2b57ebb50b6d418e70382e655feaa619b558e254
167164
steps:
168165
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
169166
- name: ${{ matrix.config }}

.github/workflows/libcxx-restart-preempted-jobs.yaml

Lines changed: 0 additions & 158 deletions
This file was deleted.

.github/workflows/pr-code-format.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
- name: Install clang-format
5656
uses: aminya/setup-cpp@17c11551771948abc5752bbf3183482567c7caf0 # v1.1.1
5757
with:
58-
clangformat: 20.1.5
58+
clangformat: 20.1.8
5959

6060
- name: Setup Python env
6161
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0

.github/workflows/premerge.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ jobs:
6363
6464
./.ci/monolithic-linux.sh "${projects_to_build}" "${project_check_targets}" "${runtimes_to_build}" "${runtimes_check_targets}" "${runtimes_check_targets_needs_reconfig}"
6565
- name: Upload Artifacts
66+
if: '!cancelled()'
6667
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
6768
with:
6869
name: Premerge Artifacts (Linux)
@@ -113,6 +114,7 @@ jobs:
113114
call C:\\BuildTools\\Common7\\Tools\\VsDevCmd.bat -arch=amd64 -host_arch=amd64
114115
bash .ci/monolithic-windows.sh "${{ steps.vars.outputs.windows-projects }}" "${{ steps.vars.outputs.windows-check-targets }}"
115116
- name: Upload Artifacts
117+
if: '!cancelled()'
116118
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
117119
with:
118120
name: Premerge Artifacts (Windows)

bolt/include/bolt/Core/MCPlusBuilder.h

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -430,6 +430,17 @@ class MCPlusBuilder {
430430
return Analysis->isIndirectBranch(Inst);
431431
}
432432

433+
/// Returns true if the instruction unconditionally transfers the control to
434+
/// another program point, interrupting sequential code execution, e.g. by a
435+
/// call, return, or unconditional jump. This explicitly leaves out
436+
/// conditional branches as they may not be taken, but does allow transferring
437+
/// the control to the next instruction (zero-displacement jump/call).
438+
bool isUnconditionalControlTransfer(const MCInst &Inst) const {
439+
const MCInstrDesc &Desc = Info->get(Inst.getOpcode());
440+
// barrier captures returns and unconditional branches
441+
return Desc.isBarrier() || Desc.isCall();
442+
}
443+
433444
/// Returns true if the instruction is memory indirect call or jump
434445
virtual bool isBranchOnMem(const MCInst &Inst) const {
435446
llvm_unreachable("not implemented");

0 commit comments

Comments
 (0)