[Lldb-commits] [lldb] [llvm] Add AArch64 support to the premerge tests (PR #155274)
Tom Stellard via lldb-commits
lldb-commits at lists.llvm.org
Mon Sep 8 07:42:30 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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/64] 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
>From 3fa985b714bad76aa0bd4a2fddf5c03f9661d282 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Sat, 30 Aug 2025 15:26:26 +0000
Subject: [PATCH 55/64] Use bigger machine to avoid running out of disk
---
.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 d97ced0cb8327..15099591cf8e7 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-4
+ - depot-ubuntu-24.04-arm-16
- llvm-premerge-linux-runners
runs-on: ${{ matrix.runs-on }}
container:
>From a4052306e9191298ed8b1bb619f5d5737f49dcef Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Tue, 2 Sep 2025 16:57:22 -0700
Subject: [PATCH 56/64] Fix platform title
---
.ci/generate_test_report_github.py | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/.ci/generate_test_report_github.py b/.ci/generate_test_report_github.py
index 7242264723cbf..b121f25ca3280 100644
--- a/.ci/generate_test_report_github.py
+++ b/.ci/generate_test_report_github.py
@@ -8,11 +8,6 @@
import generate_test_report_lib
-PLATFORM_TITLES = {
- "Windows": ":window: Windows x64 Test Results",
- "Linux": ":penguin: Linux x64 Test Results",
-}
-
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("return_code", help="The build's return code.", type=int)
@@ -21,8 +16,10 @@
)
args = parser.parse_args()
+ logo = ":window:" if platform.system() == "Windows" else ":penguin:"
+ platform_title = f"{logo} {platform.system()} {platform.architecture()} Test Results"
report = generate_test_report_lib.generate_report_from_files(
- PLATFORM_TITLES[platform.system()], args.return_code, args.build_test_logs
+ platform_title, args.return_code, args.build_test_logs
)
print(report)
>From 1325760ac44bc57037257c0d8157dd483b48364a Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 3 Sep 2025 18:52:15 +0000
Subject: [PATCH 57/64] Fix test display
---
.ci/generate_test_report_github.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.ci/generate_test_report_github.py b/.ci/generate_test_report_github.py
index b121f25ca3280..0cdb02c9ad1a1 100644
--- a/.ci/generate_test_report_github.py
+++ b/.ci/generate_test_report_github.py
@@ -17,7 +17,7 @@
args = parser.parse_args()
logo = ":window:" if platform.system() == "Windows" else ":penguin:"
- platform_title = f"{logo} {platform.system()} {platform.architecture()} Test Results"
+ platform_title = f"{logo} {platform.system()} {platform.machine()} Test Results"
report = generate_test_report_lib.generate_report_from_files(
platform_title, args.return_code, args.build_test_logs
)
>From 3312bf23c4cd8ca6501da686610d2d5bb39aba52 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 3 Sep 2025 20:16:28 +0000
Subject: [PATCH 58/64] Fix test header
---
.ci/generate_test_report_github.py | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/.ci/generate_test_report_github.py b/.ci/generate_test_report_github.py
index 0cdb02c9ad1a1..f4814cc26f152 100644
--- a/.ci/generate_test_report_github.py
+++ b/.ci/generate_test_report_github.py
@@ -17,7 +17,12 @@
args = parser.parse_args()
logo = ":window:" if platform.system() == "Windows" else ":penguin:"
- platform_title = f"{logo} {platform.system()} {platform.machine()} Test Results"
+ # On Linux the machine value is x86_64 on Windows it is AMD64.
+ if platform.machine() == 'x86_64' or platform.machine() == "AMD64":
+ arch = "x64"
+ else:
+ arch = platform.machine()
+ platform_title = f"{logo} {platform.system()} {arch} Test Results"
report = generate_test_report_lib.generate_report_from_files(
platform_title, args.return_code, args.build_test_logs
)
>From 169ee476d27dea009d5e2dcd821824161863990e Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 3 Sep 2025 23:34:21 +0000
Subject: [PATCH 59/64] Fix python formatting
---
.ci/generate_test_report_github.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.ci/generate_test_report_github.py b/.ci/generate_test_report_github.py
index f4814cc26f152..35d1b7bf17a6b 100644
--- a/.ci/generate_test_report_github.py
+++ b/.ci/generate_test_report_github.py
@@ -18,7 +18,7 @@
logo = ":window:" if platform.system() == "Windows" else ":penguin:"
# On Linux the machine value is x86_64 on Windows it is AMD64.
- if platform.machine() == 'x86_64' or platform.machine() == "AMD64":
+ if platform.machine() == "x86_64" or platform.machine() == "AMD64":
arch = "x64"
else:
arch = platform.machine()
>From 1aed3e4d394a76186213078e5c6965b8721bc299 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 3 Sep 2025 23:35:08 +0000
Subject: [PATCH 60/64] Remove readme change
---
llvm/README.txt | 2 --
1 file changed, 2 deletions(-)
diff --git a/llvm/README.txt b/llvm/README.txt
index 2e35844e9e3a6..b9b71a3b6daff 100644
--- a/llvm/README.txt
+++ b/llvm/README.txt
@@ -15,5 +15,3 @@ documentation setup.
If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.
-
-Test for CI.
>From 87994d047ba0194ba3ea41d9ebdca15024ed1f6d Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 3 Sep 2025 23:38:49 +0000
Subject: [PATCH 61/64] More Fixes
---
.github/workflows/premerge.yaml | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index dfff0a03442b5..e6d44887603df 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -38,8 +38,9 @@ jobs:
container:
image: ${{ (startsWith(matrix.runs-on, 'depot-ubuntu-24.04-arm') && format('ghcr.io/{0}/arm64v8/ci-ubuntu-24.04',github.repository_owner) ) || null }}
# --privileged is needed to run the lldb tests that disable aslr.
- # --env-host is needed to copy over the environment variables for
- # configuring sccache.
+ # The SCCACHE environment variables are need to be copied from the host
+ # to the container to make sure it is configured correctly to use the
+ # depot cache.
options: >-
--privileged
--env SCCACHE_WEBDAV_ENDPOINT
@@ -55,7 +56,6 @@ jobs:
uses: actions/checkout at 08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 2
-
- name: Build and Test
run: |
git config --global --add safe.directory '*'
>From 029adf40ad997b16f9f673be92c80ce955d975e8 Mon Sep 17 00:00:00 2001
From: David Spickett <david.spickett at linaro.org>
Date: Mon, 8 Sep 2025 11:41:33 +0000
Subject: [PATCH 62/64] Prevent TestqOffsets.py picking up host binaries
Due to a fallback in GDBRemoteCommunicationClient.cpp, on Linux we
will assume a PID of 1 if the remote does not respond in some
way that tells us the real PID.
So if PID 1 happened to be a process that the current user could
read, we would try to debug that instead. On my current machine,
PID 1 was sshd run by root so we would ignore it. If I changed
the fallback to some process ID run by my user, the test would fail.
To prevent this, return something to LLDB that tells it there is
no remote PID, preventing the host lookup.
Fixes #155895
---
.../API/functionalities/gdb_remote_client/TestqOffsets.py | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py b/lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py
index a1adc20e864ba..e069f10b19e1e 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py
@@ -10,6 +10,11 @@ class Responder(MockGDBServerResponder):
def qOffsets(self):
return "Text=470000;Data=470000"
+ def qfThreadInfo(self):
+ # Prevent LLDB defaulting to PID of 1 and looking up some other
+ # process when on an AArch64 host.
+ return "m-1"
+
def test(self):
self.server.responder = TestqOffsets.Responder()
target = self.createTarget("qOffsets.yaml")
>From 24e06354db23260d9060f7f947104f155b73b6bc Mon Sep 17 00:00:00 2001
From: David Spickett <david.spickett at linaro.org>
Date: Mon, 8 Sep 2025 14:07:48 +0000
Subject: [PATCH 63/64] platform select instead
---
.../API/functionalities/gdb_remote_client/TestqOffsets.py | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py b/lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py
index e069f10b19e1e..629361c6ae5b8 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py
@@ -10,13 +10,10 @@ class Responder(MockGDBServerResponder):
def qOffsets(self):
return "Text=470000;Data=470000"
- def qfThreadInfo(self):
- # Prevent LLDB defaulting to PID of 1 and looking up some other
- # process when on an AArch64 host.
- return "m-1"
-
def test(self):
self.server.responder = TestqOffsets.Responder()
+ # This ensures that we do not pick up any binaries on the host.
+ self.runCmd("platform select remote-linux")
target = self.createTarget("qOffsets.yaml")
text = target.modules[0].FindSection(".text")
self.assertEqual(text.GetLoadAddress(target), lldb.LLDB_INVALID_ADDRESS)
>From e8ce7c4a6725d9c941fa8c7d808a30a6d7719ec5 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Mon, 8 Sep 2025 14:38:14 +0000
Subject: [PATCH 64/64] Re-enable failing tests
---
.github/workflows/premerge.yaml | 6 ------
1 file changed, 6 deletions(-)
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index e6d44887603df..683c52ea73a70 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -76,12 +76,6 @@ 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"
- export LIT_FILTER_OUT=TestqOffsets.py
- fi
-
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
More information about the lldb-commits
mailing list