[llvm] [ORC][examples][LLVM-C] Fix ThreadSafeContext to wrap existing context (PR #157366)

László Várady via llvm-commits llvm-commits at lists.llvm.org
Sun Sep 7 15:02:55 PDT 2025


https://github.com/MrAnno created https://github.com/llvm/llvm-project/pull/157366

Fixes #155881

>From c78bb1e108e5f64f53cc2ecc91e306efe629d8fc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?L=C3=A1szl=C3=B3=20V=C3=A1rady?= <laszlo.varady at anno.io>
Date: Sun, 7 Sep 2025 23:24:30 +0200
Subject: [PATCH] [ORC][examples][LLVM-C] Fix ThreadSafeContext to wrap
 existing context

---
 .../OrcV2CBindingsBasicUsage/OrcV2CBindingsBasicUsage.c         | 2 +-
 .../OrcV2CBindingsIRTransforms/OrcV2CBindingsIRTransforms.c     | 2 +-
 .../OrcV2CBindingsVeryLazy/OrcV2CBindingsVeryLazy.c             | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/llvm/examples/OrcV2Examples/OrcV2CBindingsBasicUsage/OrcV2CBindingsBasicUsage.c b/llvm/examples/OrcV2Examples/OrcV2CBindingsBasicUsage/OrcV2CBindingsBasicUsage.c
index b95462f340f2f..36ca28281f4a4 100644
--- a/llvm/examples/OrcV2Examples/OrcV2CBindingsBasicUsage/OrcV2CBindingsBasicUsage.c
+++ b/llvm/examples/OrcV2Examples/OrcV2CBindingsBasicUsage/OrcV2CBindingsBasicUsage.c
@@ -55,7 +55,7 @@ LLVMOrcThreadSafeModuleRef createDemoModule(void) {
   LLVMDisposeBuilder(Builder);
 
   // Create a new ThreadSafeContext to hold the context.
-  LLVMOrcThreadSafeContextRef TSCtx = LLVMOrcCreateNewThreadSafeContext();
+  LLVMOrcThreadSafeContextRef TSCtx = LLVMOrcCreateNewThreadSafeContextFromLLVMContext(Ctx);
 
   // Our demo module is now complete. Wrap it and our ThreadSafeContext in a
   // ThreadSafeModule.
diff --git a/llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/OrcV2CBindingsIRTransforms.c b/llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/OrcV2CBindingsIRTransforms.c
index 62904d006da61..b64c26775fa60 100644
--- a/llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/OrcV2CBindingsIRTransforms.c
+++ b/llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/OrcV2CBindingsIRTransforms.c
@@ -46,7 +46,7 @@ LLVMOrcThreadSafeModuleRef createDemoModule(void) {
   LLVMValueRef Result = LLVMBuildAdd(Builder, SumArg0, SumArg1, "result");
   LLVMBuildRet(Builder, Result);
   LLVMDisposeBuilder(Builder);
-  LLVMOrcThreadSafeContextRef TSCtx = LLVMOrcCreateNewThreadSafeContext();
+  LLVMOrcThreadSafeContextRef TSCtx = LLVMOrcCreateNewThreadSafeContextFromLLVMContext(Ctx);
   LLVMOrcThreadSafeModuleRef TSM = LLVMOrcCreateNewThreadSafeModule(M, TSCtx);
   LLVMOrcDisposeThreadSafeContext(TSCtx);
   return TSM;
diff --git a/llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/OrcV2CBindingsVeryLazy.c b/llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/OrcV2CBindingsVeryLazy.c
index 3c1ff8392eff4..d3cda4a3a73e9 100644
--- a/llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/OrcV2CBindingsVeryLazy.c
+++ b/llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/OrcV2CBindingsVeryLazy.c
@@ -91,7 +91,7 @@ LLVMErrorRef parseExampleModule(const char *Source, size_t Len,
   }
 
   // Create a new ThreadSafeContext to hold the context.
-  LLVMOrcThreadSafeContextRef TSCtx = LLVMOrcCreateNewThreadSafeContext();
+  LLVMOrcThreadSafeContextRef TSCtx = LLVMOrcCreateNewThreadSafeContextFromLLVMContext(Ctx);
 
   // Our module is now complete. Wrap it and our ThreadSafeContext in a
   // ThreadSafeModule.



More information about the llvm-commits mailing list