}
ANN2(1,2) static inline m_bool class_parent(const Env env, Type t) {
- while(t && !GET_FLAG(t, valid)) {
+ do {
+ if(GET_FLAG(t, valid))
+ break;
if(t->e->def)
CHECK_BB(traverse_class_def(env, t->e->def))
- t = t->e->parent;
- }
+ } while((t = t->e->parent));
return GW_OK;
}
if(ini > 0)
gwion_run(&gwion);
gwion_end(&gwion);
- THREAD_RETURN(EXIT_SUCCESS);
+#ifndef BUILD_ON_WINDOWS
+ pthread_exit(NULL);
+#endif
+ return EXIT_SUCCESS;
}
#define VM_OUT shred->code = code; shred->reg = reg; shred->mem = mem; shred->pc = PC;
-__attribute__ ((hot, optimize("-O2")))
+__attribute__ ((hot))
+CC_OPTIM(-O2)
ANN void vm_run(const VM* vm) { // lgtm [cpp/use-of-goto]
static const void* dispatch[] = {
&®setimm,
-Subproject commit 6a4d0ad780438022192c2b8e1c129c85e6b897e5
+Subproject commit 01599165dac235c3e2e048c3525054a5d8dd556e