mirror of
https://github.com/fluencelabs/wasmer
synced 2025-06-22 13:11:32 +00:00
Fix new RuntimeError integration with the LLVM-backend
This commit is contained in:
@ -13,7 +13,7 @@ MemoryManager::~MemoryManager() {
|
||||
callbacks.dealloc_memory(read_section.base, read_section.size);
|
||||
callbacks.dealloc_memory(readwrite_section.base, readwrite_section.size);
|
||||
}
|
||||
void unwinding_setjmp(jmp_buf stack_out, void (*func)(void *), void *userdata) {
|
||||
void unwinding_setjmp(jmp_buf &stack_out, void (*func)(void *), void *userdata) {
|
||||
if (setjmp(stack_out)) {
|
||||
|
||||
} else {
|
||||
|
@ -63,6 +63,8 @@ enum WasmTrapType {
|
||||
|
||||
extern "C" void callback_trampoline(void *, void *);
|
||||
|
||||
extern "C" void copy_runtime_error(runtime_error_t src, runtime_error_t dst);
|
||||
|
||||
struct MemoryManager : llvm::RuntimeDyld::MemoryManager {
|
||||
public:
|
||||
MemoryManager(callbacks_t callbacks) : callbacks(callbacks) {}
|
||||
@ -159,7 +161,7 @@ public:
|
||||
runtime_error_t error_data;
|
||||
|
||||
virtual void write_error(WasmErrorSink &out) const noexcept override {
|
||||
out.user_error = error_data;
|
||||
copy_runtime_error(error_data, out.user_error);
|
||||
}
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user