mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-09-01 04:00:16 +00:00
bcc: Fix build with LLVM 23
LLVM 23 changed the MCContext constructor to take MCAsmInfo, MCRegisterInfo and MCSubtargetInfo by reference rather than by pointer, so bcc no longer builds: src/cc/bcc_debug.cc:151:68: error: no matching function for call to 'llvm::MCContext::MCContext(...)' Backport the upstream fix. It is guarded on LLVM_VERSION_MAJOR so older Clang keeps working. There is no release carrying it yet; v0.37.0 is still the newest tag. Co-authored-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com> Signed-off-by: Sunil Dora <sunilkumar.dora@windriver.com> Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
co-authored by
Deepesh Varatharajan
parent
3e3ed6643b
commit
6e73c01ca2
+36
@@ -0,0 +1,36 @@
|
||||
From dad0db93fd0f443b2a4f43bc2f23c621c9202516 Mon Sep 17 00:00:00 2001
|
||||
From: Viktor Malik <viktor.malik@gmail.com>
|
||||
Date: Thu, 13 Aug 2026 08:22:00 +0200
|
||||
Subject: [PATCH] src/cc: Fix MCContext constructor for LLVM 23
|
||||
|
||||
Two LLVM 23 patches [1,2] changed the MCContext constructor to take
|
||||
MCAsmInfo, MCRegisterInfo, and MCSubtargetInfo by a reference rather
|
||||
than by a pointer. Reflect the change in call of the constructor.
|
||||
|
||||
[1] https://github.com/llvm/llvm-project/commit/13e98d834101efd1794cdd026377c508293ee21b
|
||||
[2] https://github.com/llvm/llvm-project/commit/d50631faad3003e73589528c83d3bbbad7ba72f1
|
||||
|
||||
Upstream-Status: Backport [https://github.com/iovisor/bcc/commit/dad0db93fd0f]
|
||||
|
||||
Signed-off-by: Viktor Malik <viktor.malik@gmail.com>
|
||||
Signed-off-by: Sunil Dora <sunilkumar.dora@windriver.com>
|
||||
---
|
||||
src/cc/bcc_debug.cc | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/src/cc/bcc_debug.cc b/src/cc/bcc_debug.cc
|
||||
index 2e53c44d4778..0812c4abc788 100644
|
||||
--- a/src/cc/bcc_debug.cc
|
||||
+++ b/src/cc/bcc_debug.cc
|
||||
@@ -148,7 +148,11 @@ void SourceDebugger::dump() {
|
||||
T->createMCSubtargetInfo(TripleArg, "", ""));
|
||||
MCObjectFileInfo MOFI;
|
||||
#if LLVM_VERSION_MAJOR >= 13
|
||||
+#if LLVM_VERSION_MAJOR >= 23
|
||||
+ MCContext Ctx(TheTriple, *MAI, *MRI, *STI, nullptr);
|
||||
+#else
|
||||
MCContext Ctx(TheTriple, MAI.get(), MRI.get(), STI.get(), nullptr);
|
||||
+#endif
|
||||
Ctx.setObjectFileInfo(&MOFI);
|
||||
MOFI.initMCObjectFileInfo(Ctx, false, false);
|
||||
#else
|
||||
@@ -23,6 +23,7 @@ SRC_URI = "gitsm://github.com/iovisor/bcc;branch=master;protocol=https;lfs=0;tag
|
||||
file://0001-CMakeLists.txt-override-the-PY_CMD_ESCAPED.patch \
|
||||
file://0001-Vendor-just-enough-extra-headers-to-allow-libbpf-to-.patch \
|
||||
file://0001-tests-cc-Allow-overriding-the-runtime-location-of-te.patch \
|
||||
file://0001-src-cc-Fix-MCContext-constructor-for-LLVM-23.patch \
|
||||
file://run-ptest \
|
||||
file://ptest_wrapper.sh \
|
||||
"
|
||||
|
||||
Reference in New Issue
Block a user