[llvm] [ORC] Fix ReOptimizeLayer buggy jit-dispatch signature in fa7f7a4cab4. (PR #173457)
Lang Hames via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 23 22:23:07 PST 2025
https://github.com/lhames updated https://github.com/llvm/llvm-project/pull/173457
>From aad65051fa26f00805536ffa636667f6fa8e2318 Mon Sep 17 00:00:00 2001
From: Lang Hames <lhames at gmail.com>
Date: Wed, 24 Dec 2025 06:04:59 +0000
Subject: [PATCH 1/3] [ORC] Fix ReOptimizeLayer buggy jit-dispatch signature in
fa7f7a4cab4.
fa7f7a4cab4 changed the jit-dispatch function signature used in the
orc_rt_lite_reoptimize_helper function, but jit-dispatch still takes a raw data
pointer and size argument.
Should fix the bug in https://lab.llvm.org/buildbot/#/builders/169/builds/18319
and similar builds.
---
llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp b/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
index 1e0ecc25b1971..e84a97c4fa15c 100644
--- a/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
+++ b/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
@@ -28,7 +28,7 @@ void ReOptimizeLayer::ReOptMaterializationUnitState::reoptimizeFailed() {
static void orc_rt_lite_reoptimize_helper(
shared::CWrapperFunctionBuffer (*JITDispatch)(
- void *Ctx, void *Tag, shared::CWrapperFunctionBuffer),
+ void *Ctx, void *Tag, const char *Data, size_t Size),
void *JITDispatchCtx, void *Tag, uint64_t MUID, uint32_t CurVersion) {
// Serialize the arguments into a WrapperFunctionBuffer and call dispatch.
using SPSArgs = shared::SPSArgList<uint64_t, uint32_t>;
@@ -41,7 +41,7 @@ static void orc_rt_lite_reoptimize_helper(
abort();
}
shared::WrapperFunctionBuffer Buf{
- JITDispatch(JITDispatchCtx, Tag, ArgBytes.release())};
+ JITDispatch(JITDispatchCtx, Tag, ArgBytes.data(), ArgBytes.size() )};
if (const char *ErrMsg = Buf.getOutOfBandError()) {
errs() << "Reoptimization error: " << ErrMsg << "\naborting.\n";
>From 79c71b02ee63e918a9162395ff88c78134330199 Mon Sep 17 00:00:00 2001
From: Lang Hames <lhames at gmail.com>
Date: Wed, 24 Dec 2025 17:19:10 +1100
Subject: [PATCH 2/3] Update ReOptimizeLayer.cpp
---
llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp b/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
index e84a97c4fa15c..27a1ba52e66ef 100644
--- a/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
+++ b/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
@@ -41,7 +41,7 @@ static void orc_rt_lite_reoptimize_helper(
abort();
}
shared::WrapperFunctionBuffer Buf{
- JITDispatch(JITDispatchCtx, Tag, ArgBytes.data(), ArgBytes.size() )};
+ JITDispatch(JITDispatchCtx, Tag, ArgBytes.data(), ArgBytes.size())};
if (const char *ErrMsg = Buf.getOutOfBandError()) {
errs() << "Reoptimization error: " << ErrMsg << "\naborting.\n";
>From 9723e763802b2357b46d1e93ff049e1dd25bbd43 Mon Sep 17 00:00:00 2001
From: Lang Hames <lhames at gmail.com>
Date: Wed, 24 Dec 2025 17:22:59 +1100
Subject: [PATCH 3/3] Update ReOptimizeLayer.cpp
---
llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp b/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
index 27a1ba52e66ef..ef84a952ddc82 100644
--- a/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
+++ b/llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
@@ -27,8 +27,9 @@ void ReOptimizeLayer::ReOptMaterializationUnitState::reoptimizeFailed() {
}
static void orc_rt_lite_reoptimize_helper(
- shared::CWrapperFunctionBuffer (*JITDispatch)(
- void *Ctx, void *Tag, const char *Data, size_t Size),
+ shared::CWrapperFunctionBuffer (*JITDispatch)(void *Ctx, void *Tag,
+ const char *Data,
+ size_t Size),
void *JITDispatchCtx, void *Tag, uint64_t MUID, uint32_t CurVersion) {
// Serialize the arguments into a WrapperFunctionBuffer and call dispatch.
using SPSArgs = shared::SPSArgList<uint64_t, uint32_t>;
More information about the llvm-commits
mailing list