Skip to content

Commit 9b7be34

Browse files
Fix windows build failure and clang-format
Created using spr 1.3.6
2 parents 68bcf8d + d6e0922 commit 9b7be34

File tree

1,666 files changed

+40135
-25573
lines changed

Some content is hidden

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

1,666 files changed

+40135
-25573
lines changed

.ci/utils.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ function at-exit {
2424
retcode=$?
2525

2626
mkdir -p artifacts
27+
sccache --show-stats
2728
sccache --show-stats >> artifacts/sccache_stats.txt
2829
cp "${BUILD_DIR}"/.ninja_log artifacts/.ninja_log
2930
cp "${MONOREPO_ROOT}"/*.log artifacts/ || :

.github/new-prs-labeler.yml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,6 @@ LTO:
9090
- llvm/lib/Transforms/*/FunctionImport*
9191
- llvm/tools/gold/**
9292

93-
mc:
94-
- llvm/*/MC/**
95-
9693
clang:driver:
9794
- clang/*/Driver/**
9895

@@ -621,6 +618,12 @@ llvm:adt:
621618
llvm:support:
622619
- llvm/**/Support/**
623620

621+
# Skip llvm/test/MC and llvm/unittests/MC, which includes target-specific directories.
622+
llvm:mc:
623+
- llvm/include/llvm/MC/**
624+
- llvm/lib/MC/**
625+
- llvm/tools/llvm-mc/**
626+
624627
llvm:transforms:
625628
- llvm/lib/Transforms/**
626629
- llvm/include/llvm/Transforms/**

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ RUN curl -L 'https://github.com/mozilla/sccache/releases/download/v0.10.0/sccach
8181

8282
ENV LLVM_SYSROOT=$LLVM_SYSROOT
8383
ENV PATH=${LLVM_SYSROOT}/bin:${PATH}
84+
ENV CC=clang
85+
ENV CXX=clang++
8486

8587
# Create a new user to avoid test failures related to a lack of expected
8688
# permissions issues in some tests. Set the user id to 1001 as that is the

.github/workflows/libclang-python-tests.yml

Lines changed: 27 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ permissions:
44
contents: read
55

66
on:
7-
workflow_dispatch:
87
push:
98
branches:
109
- 'main'
@@ -13,29 +12,46 @@ on:
1312
- 'clang/tools/libclang/**'
1413
- 'clang/CMakeList.txt'
1514
- '.github/workflows/libclang-python-tests.yml'
16-
- '.github/workflows/llvm-project-tests.yml'
1715
pull_request:
1816
paths:
1917
- 'clang/bindings/python/**'
2018
- 'clang/tools/libclang/**'
2119
- 'clang/CMakeList.txt'
2220
- '.github/workflows/libclang-python-tests.yml'
23-
- '.github/workflows/llvm-project-tests.yml'
2421

2522
jobs:
2623
check-clang-python:
2724
# Build libclang and then run the libclang Python binding's unit tests.
25+
# There is an issue running on "windows-2019".
26+
# See https://github.com/llvm/llvm-project/issues/76601#issuecomment-1873049082.
2827
name: Build and run Python unit tests
2928
if: github.repository == 'llvm/llvm-project'
29+
runs-on: ubuntu-24.04
3030
strategy:
3131
fail-fast: false
3232
matrix:
3333
python-version: ["3.8", "3.13"]
34-
uses: ./.github/workflows/llvm-project-tests.yml
35-
with:
36-
build_target: check-clang-python
37-
projects: clang
38-
# There is an issue running on "windows-2019".
39-
# See https://github.com/llvm/llvm-project/issues/76601#issuecomment-1873049082.
40-
os_list: '["ubuntu-24.04"]'
41-
python_version: ${{ matrix.python-version }}
34+
steps:
35+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
36+
- name: Setup Python
37+
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
38+
with:
39+
python-version: ${{ matrix.python-version }}
40+
- name: Setup ccache
41+
uses: hendrikmuhs/ccache-action@a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
42+
with:
43+
max-size: 2G
44+
key: spirv-ubuntu-24.04
45+
variant: sccache
46+
- name: Build and Test
47+
run: |
48+
mkdir build
49+
cmake -GNinja \
50+
-S llvm \
51+
-B build \
52+
-DCMAKE_BUILD_TYPE=Release \
53+
-DLLVM_ENABLE_ASSERTIONS=ON \
54+
-DCMAKE_C_COMPILER_LAUNCHER=sccache \
55+
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache \
56+
-DLLVM_ENABLE_PROJECTS=clang
57+
ninja -C build check-clang-python

.github/workflows/mlir-spirv-tests.yml

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,28 @@ jobs:
2424
check_spirv:
2525
if: github.repository_owner == 'llvm'
2626
name: Test MLIR SPIR-V
27-
uses: ./.github/workflows/llvm-project-tests.yml
28-
with:
29-
build_target: check-mlir
30-
projects: mlir
31-
extra_cmake_args: '-DLLVM_TARGETS_TO_BUILD="host" -DLLVM_INCLUDE_SPIRV_TOOLS_TESTS=ON'
32-
os_list: '["ubuntu-24.04"]'
27+
runs-on: ubuntu-24.04
28+
container:
29+
image: ghcr.io/llvm/ci-ubuntu-24.04:latest
30+
steps:
31+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
32+
- name: Setup ccache
33+
uses: hendrikmuhs/ccache-action@a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
34+
with:
35+
max-size: 2G
36+
key: spirv-mlir-ubuntu-24.04
37+
variant: sccache
38+
- name: Build and Test
39+
run: |
40+
mkdir build
41+
cmake -GNinja \
42+
-S llvm \
43+
-B build \
44+
-DCMAKE_BUILD_TYPE=Release \
45+
-DLLVM_ENABLE_ASSERTIONS=ON \
46+
-DCMAKE_C_COMPILER_LAUNCHER=sccache \
47+
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache \
48+
-DLLVM_TARGETS_TO_BUILD="host" \
49+
-DLLVM_INCLUDE_SPIRV_TOOLS_TESTS=ON \
50+
-DLLVM_ENABLE_PROJECTS=mlir
51+
ninja -C build check-mlir

.github/workflows/spirv-tests.yml

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ permissions:
44
contents: read
55

66
on:
7-
workflow_dispatch:
87
pull_request:
98
paths:
109
- 'llvm/lib/Target/SPIRV/**'
@@ -21,9 +20,27 @@ jobs:
2120
check_spirv:
2221
if: github.repository_owner == 'llvm'
2322
name: Test SPIR-V
24-
uses: ./.github/workflows/llvm-project-tests.yml
25-
with:
26-
build_target: check-llvm-codegen-spirv
27-
projects:
28-
extra_cmake_args: '-DLLVM_TARGETS_TO_BUILD="SPIRV" -DLLVM_INCLUDE_SPIRV_TOOLS_TESTS=ON'
29-
os_list: '["ubuntu-24.04"]'
23+
runs-on: ubuntu-24.04
24+
container:
25+
image: ghcr.io/llvm/ci-ubuntu-24.04:latest
26+
steps:
27+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
28+
- name: Setup ccache
29+
uses: hendrikmuhs/ccache-action@a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
30+
with:
31+
max-size: 2G
32+
key: spirv-ubuntu-24.04
33+
variant: sccache
34+
- name: Build and Test
35+
run: |
36+
mkdir build
37+
cmake -GNinja \
38+
-S llvm \
39+
-B build \
40+
-DCMAKE_BUILD_TYPE=Release \
41+
-DLLVM_ENABLE_ASSERTIONS=ON \
42+
-DCMAKE_C_COMPILER_LAUNCHER=sccache \
43+
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache \
44+
-DLLVM_TARGETS_TO_BUILD="SPIRV" \
45+
-DLLVM_INCLUDE_SPIRV_TOOLS_TESTS=ON
46+
ninja -C build check-llvm-codegen-spirv

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,11 @@ autoconf/autom4te.cache
5252
# CLion project configuration
5353
/.idea
5454
/cmake-build*
55+
# Coding assistants' stuff
56+
/CLAUDE.md
57+
/.claude/
58+
/GEMINI.md
59+
/.gemini/
5560

5661
#==============================================================================#
5762
# Directories to ignore (do not add trailing '/'s, they skip symlinks).

bolt/include/bolt/Core/MCPlusBuilder.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -740,6 +740,10 @@ class MCPlusBuilder {
740740
return false;
741741
}
742742

743+
/// Return true if the hlt instruction under the x86, otherwise, default to
744+
/// false.
745+
virtual bool isX86HLT(const MCInst &Inst) const { return false; }
746+
743747
/// Return the width, in bytes, of the memory access performed by \p Inst, if
744748
/// this is a pop instruction. Return zero otherwise.
745749
virtual int getPopSize(const MCInst &Inst) const {

bolt/lib/Core/BinaryContext.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2517,7 +2517,7 @@ BinaryContext::calculateEmittedSize(BinaryFunction &BF, bool FixBranches) {
25172517
// Clean-up the effect of the code emission.
25182518
for (const MCSymbol &Symbol : Assembler.symbols()) {
25192519
MCSymbol *MutableSymbol = const_cast<MCSymbol *>(&Symbol);
2520-
MutableSymbol->setUndefined();
2520+
MutableSymbol->setFragment(nullptr);
25212521
MutableSymbol->setIsRegistered(false);
25222522
}
25232523

bolt/lib/Core/MCPlusBuilder.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,10 @@ bool MCPlusBuilder::equals(const MCSpecifierExpr &A, const MCSpecifierExpr &B,
132132
}
133133

134134
bool MCPlusBuilder::isTerminator(const MCInst &Inst) const {
135-
return Analysis->isTerminator(Inst) ||
136-
(opts::TerminalTrap && Info->get(Inst.getOpcode()).isTrap());
135+
return (opts::TerminalTrap && Info->get(Inst.getOpcode()).isTrap()) ||
136+
Analysis->isTerminator(Inst)
137+
? !isX86HLT(Inst)
138+
: false;
137139
}
138140

139141
void MCPlusBuilder::setTailCall(MCInst &Inst) const {

0 commit comments

Comments
 (0)