Skip to content

[AutoBump] Merge with fixes of 977d744b (Jan 20) (10) (May need downstream changes) #548

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 102 commits into from
Jun 26, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
102 commits
Select commit Hold shift + click to select a range
977d744
[mlir][emitc] Set default dialect to emitc in ops with block (#123036)
kchibisov Jan 20, 2025
9b853f6
[libc++] Fix vector sanitization annotations on destruction (#121031)
ddcc Jan 20, 2025
a733c1f
[AArch64][NFC] Move getPartialReductionCost into cpp file (#123370)
david-arm Jan 20, 2025
b5c9cba
[clang][bytecode] Don't memcpy() FixedPoint values (#123599)
tbaederr Jan 20, 2025
58af82b
[OpenMP] Remove 'omp assumes' scopes now that we have no inline ASM (…
jhuber6 Jan 20, 2025
9cf2465
[AMDGPU] Fix spurious NoAlias results (#122309)
frasercrmck Jan 20, 2025
b92cc78
[llvm-objdump] Print out xcoff load section of xcoff object file with…
diggerlin Jan 20, 2025
3b001db
[mlir][vector] Update tests for xfer permutation lowering (1/N) (#123…
banach-space Jan 20, 2025
723a3e7
[OpenMP] Fix mispelled attribute and warning
jhuber6 Jan 20, 2025
fcec875
[LoopVectorize][NFC] Simplify ScaledReductionExitInstrs map (#123368)
david-arm Jan 20, 2025
cc5eba1
[AMDGPU] Reject misaligned SGPR constraints for inline asm (#123590)
ritter-x2a Jan 20, 2025
aa3c31a
[MLIR] Prevent invalid IR from being passed outside of RemoveDeadValu…
parsifal-47 Jan 20, 2025
8552c49
[AArch64] Enable UseFixedOverScalableIfEqualCost for more Cortex-x cp…
davemgreen Jan 20, 2025
9c7e02d
[InstCombine] Fold umax(nuw_mul(x, C0), x + 1) into (x == 0 ? 1 : nuw…
Ruhung Jan 20, 2025
416f1c4
[IR] Replace of PointerType::get(Type) with opaque version (NFC) (#12…
junlarsen Jan 20, 2025
9da7c3b
[Flang][OpenMP][NFC] Add tests for align and allocator in allocate cl…
Leporacanthicus Jan 20, 2025
8368018
Fix test of `-print-multi-flags-experimental` in case of multilib cus…
vhscampos Jan 20, 2025
c8eb865
[libclc] Move mad to the CLC library (#123607)
frasercrmck Jan 20, 2025
f33e3d4
[AMDGPU] Fix DAG types for V_MAD_I64_I32 and V_MAD_U64_U32. NFC. (#12…
jayfoad Jan 20, 2025
e8674af
[clang][bytecode] Diagnose IntegralToPointer casts to non-void (#123619)
tbaederr Jan 20, 2025
b95ed30
[IR] Remove unused variables from #123617
junlarsen Jan 20, 2025
7abf440
Add missing include to X86MCTargetDesc.h (#123320)
hageboeck Jan 20, 2025
c248fc1
[Clang] Document some of the implementation-defined keywords (#84591)
philnik777 Jan 20, 2025
0fa0545
[libc++] Define an internal API for std::invoke and friends (#116637)
philnik777 Jan 20, 2025
3606876
[SDAG] Fix CSE for ADDRSPACECAST nodes (#122912)
AlexMaclean Jan 20, 2025
19bd2d6
[ConstantFolding] Add ilogb in isMathLibCallNoop (#122582)
kshitijvp Jan 20, 2025
8ff195c
SIISelLowering.cpp - remove unused variable missed in #123617
RKSimon Jan 20, 2025
7084110
X86ISelLowering.cpp - remove unused variable missed in #123617
RKSimon Jan 20, 2025
5810f15
[SPIR-V] Fix SPIRVEmitIntrinsics undefined behavior (#123625)
michalpaszkowski Jan 20, 2025
af66166
[mlir] Link libraries that aren't included in libMLIR to libMLIR (#12…
mgorny Jan 20, 2025
9cbd705
[NFC] llvm-cgdata use StringRef in exitWithError to reduce constructi…
AmrDeveloper Jan 20, 2025
3805355
[AMDGPU] Handle natively unsupported types in addrspace(7) lowering (…
krzysz00 Jan 20, 2025
0fbec1e
[SandboxVec][BottomUpVec][NFC] Add comments
vporpo Jan 20, 2025
cac3f5e
[memprof] Add simplify_type (NFC) (#123556)
kazutakahirata Jan 20, 2025
bc1e699
[CodeGen] Avoid repeated hash lookups (NFC) (#123557)
kazutakahirata Jan 20, 2025
f355a44
[HipStdPar] Avoid repeated hash lookups (NFC) (#123558)
kazutakahirata Jan 20, 2025
64749fb
Revert "[AMDGPU] Handle natively unsupported types in addrspace(7) lo…
krzysz00 Jan 20, 2025
7fa1936
[InstCombine] Avoid repeated hash lookups (NFC) (#123559)
kazutakahirata Jan 20, 2025
efae9f3
[MIRParser] Avoid repeated map lookups (NFC) (#123561)
kazutakahirata Jan 20, 2025
818d6e5
[TableGen] Avoid repeated hash lookups (NFC) (#123562)
kazutakahirata Jan 20, 2025
64edde6
[clang] Improve the documentation for the init_priority attribute (#1…
ldionne Jan 20, 2025
8424bf2
[SystemZ] Add support for new cpu architecture - arch15
uweigand Jan 20, 2025
8b879d1
Revert "[mlir] Link libraries that aren't included in libMLIR to libM…
mgorny Jan 20, 2025
623ba9b
[libc++] Add missing _LIBCPP_NODEBUG on internal alias
ldionne Jan 20, 2025
9c464e6
[flang][OpenMP] Don't try to privatize FORALL/DO CONCURRENT indices (…
luporl Jan 20, 2025
4df28af
[mlir] Add lowering of absi and fpowi to libdevice (#123644)
ftynse Jan 20, 2025
2c9cc78
[LLVM] Update cmake and library layering maintainers (#120542)
nikic Jan 20, 2025
1434313
[LiveRegMatrix] Use MCRegUnit instead of MCRegister for register unit…
topperc Jan 20, 2025
3d08fa2
[libc++] Another _LIBCPP_NODEBUG fix
ldionne Jan 20, 2025
e68d18c
[Github] Add Zlib at build time to CI container (#123489)
boomanaiden154 Jan 20, 2025
d35d7f4
[Github] Add Agent Container Image (#123486)
boomanaiden154 Jan 20, 2025
2f1bc68
[flang][PPC] XFAIL unroll-loops on PPC (#123661)
mustartt Jan 20, 2025
28ae363
[AMDGPU][True16][MC] true16 for v_cmp_xx_i/u16 (#122968)
broxigarchen Jan 20, 2025
e5992b6
[Clang] Fix warning for non std functions with name `infinity` (#123417)
AmrDeveloper Jan 20, 2025
fb974e8
[LLD][COFF] Add support for custom DOS stub (#122561)
kkent030315 Jan 20, 2025
2cfddda
[LLD][COFF] Simplify creation of .edata chunks (NFC) (#123651)
cjacek Jan 20, 2025
bd5e12e
[VPlan] Don't retrieve Def unnecessarily in isUniformAfterVector (NFC).
fhahn Jan 20, 2025
697c188
Reapply "[AMDGPU] Handle natively unsupported types in addrspace(7) l…
krzysz00 Jan 20, 2025
5e4c34a
[SLP][NFC]Add a test with incorrect length and cost for repeated matc…
alexey-bataev Jan 20, 2025
7d01a8f
[SLP]Fix vector factor for repeated node for bv
alexey-bataev Jan 20, 2025
f427fef
[SPIR-V] Add SPIRV to LLVM_ALL_TARGETS (reapply) (#123654)
michalpaszkowski Jan 20, 2025
3f0ac46
Revert "[SPIR-V] Add SPIRV to LLVM_ALL_TARGETS (reapply)" (#123674)
michalpaszkowski Jan 20, 2025
06c54bc
[lldb] Implement ${target.file} format variable (#123431)
JDevlieghere Jan 20, 2025
b6287fd
[DirectX] Set the EnableRawAndStructuredBuffers shader flag (#122667)
bogner Jan 21, 2025
a3beb7d
Workflows: Drop Windows release builds and use more powerful runners …
tstellar Jan 21, 2025
a0c6811
[Github] Fix container push job
boomanaiden154 Jan 21, 2025
271b338
[TableGen][NFC] Factor early-out range check. (#123645)
nvjle Jan 21, 2025
4e2efc3
[OffloadBundler] Compress bundles over 4GB (#122307)
yxsamliu Jan 21, 2025
72c560d
Revert "[OffloadBundler] Compress bundles over 4GB (#122307)"
yxsamliu Jan 21, 2025
b45072d
[SPIR-V] Fix type compatibility in memory order comparisons (#123676)
michalpaszkowski Jan 21, 2025
abbfed9
[X86][AMX] Fix handling of AMX-FP8 internal intrinsics (#123540)
fzou1 Jan 21, 2025
e87b843
Reland [OffloadBundler] Compress bundles over 4GB (#122307)
yxsamliu Jan 21, 2025
7786266
AMDGPU: Expand shuffle testing with generated tests (#123574)
arsenm Jan 21, 2025
9d9c561
[ARM] Use MCRegister instead of unsigned. NFC
topperc Jan 21, 2025
c2aa11d
[Flang] Add LLVM lowering support for UNTIED clause in Task (#121052)
Thirumalai-Shaktivel Jan 21, 2025
585858a
AMDGPU: Fix asm constrains in new shuffle tests
arsenm Jan 21, 2025
2d9f406
[OpenMP] Adjust 'printf' handling in the OpenMP runtime (#123670)
jhuber6 Jan 21, 2025
3274bf6
[OpenMP] Make each atomic helper take an atomic scope argument (#122786)
jhuber6 Jan 21, 2025
afced70
[OpenMP][Flang] Workaround omp_lib error (#123666)
jplehr Jan 21, 2025
5d281a4
[LoopInterchange] Constrain number of load/stores in a loop (#118973)
madhur13490 Jan 21, 2025
5cde6d2
[ReachingDefAnalysis][NFC] Replace MCRegister with Register (#123626)
mgudim Jan 21, 2025
f07e516
[Clang] Delegate part of SetupConstraintScope's job to LambdaScopeFor…
zyn0217 Jan 21, 2025
79231a8
[ORC-RT][LoongArch] Add initial support for loongarch64 in ELFNixPlat…
Ami-zhang Jan 21, 2025
6aaa8f2
[mlir][IR][NFC] Move free-standing functions to `MemRefType` (#123465)
matthias-springer Jan 21, 2025
385f776
[MIPS][MSA] Invert operand order of `ILVOD` when lowering `VECTOR_SHU…
Cyanoxygen Jan 21, 2025
ce32625
Reland "[Flang][Driver] Add a flag to control zero initialization" (#…
kiranchandramohan Jan 21, 2025
7bb363b
[CodeGen] Use MCRegister for ignoreCSRForAllocationOrder. (#123685)
topperc Jan 21, 2025
26b87aa
[Mips] Handle declspec(dllimport) on mipsel-windows-* triples (#120912)
hpoussin Jan 21, 2025
73beb15
[MC] Avoid repeated hash lookups (NFC) (#123698)
kazutakahirata Jan 21, 2025
1714fac
[TableGen] Avoid repeated map lookups (NFC) (#123699)
kazutakahirata Jan 21, 2025
671088b
[Rewrite] Avoid repeated hash lookups (NFC) (#123696)
kazutakahirata Jan 21, 2025
a588e20
[SelectionDAG] Avoid repeated hash lookups (NFC) (#123697)
kazutakahirata Jan 21, 2025
0f9e913
[MLIR][NVVM] Add TMA Bulk Copy Ops (#123186)
durga4github Jan 21, 2025
97d691b
[IR][unittests] Replace of PointerType::get(Type) with opaque version…
junlarsen Jan 21, 2025
4740e09
[clang][Sema] Respect qualification of methods in heuristic results (…
HighCommander4 Jan 21, 2025
c22364a
[AArch64] Eliminate Common SUBS by Reassociating Non-Constants (#123344)
mskamp Jan 21, 2025
547bfda
[AArch64] Improve bcvtn2 and remove aarch64_neon_bfcvt intrinsics (#1…
davemgreen Jan 21, 2025
5658bc4
[lldb][Linux] Add Control Protection Fault signal (#122917)
DavidSpickett Jan 21, 2025
2a8c12b
"Reland "[Wunsafe-buffer-usage] Fix false positive when const sized a…
malavikasamak Jan 21, 2025
5201bc5
[AutoBump] Merge with fixes of 977d744b (Jan 20)
jorickert May 20, 2025
b798fdb
[AutoBump] Merge with 2a8c12b2 (Jan 21)
jorickert May 20, 2025
7e72031
Merge pull request #549 from Xilinx/bump_to_2a8c12b2
jorickert Jun 26, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
13 changes: 11 additions & 2 deletions .github/workflows/build-ci-container.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,9 @@ jobs:
runs-on: depot-ubuntu-22.04-16
outputs:
container-name: ${{ steps.vars.outputs.container-name }}
container-name-agent: ${{ steps.vars.outputs.container-name-agent }}
container-name-tag: ${{ steps.vars.outputs.container-name-tag }}
container-name-agent-tag: ${{ steps.vars.outputs.container-name-agent-tag }}
container-filename: ${{ steps.vars.outputs.container-filename }}
steps:
- name: Checkout LLVM
Expand All @@ -36,19 +38,22 @@ jobs:
tag=`date +%s`
container_name="ghcr.io/$GITHUB_REPOSITORY_OWNER/ci-ubuntu-22.04"
echo "container-name=$container_name" >> $GITHUB_OUTPUT
echo "container-name-agent=$container_name-agent" >> $GITHUB_OUTPUT
echo "container-name-tag=$container_name:$tag" >> $GITHUB_OUTPUT
echo "container-name-agent-tag=$container_name-agent:$tag" >> $GITHUB_OUTPUT
echo "container-filename=$(echo $container_name:$tag | sed -e 's/\//-/g' -e 's/:/-/g').tar" >> $GITHUB_OUTPUT
- name: Build container
working-directory: ./.github/workflows/containers/github-action-ci/
run: |
podman build -t ${{ steps.vars.outputs.container-name-tag }} .
podman build --target ci-container -t ${{ steps.vars.outputs.container-name-tag }} .
podman build --target ci-container-agent -t ${{ steps.vars.outputs.container-name-agent-tag }} .

# Save the container so we have it in case the push fails. This also
# allows us to separate the push step into a different job so we can
# maintain minimal permissions while building the container.
- name: Save container image
run: |
podman save ${{ steps.vars.outputs.container-name-tag }} > ${{ steps.vars.outputs.container-filename }}
podman save ${{ steps.vars.outputs.container-name-tag }} ${{ steps.vars.outputs.container-name-agent-tag }} > ${{ steps.vars.outputs.container-filename }}

- name: Upload container image
uses: actions/upload-artifact@v4
Expand Down Expand Up @@ -86,3 +91,7 @@ jobs:
podman login -u ${{ github.actor }} -p $GITHUB_TOKEN ghcr.io
podman push ${{ needs.build-ci-container.outputs.container-name-tag }}
podman push ${{ needs.build-ci-container.outputs.container-name }}:latest

podman tag ${{ needs.build-ci-container.outputs.container-name-agent-tag }} ${{ needs.build-ci-container.outputs.container-name-agent }}:latest
podman push ${{ needs.build-ci-container.outputs.container-name-agent-tag }}
podman push ${{ needs.build-ci-container.outputs.container-name-agent }}:latest
16 changes: 14 additions & 2 deletions .github/workflows/containers/github-action-ci/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ RUN apt-get update && \
ninja-build \
python3 \
git \
curl
curl \
zlib1g-dev

RUN curl -O -L https://github.com/llvm/llvm-project/archive/refs/tags/llvmorg-$LLVM_VERSION.tar.gz && tar -xf llvmorg-$LLVM_VERSION.tar.gz

Expand All @@ -38,7 +39,7 @@ RUN cmake -B ./build -G Ninja ./llvm \

RUN ninja -C ./build stage2-clang-bolt stage2-install-distribution && ninja -C ./build install-distribution

FROM base
FROM base as ci-container

COPY --from=stage1-toolchain $LLVM_SYSROOT $LLVM_SYSROOT

Expand Down Expand Up @@ -91,4 +92,15 @@ RUN adduser gha sudo
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers

USER gha
WORKDIR /home/gha

FROM ci-container as ci-container-agent

ENV GITHUB_RUNNER_VERSION=2.321.0

RUN mkdir actions-runner && \
cd actions-runner && \
curl -O -L https://github.com/actions/runner/releases/download/v$GITHUB_RUNNER_VERSION/actions-runner-linux-x64-$GITHUB_RUNNER_VERSION.tar.gz && \
tar xzf ./actions-runner-linux-x64-$GITHUB_RUNNER_VERSION.tar.gz && \
rm ./actions-runner-linux-x64-$GITHUB_RUNNER_VERSION.tar.gz

1 change: 0 additions & 1 deletion .github/workflows/release-binaries-all.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,6 @@ jobs:
matrix:
runs-on:
- ubuntu-22.04
- windows-2022
- macos-13
- macos-14

Expand Down
234 changes: 46 additions & 188 deletions .github/workflows/release-binaries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ on:
type: choice
options:
- ubuntu-22.04
- windows-2022
- macos-13
- macos-14

Expand Down Expand Up @@ -60,6 +59,8 @@ jobs:
enable-pgo: ${{ steps.vars.outputs.enable-pgo }}
release-binary-basename: ${{ steps.vars.outputs.release-binary-basename }}
release-binary-filename: ${{ steps.vars.outputs.release-binary-filename }}
build-runs-on: ${{ steps.vars.outputs.build-runs-on }}
test-runs-on: ${{ steps.vars.outputs.build-runs-on }}

steps:
# It's good practice to use setup-python, but this is also required on macos-14
Expand Down Expand Up @@ -144,12 +145,40 @@ jobs:

echo "target-cmake-flags=$target_cmake_flags" >> $GITHUB_OUTPUT
echo "build-flang=$build_flang" >> $GITHUB_OUTPUT

build-stage1:
name: "Build Stage 1"
case "${{ inputs.runs-on }}" in
ubuntu-22.04)
build_runs_on="depot-${{ inputs.runs-on }}-16"
test_runs_on=$build_runs_on
;;
macos-13)
if [ "$GITHUB_EVENT_NAME" = "pull_request" ]; then
build_runs_on="${{ inputs.runs-on }}"
else
build_runs_on="macos-13-large"
fi
test_runs_on="${{ inputs.runs-on }}"
;;
macos-14)
if [ "$GITHUB_EVENT_NAME" = "pull_request" ]; then
build_runs_on="${{ inputs.runs-on }}"
else
build_runs_on="depot-macos-14"
fi
test_runs_on="${{ inputs.runs-on }}"
;;
*)
test_runs_on="${{ inputs.runs-on }}"
build_runs_on=$test_runs_on
;;
esac
echo "build-runs-on=$build_runs_on" >> $GITHUB_OUTPUT
echo "test-runs-on=$test_runs_on" >> $GITHUB_OUTPUT

build-release-package:
name: "Build Release Package"
needs: prepare
if: github.repository == 'llvm/llvm-project'
runs-on: ${{ inputs.runs-on }}
runs-on: ${{ needs.prepare.outputs.build-runs-on }}
steps:

- name: Checkout Actions
Expand Down Expand Up @@ -195,7 +224,7 @@ jobs:
key: sccache-${{ runner.os }}-${{ runner.arch }}-release
variant: sccache

- name: Build Stage 1 Clang
- name: Configure
id: build
shell: bash
run: |
Expand All @@ -208,182 +237,12 @@ jobs:
-DBOOTSTRAP_CPACK_PACKAGE_FILE_NAME="${{ needs.prepare.outputs.release-binary-basename }}" \
-DCMAKE_C_COMPILER_LAUNCHER=sccache \
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache
ninja -v -C ${{ steps.setup-stage.outputs.build-prefix }}/build
# There is a race condition on the MacOS builders and this command is here
# to help debug that when it happens.
ls -ltr ${{ steps.setup-stage.outputs.build-prefix }}/build

- name: Save Stage
uses: ./workflows-main/.github/workflows/release-binaries-save-stage
with:
build-prefix: ${{ steps.setup-stage.outputs.build-prefix }}

build-stage2:
name: "Build Stage 2"
needs:
- prepare
- build-stage1
if: github.repository == 'llvm/llvm-project'
runs-on: ${{ inputs.runs-on }}
steps:
- name: Checkout Actions
uses: actions/checkout@v4
with:
ref: ${{ (github.event_name == 'pull_request' && github.sha) || 'main' }}
sparse-checkout: |
.github/workflows/
sparse-checkout-cone-mode: false
path: workflows
- name: Setup Stage
id: setup-stage
uses: ./workflows/.github/workflows/release-binaries-setup-stage
with:
previous-artifact: build-stage1

- name: Build Stage 2
# Re-enable once PGO builds are supported.
if: needs.prepare.outputs.enable-pgo == 'true'
shell: bash
run: |
ninja -C ${{ steps.setup-stage.outputs.build-prefix}}/build stage2-instrumented

- name: Save Stage
uses: ./workflows/.github/workflows/release-binaries-save-stage
with:
build-prefix: ${{ steps.setup-stage.outputs.build-prefix }}

build-stage3-clang:
name: "Build Stage 3 LLVM/Clang"
needs:
- prepare
- build-stage2
if: github.repository == 'llvm/llvm-project'
runs-on: ${{ inputs.runs-on }}
steps:
- name: Checkout Actions
uses: actions/checkout@v4
with:
ref: ${{ (github.event_name == 'pull_request' && github.sha) || 'main' }}
sparse-checkout: |
.github/workflows/
sparse-checkout-cone-mode: false
path: workflows
- name: Setup Stage
id: setup-stage
uses: ./workflows/.github/workflows/release-binaries-setup-stage
with:
previous-artifact: build-stage2

- name: Build LLVM/Clang
shell: bash
run: |
# There is a race condition on the MacOS builders and this command is here
# to help debug that when it happens.
ls -ltr ${{ steps.setup-stage.outputs.build-prefix }}/build
ninja -C ${{ steps.setup-stage.outputs.build-prefix }}/build stage2-clang
# Build some of the larger binaries here too.
ninja -C ${{ steps.setup-stage.outputs.build-prefix }}/build/tools/clang/stage2-bins/ \
clang-scan-deps \
modularize clangd \
clangd-indexer \
clang-check \
${{ (runner.os == 'Linux' && 'clangd-fuzzer') || '' }} \
clang-tidy \
llc \
lli \
llvm-exegesis \
llvm-opt-fuzzer \
llvm-reduce \
llvm-lto \
dsymutil

- name: Save Stage
uses: ./workflows/.github/workflows/release-binaries-save-stage
with:
build-prefix: ${{ steps.setup-stage.outputs.build-prefix }}

build-stage3-flang:
name: "Build Stage 3 Flang/MLIR/Bolt"
needs:
- prepare
- build-stage3-clang
runs-on: ${{ inputs.runs-on }}
steps:
- name: Checkout Actions
uses: actions/checkout@v4
with:
ref: ${{ (github.event_name == 'pull_request' && github.sha) || 'main' }}
sparse-checkout: |
.github/workflows/
sparse-checkout-cone-mode: false
path: workflows
- name: Setup Stage
id: setup-stage
uses: ./workflows/.github/workflows/release-binaries-setup-stage
with:
previous-artifact: build-stage3-clang

- name: Build Flang / MLIR / Bolt
- name: Build
shell: bash
run: |
# Build some of the mlir tools that take a long time to link
if [ "${{ needs.prepare.outputs.build-flang }}" = "true" ]; then
ninja -C ${{ steps.setup-stage.outputs.build-prefix }}/build/tools/clang/stage2-bins/ -j2 flang bbc
fi
ninja -C ${{ steps.setup-stage.outputs.build-prefix }}/build/tools/clang/stage2-bins/ \
mlir-bytecode-parser-fuzzer \
mlir-cpu-runner \
mlir-lsp-server \
mlir-opt \
mlir-query \
mlir-reduce \
mlir-text-parser-fuzzer \
mlir-translate \
mlir-transform-opt \
mlir-cat \
mlir-minimal-opt \
mlir-minimal-opt-canonicalize \
mlir-pdll-lsp-server \
llvm-bolt \
llvm-bolt-heatmap

- name: Save Stage
uses: ./workflows/.github/workflows/release-binaries-save-stage
with:
build-prefix: ${{ steps.setup-stage.outputs.build-prefix }}

build-stage3-all:
name: "Build Stage 3"
needs:
- prepare
- build-stage3-flang
runs-on: ${{ inputs.runs-on }}
steps:
- name: Checkout Actions
uses: actions/checkout@v4
with:
ref: ${{ (github.event_name == 'pull_request' && github.sha) || 'main' }}
sparse-checkout: |
.github/workflows/
sparse-checkout-cone-mode: false
path: workflows
- name: Setup Stage
id: setup-stage
uses: ./workflows/.github/workflows/release-binaries-setup-stage
with:
previous-artifact: build-stage3-flang

- name: Build Release Package
shell: bash
run: |
which cmake
ninja -C ${{ steps.setup-stage.outputs.build-prefix }}/build stage2-package
# Copy Release artifact to the workspace so it is easier to upload.
# This is necessary, because on Windows, the build-prefix path can
# only be used on bash steps, because it uses the form of /d/files/
# and other steps expect D:\files.
ninja -v -C ${{ steps.setup-stage.outputs.build-prefix }}/build stage2-package
mv ${{ steps.setup-stage.outputs.build-prefix }}/build/tools/clang/stage2-bins/${{ needs.prepare.outputs.release-binary-filename }} .

- uses: actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 #v4.3.0
with:
name: ${{ runner.os }}-${{ runner.arch }}-release-binary
Expand All @@ -398,19 +257,18 @@ jobs:
run: |
find ${{ steps.setup-stage.outputs.build-prefix }}/build -iname ${{ needs.prepare.outputs.release-binary-filename }} -delete
rm -Rf ${{ steps.setup-stage.outputs.build-prefix }}/build/tools/clang/stage2-bins/_CPack_Packages

- name: Save Stage
uses: ./workflows/.github/workflows/release-binaries-save-stage
uses: ./workflows-main/.github/workflows/release-binaries-save-stage
with:
build-prefix: ${{ steps.setup-stage.outputs.build-prefix }}

upload-release-binaries:
name: "Upload Release Binaries"
needs:
- prepare
- build-stage3-all
- build-release-package
if: >-
always() &&
github.event_name != 'pull_request' &&
needs.prepare.outputs.upload == 'true'
runs-on: ubuntu-22.04
Expand Down Expand Up @@ -463,14 +321,14 @@ jobs:
upload \
--files ${{ needs.prepare.outputs.release-binary-filename }}*

test-stage3:
name: "Test Stage 3"
test-release:
name: "Test Release"
needs:
- prepare
- build-stage3-all
- build-release-package
if: >-
github.repository == 'llvm/llvm-project'
runs-on: ${{ inputs.runs-on }}
runs-on: ${{ needs.prepare.outputs.test-runs-on }}
steps:
- name: Checkout Actions
uses: actions/checkout@v4
Expand All @@ -484,7 +342,7 @@ jobs:
id: setup-stage
uses: ./workflows/.github/workflows/release-binaries-setup-stage
with:
previous-artifact: build-stage3-all
previous-artifact: build-release-package

- name: Run Tests
shell: bash
Expand Down
Loading