[Lldb-commits] [lldb] [llvm] Add AArch64 support to the premerge tests (PR #155274)
Tom Stellard via lldb-commits
lldb-commits at lists.llvm.org
Thu Aug 28 20:24:03 PDT 2025
https://github.com/tstellar updated https://github.com/llvm/llvm-project/pull/155274
>From 57697a66cfdddf2028c7260f1ce61ecacc550d00 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 17:15:36 +0000
Subject: [PATCH 01/54] Add AArch64 support to the premerge tests
---
.github/workflows/premerge.yaml | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 9d925517a7211..6d83573702a79 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -28,7 +28,13 @@ jobs:
if: >-
github.repository_owner == 'llvm' &&
(github.event_name != 'pull_request' || github.event.action != 'closed')
- runs-on: llvm-premerge-linux-runners
+ matrix:
+ runs-on:
+ - llvm-premerge-linux-runners
+ - depot-ubuntu-24.04-arm-64
+ runs-on: ${{ matrix.runs-on }}
+ container:
+ image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && "ghcr.io/$GITHUB_REPOSITORY_OWNER/arm64v8/ci-ubuntu-24.04-agent" ) || null }}
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From 8ba375b2d80614f4a769af1b417bf21f1712786c Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 17:20:38 +0000
Subject: [PATCH 02/54] Fix typo
---
.github/workflows/premerge.yaml | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 6d83573702a79..f88dbc6143ab4 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -28,10 +28,11 @@ jobs:
if: >-
github.repository_owner == 'llvm' &&
(github.event_name != 'pull_request' || github.event.action != 'closed')
- matrix:
- runs-on:
- - llvm-premerge-linux-runners
- - depot-ubuntu-24.04-arm-64
+ strategy:
+ matrix:
+ runs-on:
+ - llvm-premerge-linux-runners
+ - depot-ubuntu-24.04-arm-64
runs-on: ${{ matrix.runs-on }}
container:
image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && "ghcr.io/$GITHUB_REPOSITORY_OWNER/arm64v8/ci-ubuntu-24.04-agent" ) || null }}
>From af39d1af7635196606ceaeff6a2cf1db72e142e4 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 17:21:51 +0000
Subject: [PATCH 03/54] Fix quotes
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index f88dbc6143ab4..914713bb4a352 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -35,7 +35,7 @@ jobs:
- depot-ubuntu-24.04-arm-64
runs-on: ${{ matrix.runs-on }}
container:
- image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && "ghcr.io/$GITHUB_REPOSITORY_OWNER/arm64v8/ci-ubuntu-24.04-agent" ) || null }}
+ image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && 'ghcr.io/$GITHUB_REPOSITORY_OWNER/arm64v8/ci-ubuntu-24.04-agent' ) || null }}
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From 0330faf41115cab59d8667dbe77bf9414ea3455c Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 17:24:18 +0000
Subject: [PATCH 04/54] Fix container name
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 914713bb4a352..edb7248d792fe 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -35,7 +35,7 @@ jobs:
- depot-ubuntu-24.04-arm-64
runs-on: ${{ matrix.runs-on }}
container:
- image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && 'ghcr.io/$GITHUB_REPOSITORY_OWNER/arm64v8/ci-ubuntu-24.04-agent' ) || null }}
+ image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{}/arm64v8/ci-ubuntu-24.04-agent',github.repository_owner) ) || null }}
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From 0492ee60484cd594f80b6cadcb7ebc5755b6710c Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 17:29:25 +0000
Subject: [PATCH 05/54] Fix format string
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index edb7248d792fe..28d79518bc1df 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -35,7 +35,7 @@ jobs:
- depot-ubuntu-24.04-arm-64
runs-on: ${{ matrix.runs-on }}
container:
- image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{}/arm64v8/ci-ubuntu-24.04-agent',github.repository_owner) ) || null }}
+ image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04-agent',github.repository_owner) ) || null }}
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From 493970e0713105bf8fa11ac120e04031366dc9fd Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 18:54:40 +0000
Subject: [PATCH 06/54] Drop cpus
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 28d79518bc1df..061e00294ee5f 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -32,7 +32,7 @@ jobs:
matrix:
runs-on:
- llvm-premerge-linux-runners
- - depot-ubuntu-24.04-arm-64
+ - depot-ubuntu-24.04-arm-4
runs-on: ${{ matrix.runs-on }}
container:
image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04-agent',github.repository_owner) ) || null }}
>From 7a419796b746f1facba1731f07abd947e7641f2a Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 19:02:41 +0000
Subject: [PATCH 07/54] Debug
---
.github/workflows/premerge.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 061e00294ee5f..404640fd960a8 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -43,6 +43,7 @@ jobs:
fetch-depth: 2
- name: Build and Test
run: |
+ cat $0
git config --global --add safe.directory '*'
source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py)
>From 25c28a128fee05d2ff1db7fcd854e54275199b99 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 19:12:17 +0000
Subject: [PATCH 08/54] change containre
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 404640fd960a8..de13c596d6ebc 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -35,7 +35,7 @@ jobs:
- depot-ubuntu-24.04-arm-4
runs-on: ${{ matrix.runs-on }}
container:
- image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04-agent',github.repository_owner) ) || null }}
+ image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From 766987cf1664dbb5df2beaec23cce37231c9b2b4 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 19:16:45 +0000
Subject: [PATCH 09/54] Use standard runners
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index de13c596d6ebc..b90a0c436c44f 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -32,7 +32,7 @@ jobs:
matrix:
runs-on:
- llvm-premerge-linux-runners
- - depot-ubuntu-24.04-arm-4
+ - ubuntu-24.04-arm
runs-on: ${{ matrix.runs-on }}
container:
image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
>From 5f12fa20044740c157b0440127fae38390ea211d Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 19:33:21 +0000
Subject: [PATCH 10/54] Drop containe
---
.github/workflows/premerge.yaml | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index b90a0c436c44f..41c1307feb143 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -33,9 +33,8 @@ jobs:
runs-on:
- llvm-premerge-linux-runners
- ubuntu-24.04-arm
+ - depot-ubuntu-24.04-arm-4
runs-on: ${{ matrix.runs-on }}
- container:
- image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From 31393e3f957aea5850d82a7c3b675f4c6952bac1 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 19:41:11 +0000
Subject: [PATCH 11/54] Debug image
---
.github/workflows/premerge.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 41c1307feb143..02dce133a8010 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -35,6 +35,8 @@ jobs:
- ubuntu-24.04-arm
- depot-ubuntu-24.04-arm-4
runs-on: ${{ matrix.runs-on }}
+ container:
+ image: format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner)
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From c7e1a036161919b2226cde9480a9ec241de70911 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 19:48:50 +0000
Subject: [PATCH 12/54] Debug image
---
.github/workflows/premerge.yaml | 1 -
1 file changed, 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 02dce133a8010..4794dc6881c4e 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -31,7 +31,6 @@ jobs:
strategy:
matrix:
runs-on:
- - llvm-premerge-linux-runners
- ubuntu-24.04-arm
- depot-ubuntu-24.04-arm-4
runs-on: ${{ matrix.runs-on }}
>From f7ae102d6e0ffcd483edf8abf588f17a90811da6 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 19:50:24 +0000
Subject: [PATCH 13/54] Debug image
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 4794dc6881c4e..817604175a8ac 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -35,7 +35,7 @@ jobs:
- depot-ubuntu-24.04-arm-4
runs-on: ${{ matrix.runs-on }}
container:
- image: format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner)
+ image: ${{ format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) }}
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From f6a5df8b5cb37c21de3f54ff0a95d27a09018f42 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 20:03:08 +0000
Subject: [PATCH 14/54] Debug containre
---
.github/workflows/premerge.yaml | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 817604175a8ac..9bc0d4883d407 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -31,11 +31,10 @@ jobs:
strategy:
matrix:
runs-on:
- - ubuntu-24.04-arm
- - depot-ubuntu-24.04-arm-4
+ - ubuntu-24.04
runs-on: ${{ matrix.runs-on }}
container:
- image: ${{ format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) }}
+ image: ${{ format('ghcr.io/{0}/ci-ubuntu-24.04',github.repository_owner) }}
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From 452a347aae9ffcb789e64f534883f2d5fc32d703 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 20:14:20 +0000
Subject: [PATCH 15/54] Debug
---
.github/workflows/premerge.yaml | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 9bc0d4883d407..4c7a3b6ce3356 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -32,14 +32,19 @@ jobs:
matrix:
runs-on:
- ubuntu-24.04
+ - llvm-premerge-linux-runners
runs-on: ${{ matrix.runs-on }}
- container:
- image: ${{ format('ghcr.io/{0}/ci-ubuntu-24.04',github.repository_owner) }}
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 2
+ - name: Debug
+ run: |
+ ls -ltr /bin/sh/
+ - name: Debug2
+ run: |
+ source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py)
- name: Build and Test
run: |
cat $0
>From 79e6def3c18e376e2ef85ed488c73c49cf7c86ab Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 20:16:13 +0000
Subject: [PATCH 16/54] Debug
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 4c7a3b6ce3356..7bdfc94264632 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -41,7 +41,7 @@ jobs:
fetch-depth: 2
- name: Debug
run: |
- ls -ltr /bin/sh/
+ ls -ltr /usr/bin/sh
- name: Debug2
run: |
source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py)
>From a827aa786cc6b6dc6bebeffe01a2e93c63484cc0 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 20:40:30 +0000
Subject: [PATCH 17/54] Debug containr
---
.github/workflows/premerge.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 7bdfc94264632..c3903f5483a23 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -34,6 +34,8 @@ jobs:
- ubuntu-24.04
- llvm-premerge-linux-runners
runs-on: ${{ matrix.runs-on }}
+ container:
+ image: ${{ (startsWith(matrix.runs-on, 'ubuntu-24.04') && format('ghcr.io/{0}/ci-ubuntu-24.04',github.repository_owner) ) || null }}
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From ef27441eb066ab1b92d6139b189b70bc51f4c373 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 20:46:19 +0000
Subject: [PATCH 18/54] Debug containr
---
.github/workflows/premerge.yaml | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index c3903f5483a23..fc18b4766a684 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -44,6 +44,13 @@ jobs:
- name: Debug
run: |
ls -ltr /usr/bin/sh
+ -name: Debug
+ run: |
+ git diff --name-only HEAD~1...HEAD
+ python3 .ci/compute_projects.py
+ - name: Debug2
+ run: |
+ source <$(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py)
- name: Debug2
run: |
source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py)
>From 0b85fe15139f86c93f61aefdfcd96738eba1812e Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 20:47:40 +0000
Subject: [PATCH 19/54] Fix typo
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index fc18b4766a684..c9ca432cc5bcf 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -44,7 +44,7 @@ jobs:
- name: Debug
run: |
ls -ltr /usr/bin/sh
- -name: Debug
+ - name: Debug
run: |
git diff --name-only HEAD~1...HEAD
python3 .ci/compute_projects.py
>From 6fe200853a29723fbfe738536590775054b1737d Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 21:02:33 +0000
Subject: [PATCH 20/54] Fix typo
---
.github/workflows/premerge.yaml | 3 ---
1 file changed, 3 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index c9ca432cc5bcf..6facef37d6cdc 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -48,9 +48,6 @@ jobs:
run: |
git diff --name-only HEAD~1...HEAD
python3 .ci/compute_projects.py
- - name: Debug2
- run: |
- source <$(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py)
- name: Debug2
run: |
source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py)
>From 0a082cb7b9b93f88e3e6250ee0b19f4c303e5519 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 21:09:52 +0000
Subject: [PATCH 21/54] More debug
---
.github/workflows/premerge.yaml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 6facef37d6cdc..75002a590f5a3 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -48,6 +48,9 @@ jobs:
run: |
git diff --name-only HEAD~1...HEAD
python3 .ci/compute_projects.py
+ - name: Interpreter
+ run: |
+ ps -p $$ | awk '$1 != "PID" {print $(NF)}'
- name: Debug2
run: |
source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py)
>From 2e1badd7528519f63da28aa1094f5a2f25c17c62 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 22:31:28 +0000
Subject: [PATCH 22/54] Fix
---
.github/workflows/premerge.yaml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 75002a590f5a3..2fcff6f7057be 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -36,6 +36,12 @@ jobs:
runs-on: ${{ matrix.runs-on }}
container:
image: ${{ (startsWith(matrix.runs-on, 'ubuntu-24.04') && format('ghcr.io/{0}/ci-ubuntu-24.04',github.repository_owner) ) || null }}
+ defaults:
+ run:
+ # The run step defaults to using sh as the shell when running in a
+ # container, so make bash the default to ensure consistency between
+ # container and non-container jobs.
+ shell: bash
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
>From 92a0d64b56d7dba07e6b8125f8ff83a52e1678bd Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 22:34:40 +0000
Subject: [PATCH 23/54] Switch to depot runners
---
.github/workflows/premerge.yaml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 2fcff6f7057be..4e42dbdf35597 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -31,11 +31,11 @@ jobs:
strategy:
matrix:
runs-on:
- - ubuntu-24.04
+ - depot-ubuntu-24.04-arm-4
- llvm-premerge-linux-runners
runs-on: ${{ matrix.runs-on }}
container:
- image: ${{ (startsWith(matrix.runs-on, 'ubuntu-24.04') && format('ghcr.io/{0}/ci-ubuntu-24.04',github.repository_owner) ) || null }}
+ image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm-16') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
defaults:
run:
# The run step defaults to using sh as the shell when running in a
>From 05823e9b01c541a1fe93bdf910788f3e0929cfc9 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 22:35:20 +0000
Subject: [PATCH 24/54] Remove debugging
---
.github/workflows/premerge.yaml | 14 --------------
1 file changed, 14 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 4e42dbdf35597..2f9b8a922760c 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -47,22 +47,8 @@ jobs:
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 2
- - name: Debug
- run: |
- ls -ltr /usr/bin/sh
- - name: Debug
- run: |
- git diff --name-only HEAD~1...HEAD
- python3 .ci/compute_projects.py
- - name: Interpreter
- run: |
- ps -p $$ | awk '$1 != "PID" {print $(NF)}'
- - name: Debug2
- run: |
- source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py)
- name: Build and Test
run: |
- cat $0
git config --global --add safe.directory '*'
source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py)
>From 0f11e408b4ce79834c1f010f713711ced3e3c5cb Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 22:36:55 +0000
Subject: [PATCH 25/54] Test for CI
---
llvm/README.txt | 2 ++
1 file changed, 2 insertions(+)
diff --git a/llvm/README.txt b/llvm/README.txt
index b9b71a3b6daff..2e35844e9e3a6 100644
--- a/llvm/README.txt
+++ b/llvm/README.txt
@@ -15,3 +15,5 @@ documentation setup.
If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.
+
+Test for CI.
>From 9fca728b0779b792408f9953cef08928ead8f0e2 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 22:46:41 +0000
Subject: [PATCH 26/54] Add in sccache
---
.github/workflows/premerge.yaml | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 2f9b8a922760c..d77e983b4c7a9 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -47,6 +47,15 @@ jobs:
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 2
+
+ - name: Setup sccache
+ uses: hendrikmuhs/ccache-action at a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
+ if: startsWith(matrix.runs-on, 'depot')
+ with:
+ max-size: 8G
+ key: ${{ matrix.runs-on }}
+ variant: sccache
+
- name: Build and Test
run: |
git config --global --add safe.directory '*'
>From 8ff572d966319942798a48b20996ae7e9a3b812e Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 22:54:36 +0000
Subject: [PATCH 27/54] Disable sccache setup
---
.github/workflows/premerge.yaml | 27 +++++++++++++++------------
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index d77e983b4c7a9..1171dcba1d45f 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -76,18 +76,21 @@ jobs:
export CC=/opt/llvm/bin/clang
export CXX=/opt/llvm/bin/clang++
- # This environment variable is passes into the container through the
- # runner pod definition. This differs between our two clusters which
- # why we do not hardcode it.
- export SCCACHE_GCS_BUCKET=$CACHE_GCS_BUCKET
- export SCCACHE_GCS_RW_MODE=READ_WRITE
-
- # Set the idle timeout to zero to ensure sccache runs for the
- # entire duration of the job. Otherwise it might stop if we run
- # several test suites in a row and discard statistics that we want
- # to save in the end.
- export SCCACHE_IDLE_TIMEOUT=0
- sccache --start-server
+ if ! [[ "${{ matrix.runs_on }}" =~ "^depot" ]; then
+
+ # This environment variable is passes into the container through the
+ # runner pod definition. This differs between our two clusters which
+ # why we do not hardcode it.
+ export SCCACHE_GCS_BUCKET=$CACHE_GCS_BUCKET
+ export SCCACHE_GCS_RW_MODE=READ_WRITE
+
+ # Set the idle timeout to zero to ensure sccache runs for the
+ # entire duration of the job. Otherwise it might stop if we run
+ # several test suites in a row and discard statistics that we want
+ # to save in the end.
+ export SCCACHE_IDLE_TIMEOUT=0
+ sccache --start-server
+ fi
./.ci/monolithic-linux.sh "${projects_to_build}" "${project_check_targets}" "${runtimes_to_build}" "${runtimes_check_targets}" "${runtimes_check_targets_needs_reconfig}" "${enable_cir}"
- name: Upload Artifacts
>From 7eab71cb29aaecaaa23747427de440d03baf8d9b Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 23:00:05 +0000
Subject: [PATCH 28/54] Fix typo
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 1171dcba1d45f..a561da0163fc3 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -76,7 +76,7 @@ jobs:
export CC=/opt/llvm/bin/clang
export CXX=/opt/llvm/bin/clang++
- if ! [[ "${{ matrix.runs_on }}" =~ "^depot" ]; then
+ if ! [[ "${{ matrix.runs_on }}" =~ "^depot" ]]; then
# This environment variable is passes into the container through the
# runner pod definition. This differs between our two clusters which
>From fce2dc7f438d80a815f65f7b0e575e48a85ca9fd Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 23:06:50 +0000
Subject: [PATCH 29/54] fix typo
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index a561da0163fc3..51d4d7c4920f3 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -76,7 +76,7 @@ jobs:
export CC=/opt/llvm/bin/clang
export CXX=/opt/llvm/bin/clang++
- if ! [[ "${{ matrix.runs_on }}" =~ "^depot" ]]; then
+ if ! [[ "${{ matrix.runs-on }}" =~ "^depot" ]]; then
# This environment variable is passes into the container through the
# runner pod definition. This differs between our two clusters which
>From 47242649a86b6c39259d0fe2b5770a3b9ff1f62a Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 23:09:44 +0000
Subject: [PATCH 30/54] Debug
---
.github/workflows/premerge.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 51d4d7c4920f3..3859f9a10b1d2 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -78,6 +78,7 @@ jobs:
if ! [[ "${{ matrix.runs-on }}" =~ "^depot" ]]; then
+ echo "STARTING SCCACHE"
# This environment variable is passes into the container through the
# runner pod definition. This differs between our two clusters which
# why we do not hardcode it.
>From 5a68096a777d84abc047ac010ca2ad58f0997231 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 23:15:01 +0000
Subject: [PATCH 31/54] Fix regex
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 3859f9a10b1d2..ce690db24420a 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -76,7 +76,7 @@ jobs:
export CC=/opt/llvm/bin/clang
export CXX=/opt/llvm/bin/clang++
- if ! [[ "${{ matrix.runs-on }}" =~ "^depot" ]]; then
+ if ! [[ "${{ matrix.runs-on }}" =~ ^depot.* ]]; then
echo "STARTING SCCACHE"
# This environment variable is passes into the container through the
>From 12913f6b7330923f889f6e4c5b19d74329280375 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 23:18:48 +0000
Subject: [PATCH 32/54] fix with containers
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index ce690db24420a..5486aa33c9124 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -35,7 +35,7 @@ jobs:
- llvm-premerge-linux-runners
runs-on: ${{ matrix.runs-on }}
container:
- image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm-16') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
+ image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
defaults:
run:
# The run step defaults to using sh as the shell when running in a
>From 62c28bf298ad72b19fa96745ed713ea8be1cb4c6 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 23:36:13 +0000
Subject: [PATCH 33/54] Try to fix bash
---
.github/workflows/premerge.yaml | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 5486aa33c9124..4e1e7e08bd8a9 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -36,12 +36,6 @@ jobs:
runs-on: ${{ matrix.runs-on }}
container:
image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
- defaults:
- run:
- # The run step defaults to using sh as the shell when running in a
- # container, so make bash the default to ensure consistency between
- # container and non-container jobs.
- shell: bash
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
@@ -57,6 +51,10 @@ jobs:
variant: sccache
- name: Build and Test
+ # The run step defaults to using sh as the shell when running in a
+ # container, so make bash the default to ensure consistency between
+ # container and non-container jobs.
+ shell: bash
run: |
git config --global --add safe.directory '*'
>From 66b9eea3e56138164c8ef77af097d225644c2623 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 23:45:43 +0000
Subject: [PATCH 34/54] Fix sccache
---
.github/workflows/premerge.yaml | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 4e1e7e08bd8a9..b17401f54bbf1 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -36,12 +36,22 @@ jobs:
runs-on: ${{ matrix.runs-on }}
container:
image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
+ defaults:
+ run:
+ # The run step defaults to using sh as the shell when running in a
+ # container, so make bash the default to ensure consistency between
+ # container and non-container jobs.
+ shell: bash
steps:
- name: Checkout LLVM
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 2
+ - name: HACK - Remove SCCACHE
+ run: |
+ rm -Rf /usr/local/bin/sccache
+
- name: Setup sccache
uses: hendrikmuhs/ccache-action at a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
if: startsWith(matrix.runs-on, 'depot')
@@ -51,10 +61,6 @@ jobs:
variant: sccache
- name: Build and Test
- # The run step defaults to using sh as the shell when running in a
- # container, so make bash the default to ensure consistency between
- # container and non-container jobs.
- shell: bash
run: |
git config --global --add safe.directory '*'
>From bf0a79f5a864c22516e9378803909796a2f71bfd Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 23:48:23 +0000
Subject: [PATCH 35/54] Fix sccache
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index b17401f54bbf1..569cd96d4c031 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -50,7 +50,7 @@ jobs:
- name: HACK - Remove SCCACHE
run: |
- rm -Rf /usr/local/bin/sccache
+ sudo rm -Rf /usr/local/bin/sccache
- name: Setup sccache
uses: hendrikmuhs/ccache-action at a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
>From 33606309517ab4bcd87babc92688f7e7210bb3a3 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 23:50:53 +0000
Subject: [PATCH 36/54] Disable sccache
---
.ci/monolithic-linux.sh | 2 --
.github/workflows/premerge.yaml | 12 ------------
2 files changed, 14 deletions(-)
diff --git a/.ci/monolithic-linux.sh b/.ci/monolithic-linux.sh
index 3ca4d05f4c891..dcf84d2f79bef 100755
--- a/.ci/monolithic-linux.sh
+++ b/.ci/monolithic-linux.sh
@@ -54,8 +54,6 @@ cmake -S "${MONOREPO_ROOT}"/llvm -B "${BUILD_DIR}" \
-D LLVM_LIT_ARGS="${lit_args}" \
-D LLVM_ENABLE_LLD=ON \
-D CMAKE_CXX_FLAGS=-gmlt \
- -D CMAKE_C_COMPILER_LAUNCHER=sccache \
- -D CMAKE_CXX_COMPILER_LAUNCHER=sccache \
-D LIBCXX_CXX_ABI=libcxxabi \
-D MLIR_ENABLE_BINDINGS_PYTHON=ON \
-D LLDB_ENABLE_PYTHON=ON \
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 569cd96d4c031..5ae5522383042 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -48,18 +48,6 @@ jobs:
with:
fetch-depth: 2
- - name: HACK - Remove SCCACHE
- run: |
- sudo rm -Rf /usr/local/bin/sccache
-
- - name: Setup sccache
- uses: hendrikmuhs/ccache-action at a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
- if: startsWith(matrix.runs-on, 'depot')
- with:
- max-size: 8G
- key: ${{ matrix.runs-on }}
- variant: sccache
-
- name: Build and Test
run: |
git config --global --add safe.directory '*'
>From 51216e7bb86e46e15b34f797f7e20ba186465873 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 25 Aug 2025 23:53:50 +0000
Subject: [PATCH 37/54] Disable sccache
---
.ci/utils.sh | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/.ci/utils.sh b/.ci/utils.sh
index 2a3d2426b630a..93c281b43851c 100644
--- a/.ci/utils.sh
+++ b/.ci/utils.sh
@@ -18,14 +18,14 @@ BUILD_DIR="${BUILD_DIR:=${MONOREPO_ROOT}/build}"
rm -rf "${BUILD_DIR}"
-sccache --zero-stats
+#sccache --zero-stats
function at-exit {
retcode=$?
mkdir -p artifacts
- sccache --show-stats
- sccache --show-stats >> artifacts/sccache_stats.txt
+ #sccache --show-stats
+ #sccache --show-stats >> artifacts/sccache_stats.txt
cp "${BUILD_DIR}"/.ninja_log artifacts/.ninja_log
cp "${MONOREPO_ROOT}"/*.log artifacts/ || :
cp "${BUILD_DIR}"/test-results.*.xml artifacts/ || :
>From 8b5162a75844eb3f461cbd2eaceaadf0e3fb3b06 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 27 Aug 2025 16:59:44 +0000
Subject: [PATCH 38/54] Fix lldb tests and use a bigger machine
---
.github/workflows/premerge.yaml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 5ae5522383042..16b2171bb44f3 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -31,11 +31,12 @@ jobs:
strategy:
matrix:
runs-on:
- - depot-ubuntu-24.04-arm-4
+ - depot-ubuntu-24.04-arm-64
- llvm-premerge-linux-runners
runs-on: ${{ matrix.runs-on }}
container:
image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
+ options: --privileged
defaults:
run:
# The run step defaults to using sh as the shell when running in a
>From 428257950069d1f05e769308fd46b20d1538aced Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 27 Aug 2025 18:53:57 +0000
Subject: [PATCH 39/54] Add fast-fail
---
.github/workflows/premerge.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 220803d74286f..51772b04f68e1 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -29,6 +29,7 @@ jobs:
github.repository_owner == 'llvm' &&
(github.event_name != 'pull_request' || github.event.action != 'closed')
strategy:
+ fast-fail: false
matrix:
runs-on:
- depot-ubuntu-24.04-arm-64
>From 079c4b133dcd693e00d531420b22d4bee1a0a11d Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 27 Aug 2025 18:57:18 +0000
Subject: [PATCH 40/54] Fix typo
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 51772b04f68e1..f9426fc8ac42d 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -29,7 +29,7 @@ jobs:
github.repository_owner == 'llvm' &&
(github.event_name != 'pull_request' || github.event.action != 'closed')
strategy:
- fast-fail: false
+ fail-fast: false
matrix:
runs-on:
- depot-ubuntu-24.04-arm-64
>From c972560d17cb79a8e92eef2896e00232121e0d05 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 27 Aug 2025 20:25:25 +0000
Subject: [PATCH 41/54] Revert "Disable sccache"
This reverts commit 33606309517ab4bcd87babc92688f7e7210bb3a3.
---
.ci/monolithic-linux.sh | 2 ++
.github/workflows/premerge.yaml | 12 ++++++++++++
2 files changed, 14 insertions(+)
diff --git a/.ci/monolithic-linux.sh b/.ci/monolithic-linux.sh
index dcf84d2f79bef..3ca4d05f4c891 100755
--- a/.ci/monolithic-linux.sh
+++ b/.ci/monolithic-linux.sh
@@ -54,6 +54,8 @@ cmake -S "${MONOREPO_ROOT}"/llvm -B "${BUILD_DIR}" \
-D LLVM_LIT_ARGS="${lit_args}" \
-D LLVM_ENABLE_LLD=ON \
-D CMAKE_CXX_FLAGS=-gmlt \
+ -D CMAKE_C_COMPILER_LAUNCHER=sccache \
+ -D CMAKE_CXX_COMPILER_LAUNCHER=sccache \
-D LIBCXX_CXX_ABI=libcxxabi \
-D MLIR_ENABLE_BINDINGS_PYTHON=ON \
-D LLDB_ENABLE_PYTHON=ON \
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index f9426fc8ac42d..58463ce914079 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -50,6 +50,18 @@ jobs:
with:
fetch-depth: 2
+ - name: HACK - Remove SCCACHE
+ run: |
+ sudo rm -Rf /usr/local/bin/sccache
+
+ - name: Setup sccache
+ uses: hendrikmuhs/ccache-action at a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
+ if: startsWith(matrix.runs-on, 'depot')
+ with:
+ max-size: 8G
+ key: ${{ matrix.runs-on }}
+ variant: sccache
+
- name: Build and Test
run: |
git config --global --add safe.directory '*'
>From ac5e6fe7b48a4c6ee7cc9b20fea127d516b7c5c0 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 27 Aug 2025 20:26:25 +0000
Subject: [PATCH 42/54] Remove ccache hack
---
.github/workflows/premerge.yaml | 4 ----
1 file changed, 4 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 58463ce914079..a588c256d6e16 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -50,10 +50,6 @@ jobs:
with:
fetch-depth: 2
- - name: HACK - Remove SCCACHE
- run: |
- sudo rm -Rf /usr/local/bin/sccache
-
- name: Setup sccache
uses: hendrikmuhs/ccache-action at a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
if: startsWith(matrix.runs-on, 'depot')
>From 0eb548113523085d50ac37926d3bbd52ddd9abf7 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 28 Aug 2025 17:57:48 +0000
Subject: [PATCH 43/54] Disable failing lldb test and use native sscache
---
.github/workflows/premerge.yaml | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index a588c256d6e16..f06bb88d870b9 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -50,14 +50,6 @@ jobs:
with:
fetch-depth: 2
- - name: Setup sccache
- uses: hendrikmuhs/ccache-action at a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
- if: startsWith(matrix.runs-on, 'depot')
- with:
- max-size: 8G
- key: ${{ matrix.runs-on }}
- variant: sccache
-
- name: Build and Test
run: |
git config --global --add safe.directory '*'
@@ -78,6 +70,11 @@ jobs:
export CC=/opt/llvm/bin/clang
export CXX=/opt/llvm/bin/clang++
+ if "$RUNNER_ARCH" = "ARM64"; then
+ # XFAIL lldb test: https://github.com/llvm/llvm-project/issues/155895
+ export LIT_XFAIL=functionalities/gdb_remote_client/TestqOffsets.py"
+ fi
+
if ! [[ "${{ matrix.runs-on }}" =~ ^depot.* ]]; then
# This environment variable is passes into the container through the
# runner pod definition. This differs between our two clusters which
>From 86813cbb0a3d759ff3a54718636f67dc8f28baa4 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 28 Aug 2025 18:00:10 +0000
Subject: [PATCH 44/54] Fix typo
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index f06bb88d870b9..6dc19fa25261e 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -72,7 +72,7 @@ jobs:
if "$RUNNER_ARCH" = "ARM64"; then
# XFAIL lldb test: https://github.com/llvm/llvm-project/issues/155895
- export LIT_XFAIL=functionalities/gdb_remote_client/TestqOffsets.py"
+ export LIT_XFAIL="functionalities/gdb_remote_client/TestqOffsets.py"
fi
if ! [[ "${{ matrix.runs-on }}" =~ ^depot.* ]]; then
>From 2a385ff3951e374f0240ed63471c70bc57bf3817 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 28 Aug 2025 18:18:11 +0000
Subject: [PATCH 45/54] Enable sccache
---
.ci/utils.sh | 6 +++---
.github/workflows/premerge.yaml | 18 +++++++++---------
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/.ci/utils.sh b/.ci/utils.sh
index 93c281b43851c..2a3d2426b630a 100644
--- a/.ci/utils.sh
+++ b/.ci/utils.sh
@@ -18,14 +18,14 @@ BUILD_DIR="${BUILD_DIR:=${MONOREPO_ROOT}/build}"
rm -rf "${BUILD_DIR}"
-#sccache --zero-stats
+sccache --zero-stats
function at-exit {
retcode=$?
mkdir -p artifacts
- #sccache --show-stats
- #sccache --show-stats >> artifacts/sccache_stats.txt
+ sccache --show-stats
+ sccache --show-stats >> artifacts/sccache_stats.txt
cp "${BUILD_DIR}"/.ninja_log artifacts/.ninja_log
cp "${MONOREPO_ROOT}"/*.log artifacts/ || :
cp "${BUILD_DIR}"/test-results.*.xml artifacts/ || :
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 6dc19fa25261e..8ac8dea5916f7 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -75,22 +75,22 @@ jobs:
export LIT_XFAIL="functionalities/gdb_remote_client/TestqOffsets.py"
fi
- if ! [[ "${{ matrix.runs-on }}" =~ ^depot.* ]]; then
+ if ! [[ "${{ matrix.runs-on }}" = "llvm-premerge-linux-runners" ]]; then
# This environment variable is passes into the container through the
# runner pod definition. This differs between our two clusters which
# why we do not hardcode it.
export SCCACHE_GCS_BUCKET=$CACHE_GCS_BUCKET
export SCCACHE_GCS_RW_MODE=READ_WRITE
-
- # Set the idle timeout to zero to ensure sccache runs for the
- # entire duration of the job. Otherwise it might stop if we run
- # several test suites in a row and discard statistics that we want
- # to save in the end.
- export SCCACHE_IDLE_TIMEOUT=0
- mkdir artifacts
- SCCACHE_LOG=info SCCACHE_ERROR_LOG=$(pwd)/artifacts/sccache.log sccache --start-server
fi
+ # Set the idle timeout to zero to ensure sccache runs for the
+ # entire duration of the job. Otherwise it might stop if we run
+ # several test suites in a row and discard statistics that we want
+ # to save in the end.
+ export SCCACHE_IDLE_TIMEOUT=0
+ mkdir artifacts
+ SCCACHE_LOG=info SCCACHE_ERROR_LOG=$(pwd)/artifacts/sccache.log sccache --start-server
+
./.ci/monolithic-linux.sh "${projects_to_build}" "${project_check_targets}" "${runtimes_to_build}" "${runtimes_check_targets}" "${runtimes_check_targets_needs_reconfig}" "${enable_cir}"
- name: Upload Artifacts
# In some cases, Github will fail to upload the artifact. We want to
>From 690300a9678f839737a526635caf9f7ab20a5b0a Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 28 Aug 2025 18:22:52 +0000
Subject: [PATCH 46/54] Fix names
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 8ac8dea5916f7..417643b23c4a7 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -24,7 +24,7 @@ concurrency:
jobs:
premerge-checks-linux:
- name: Build and Test Linux
+ name: Build and Test Linux ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && 'AArch64') || 'X86_64' }}
if: >-
github.repository_owner == 'llvm' &&
(github.event_name != 'pull_request' || github.event.action != 'closed')
>From 3a4b6afb931909867d032fe507340830dd768435 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 28 Aug 2025 18:43:39 +0000
Subject: [PATCH 47/54] Try again with filtering out tests
---
.github/workflows/premerge.yaml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 417643b23c4a7..cb0487322ea7b 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -32,7 +32,7 @@ jobs:
fail-fast: false
matrix:
runs-on:
- - depot-ubuntu-24.04-arm-64
+ - depot-ubuntu-24.04-arm-16
- llvm-premerge-linux-runners
runs-on: ${{ matrix.runs-on }}
container:
@@ -73,7 +73,9 @@ jobs:
if "$RUNNER_ARCH" = "ARM64"; then
# XFAIL lldb test: https://github.com/llvm/llvm-project/issues/155895
export LIT_XFAIL="functionalities/gdb_remote_client/TestqOffsets.py"
+ export LIT_FILTER_OUT=TestqOffsets.py
fi
+ env
if ! [[ "${{ matrix.runs-on }}" = "llvm-premerge-linux-runners" ]]; then
# This environment variable is passes into the container through the
>From 60d13b49faa6deaa017a1be7dfe8ae236bd2af80 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 28 Aug 2025 18:50:19 +0000
Subject: [PATCH 48/54] Fix sccache
---
.github/workflows/premerge.yaml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index cb0487322ea7b..c5224c8321ff9 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -75,15 +75,15 @@ jobs:
export LIT_XFAIL="functionalities/gdb_remote_client/TestqOffsets.py"
export LIT_FILTER_OUT=TestqOffsets.py
fi
- env
- if ! [[ "${{ matrix.runs-on }}" = "llvm-premerge-linux-runners" ]]; then
+ if [[ "${{ matrix.runs-on }}" = "llvm-premerge-linux-runners" ]]; then
# This environment variable is passes into the container through the
# runner pod definition. This differs between our two clusters which
# why we do not hardcode it.
export SCCACHE_GCS_BUCKET=$CACHE_GCS_BUCKET
export SCCACHE_GCS_RW_MODE=READ_WRITE
fi
+ env
# Set the idle timeout to zero to ensure sccache runs for the
# entire duration of the job. Otherwise it might stop if we run
>From 3b62739476c0d8ce7cac5a52aa58627a542bb451 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 28 Aug 2025 18:53:42 +0000
Subject: [PATCH 49/54] Fix runner arch
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index c5224c8321ff9..23820283a6f71 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -70,7 +70,7 @@ jobs:
export CC=/opt/llvm/bin/clang
export CXX=/opt/llvm/bin/clang++
- if "$RUNNER_ARCH" = "ARM64"; then
+ if [ "$RUNNER_ARCH" = "ARM64" ]; then
# XFAIL lldb test: https://github.com/llvm/llvm-project/issues/155895
export LIT_XFAIL="functionalities/gdb_remote_client/TestqOffsets.py"
export LIT_FILTER_OUT=TestqOffsets.py
>From 9c6141bd1def3844a30c2d23fac2fb1a14586f9a Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 28 Aug 2025 22:26:43 +0000
Subject: [PATCH 50/54] Fix artifacts
---
.github/workflows/premerge.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 23820283a6f71..5acf6017bf4cc 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -103,7 +103,7 @@ jobs:
if: '!cancelled()'
uses: actions/upload-artifact at 65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
- name: Premerge Artifacts (Linux)
+ name: Premerge Artifacts (Linux ${{ runner.arch }})
path: artifacts/
retention-days: 5
include-hidden-files: 'true'
>From a88a1f7704de8f49cbd751a4e8d59fb60c0e75a6 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 28 Aug 2025 23:50:39 +0000
Subject: [PATCH 51/54] Try to fix sccache
---
.github/workflows/premerge.yaml | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 5acf6017bf4cc..d3b8a7a90b16d 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -37,7 +37,12 @@ jobs:
runs-on: ${{ matrix.runs-on }}
container:
image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
- options: --privileged
+ # --privileged is needed to run the lldb tests that disable aslr.
+ # --env-host is needed to copy over the environment variables for
+ # configuring sccache.
+ options: >-
+ --privileged
+ --env SCCACHE*
defaults:
run:
# The run step defaults to using sh as the shell when running in a
>From d4723790c5c4b119d27ab09aca0dc6e3cd11e1a3 Mon Sep 17 00:00:00 2001
From: ultimateforce21 <abdullahmohammad155 at gmail.com>
Date: Thu, 28 Aug 2025 19:07:00 -0400
Subject: [PATCH 52/54] Skip TestVariableAnnotationsDisassembler.py on non-x86
architectures
The test TestVariableAnnotationsDisassembler.py relies on an .s input file generated for x86_64 with assembly directives that are not portable (e.g., DWARF sections and comments using #).
This causes build failures on non-x86 targets such as AArch64.
This change skips the test unless the architecture is x86_64, ensuring it only runs where the assembly input is valid.
---
.../TestVariableAnnotationsDisassembler.py | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/lldb/test/API/functionalities/disassembler-variables/TestVariableAnnotationsDisassembler.py b/lldb/test/API/functionalities/disassembler-variables/TestVariableAnnotationsDisassembler.py
index e6f26bf8fd389..4d99ea771605a 100644
--- a/lldb/test/API/functionalities/disassembler-variables/TestVariableAnnotationsDisassembler.py
+++ b/lldb/test/API/functionalities/disassembler-variables/TestVariableAnnotationsDisassembler.py
@@ -22,6 +22,7 @@ def _disassemble_verbose_symbol(self, symname):
self.runCmd(f"disassemble -n {symname} -v", check=True)
return self.res.GetOutput()
+ @skipIf(archs=no_match(["x86_64"]))
def test_d_original_example_O1(self):
obj = self._build_obj("d_original_example.o")
target = self._create_target(obj)
@@ -33,6 +34,7 @@ def test_d_original_example_O1(self):
self.assertNotIn("<decoding error>", out)
@no_debug_info_test
+ @skipIf(archs=no_match(["x86_64"]))
def test_regs_int_params(self):
obj = self._build_obj("regs_int_params.o")
target = self._create_target(obj)
@@ -47,6 +49,7 @@ def test_regs_int_params(self):
self.assertNotIn("<decoding error>", out)
@no_debug_info_test
+ @skipIf(archs=no_match(["x86_64"]))
def test_regs_fp_params(self):
obj = self._build_obj("regs_fp_params.o")
target = self._create_target(obj)
@@ -61,6 +64,7 @@ def test_regs_fp_params(self):
self.assertNotIn("<decoding error>", out)
@no_debug_info_test
+ @skipIf(archs=no_match(["x86_64"]))
def test_regs_mixed_params(self):
obj = self._build_obj("regs_mixed_params.o")
target = self._create_target(obj)
@@ -75,6 +79,7 @@ def test_regs_mixed_params(self):
self.assertNotIn("<decoding error>", out)
@no_debug_info_test
+ @skipIf(archs=no_match(["x86_64"]))
def test_live_across_call(self):
obj = self._build_obj("live_across_call.o")
target = self._create_target(obj)
@@ -86,6 +91,7 @@ def test_live_across_call(self):
self.assertNotIn("<decoding error>", out)
@no_debug_info_test
+ @skipIf(archs=no_match(["x86_64"]))
def test_loop_reg_rotate(self):
obj = self._build_obj("loop_reg_rotate.o")
target = self._create_target(obj)
@@ -99,6 +105,7 @@ def test_loop_reg_rotate(self):
self.assertNotIn("<decoding error>", out)
@no_debug_info_test
+ @skipIf(archs=no_match(["x86_64"]))
def test_seed_reg_const_undef(self):
obj = self._build_obj("seed_reg_const_undef.o")
target = self._create_target(obj)
>From d2fd1f4cca680065c92e6f595cd97e8ae444ae35 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Fri, 29 Aug 2025 03:12:18 +0000
Subject: [PATCH 53/54] sccache fix and debug
---
.github/workflows/premerge.yaml | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index d3b8a7a90b16d..99684cb6958b1 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -42,7 +42,8 @@ jobs:
# configuring sccache.
options: >-
--privileged
- --env SCCACHE*
+ --env SCCACHE_WEBDAV_ENDPOINT
+ --env SCCACHE_WEBDAV_TOKEN
defaults:
run:
# The run step defaults to using sh as the shell when running in a
@@ -98,7 +99,7 @@ jobs:
mkdir artifacts
SCCACHE_LOG=info SCCACHE_ERROR_LOG=$(pwd)/artifacts/sccache.log sccache --start-server
- ./.ci/monolithic-linux.sh "${projects_to_build}" "${project_check_targets}" "${runtimes_to_build}" "${runtimes_check_targets}" "${runtimes_check_targets_needs_reconfig}" "${enable_cir}"
+# ./.ci/monolithic-linux.sh "${projects_to_build}" "${project_check_targets}" "${runtimes_to_build}" "${runtimes_check_targets}" "${runtimes_check_targets_needs_reconfig}" "${enable_cir}"
- name: Upload Artifacts
# In some cases, Github will fail to upload the artifact. We want to
# continue anyways as a failed artifact upload is an infra failure, not
>From 8e3c6769d8e920a804ade9fc2be39189499721fd Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Fri, 29 Aug 2025 03:20:59 +0000
Subject: [PATCH 54/54] Fix sccache
---
.github/workflows/premerge.yaml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 99684cb6958b1..d97ced0cb8327 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -32,7 +32,7 @@ jobs:
fail-fast: false
matrix:
runs-on:
- - depot-ubuntu-24.04-arm-16
+ - depot-ubuntu-24.04-arm-4
- llvm-premerge-linux-runners
runs-on: ${{ matrix.runs-on }}
container:
@@ -99,7 +99,7 @@ jobs:
mkdir artifacts
SCCACHE_LOG=info SCCACHE_ERROR_LOG=$(pwd)/artifacts/sccache.log sccache --start-server
-# ./.ci/monolithic-linux.sh "${projects_to_build}" "${project_check_targets}" "${runtimes_to_build}" "${runtimes_check_targets}" "${runtimes_check_targets_needs_reconfig}" "${enable_cir}"
+ ./.ci/monolithic-linux.sh "${projects_to_build}" "${project_check_targets}" "${runtimes_to_build}" "${runtimes_check_targets}" "${runtimes_check_targets_needs_reconfig}" "${enable_cir}"
- name: Upload Artifacts
# In some cases, Github will fail to upload the artifact. We want to
# continue anyways as a failed artifact upload is an infra failure, not
More information about the lldb-commits
mailing list