From: Deepesh.Varatharajan@windriver.com
To: openembedded-core@lists.openembedded.org
Cc: Sundeep.Kokkonda@windriver.com,
Deepesh.Varatharajan@windriver.com, Randy.MacLeod@windriver.com
Subject: [PATCH 0/4] Oe-selftest for Clang, LLVM, LLD
Date: Thu, 19 Feb 2026 22:02:48 -0800 [thread overview]
Message-ID: <20260220060252.77248-1-Deepesh.Varatharajan@windriver.com> (raw)
From: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
This patch series introduces a test framework to run selftests for
target builds of Clang, LLVM, and LLD.
Summary of changes:
-Patch 1: Disable clang-tools-extra tests, as Clang's CMake cannot
detect the llvm-bcanalyzer target.
-Patch 2: Enabled the necessary CMake flags for clang, llvm & lld tests
-Patch 3: Selftest script for Clang, LLVM, and LLD including exclude list
-Patch 4: Fix rust build failure by replacing target llvm-config with native
Testing:
1. The test suite has been successfully validated on x86-64, arm64, riscv64
and arm32 for all Clang, LLD & LLVM components.
2. Clang and LLD tests passed successfully on x86. LLVM tests are skipped
on x86 since it's broken. A follow-up bug will be filed and addressed.
3. Clang, LLVM & LLD all together ~80K tests are there and we currently
~250 tests to exclude list which are failing (0.32%).
Impact on build time:
These builds were executed in a controlled environment without poky-sstate
enabled.
Default(without changes):
| Target | Run 1 | Run 2 | Run 3 | Average |
| --------- | ---------- | ---------- | ---------- | -------------- |
| llvm | 22m18.441s | 22m31.905s | 22m23.718s | 22m24.688s |
| clang | 30m09.774s | 30m22.680s | 30m15.312s | 30m15.922s |
| lld | 1m26.994s | 1m30.415s | 1m29.006s | 1m28.805s |
With the testsuite changes applied:
| Target | Run 1 | Run 2 | Run 3 | Average |
| --------- | ---------- | ---------- | ---------- | -------------- |
| llvm | 23m32.104s | 23m45.887s | 23m38.157s | 23m38.716s |
| clang | 30m31.402s | 30m46.198s | 30m39.445s | 30m39.015s |
| lld | 1m29.845s | 1m34.212s | 1m31.925s | 1m31.994s |
Comparison:
| Target | Default Avg | With Changes Avg | **Diff** |
| --------- | ----------- | ---------------- | ---------------- |
| llvm | 22m24.688s | 23m38.716s | +1m14.028s |
| clang | 30m15.922s | 30m39.015s | +0m23.093s |
| lld | 1m28.805s | 1m31.994s | +0m3.189s |
Impact on tmpdir size:
| Metric | Size |
| ------------------------------------ | ----- |
| Default target `tmpdir` size | 74 GB |
| Target `tmpdir` size (after changes) | 79 GB |
| Difference | +5 GB |
Deepesh Varatharajan (4):
clang-tools-extra: disable tests
clang: Enable cmake flags for llvm, clang, lld tests
oeqa/selftest/clang: Add oe-seltests for Clang/LLVM/LLD
rust: Fix rust build failure
meta/lib/oeqa/selftest/cases/clang.py | 298 ++++++++++++++++++
.../0042-guard-clang-tools-extra-test.patch | 74 +++++
meta/recipes-devtools/clang/clang_git.bb | 2 +
meta/recipes-devtools/clang/common.inc | 1 +
meta/recipes-devtools/clang/lld_git.bb | 2 +
meta/recipes-devtools/clang/llvm_git.bb | 8 +-
meta/recipes-devtools/rust/rust_1.93.0.bb | 5 +-
7 files changed, 387 insertions(+), 3 deletions(-)
create mode 100644 meta/lib/oeqa/selftest/cases/clang.py
create mode 100644 meta/recipes-devtools/clang/clang/0042-guard-clang-tools-extra-test.patch
--
2.49.0
next reply other threads:[~2026-02-20 6:03 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-20 6:02 Deepesh.Varatharajan [this message]
2026-02-20 6:02 ` [PATCH 1/4] clang-tools-extra: disable tests Deepesh.Varatharajan
2026-02-20 6:02 ` [PATCH 2/4] clang: Enable cmake flags for llvm, clang, lld tests Deepesh.Varatharajan
2026-02-20 6:02 ` [PATCH 3/4] oeqa/selftest/clang: Add oe-seltests for Clang/LLVM/LLD Deepesh.Varatharajan
2026-02-20 6:02 ` [PATCH 4/4] rust: Fix rust build failure Deepesh.Varatharajan
2026-02-21 8:23 ` [OE-core] [PATCH 0/4] Oe-selftest for Clang, LLVM, LLD Mathieu Dubois-Briand
2026-02-25 8:56 ` Deepesh Varatharajan
2026-02-26 15:31 ` Randy MacLeod
2026-03-02 6:53 ` Deepesh Varatharajan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260220060252.77248-1-Deepesh.Varatharajan@windriver.com \
--to=deepesh.varatharajan@windriver.com \
--cc=Randy.MacLeod@windriver.com \
--cc=Sundeep.Kokkonda@windriver.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox