Skip to content

Commit 69b06ca

Browse files
committed
feat: Implement initial LLVM backend with coroutine support and runtime function integration.
1 parent 9b1a54d commit 69b06ca

2 files changed

Lines changed: 3 additions & 2 deletions

File tree

include/object.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,8 @@ struct ObjDictionary {
148148
Table items;
149149
};
150150

151+
typedef struct ObjTask ObjTask;
152+
151153
struct ObjTask {
152154
Obj obj;
153155
void* coroHandle; // LLVM Coroutine Handle

src/compiler/backend_llvm.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -473,8 +473,7 @@ class LLVMEmitter {
473473
false
474474
);
475475
llvm::Function::Create(AwaitType, llvm::Function::ExternalLinkage, "prox_rt_await", ModuleOb.get());
476-
}
477-
476+
478477
// Value prox_rt_run_and_wait(Value task)
479478
llvm::FunctionType *RunWaitType = llvm::FunctionType::get(
480479
Builder->getInt64Ty(),

0 commit comments

Comments
 (0)