fixed: `ovm` backend crashing on MacOS
authorBrendan Hansen <brendan.f.hansen@gmail.com>
Wed, 13 Dec 2023 16:54:54 +0000 (10:54 -0600)
committerBrendan Hansen <brendan.f.hansen@gmail.com>
Wed, 13 Dec 2023 16:54:54 +0000 (10:54 -0600)
interpreter/build.sh
interpreter/src/vm/vm_instrs.h

index 8d9fea724d70e4aa5ebee63a8444806b372b80ff..aeab5a0ad859ac216be76bb5f29585789430dd24 100755 (executable)
@@ -2,7 +2,7 @@
 
 # FLAGS="-g3 -O2 -DOVM_DEBUG=1 -fno-stack-protector"
 # FLAGS="-g3 -DOVM_VERBOSE=1"
-FLAGS="-Ofast -fno-stack-protector"
+FLAGS="-O3 -fno-stack-protector"
 LIBS="-pthread"
 TARGET="../shared/lib/$ONYX_ARCH/lib/libovmwasm.a"
 C_FILES="src/ovmwasm.c src/vm/*.c src/wasm/*.c src/debug/*.c"
index be464ed4418f43649132582884e0697908882646..97956aed05827483052aefbf12571c65794620ae 100644 (file)
@@ -27,7 +27,7 @@
 #define NEXT_OP \
     OVMI_DEBUG_HOOK; \
     instr = &code[state->pc++]; \
-    return OVMI_DISPATCH_NAME[instr->full_instr & OVM_INSTR_MASK](instr, state, values, memory, code);
+    __attribute__((musttail)) return OVMI_DISPATCH_NAME[instr->full_instr & OVM_INSTR_MASK](instr, state, values, memory, code);
 
 #define VAL(loc) values[loc]