]> Nishi Git Mirror - gwion.git/commitdiff
:art: remove SetRecurs
authorJérémie Astor <fennecdjay@gmail.com>
Thu, 28 Apr 2022 22:03:10 +0000 (00:03 +0200)
committerJérémie Astor <fennecdjay@gmail.com>
Thu, 28 Apr 2022 22:03:10 +0000 (00:03 +0200)
include/instr.h
src/emit/emit.c
src/lib/instr.c

index 9e0ce934dc2dd999d0a9f27c47f9392303c2c60a..2b9b53924b7f3d51f3601c79c4cd52c594bc5c29 100644 (file)
@@ -80,7 +80,6 @@ ANN void   free_dottmpl(struct dottmpl_ *);
 ANN m_bool traverse_dot_tmpl(const Emitter emit, const struct dottmpl_ *dt);
 
 INSTR(SetFunc);
-INSTR(SetRecurs);
 INSTR(SetCtor);
 // optimizations
 #ifdef OPTIMIZE
index 0f5e17c5fe4501ba4c1e2f3492e18bd1730421a4..2fa8c50476e7d64c08cfa1d1bad8a264b46dc534 100644 (file)
@@ -1714,12 +1714,6 @@ ANN m_bool emit_exp_call1(const Emitter emit, const Func f,
     if (tmpl && !is_fptr(emit->gwion, f->value_ref->type)) {
       if (emit->env->func != f)
         CHECK_BB(emit_template_code(emit, f));
-      else { // recursive function. (maybe should be used only for global funcs)
-        /*  const Instr back = (Instr) vector_size(&emit->code->instr) ?
-              (Instr)vector_back(&emit->code->instr) : emit_add_instr(emit,
-          RegPushImm); back->opcode = eOP_MAX; back->execute = SetRecurs;
-          back->m_val = 0;*/
-      }
     } else if (emit->env->func != f && !f->value_ref->from->owner_class &&
                !f->code && !is_fptr(emit->gwion, f->value_ref->type)) {
       if (fbflag(f->def->base, fbflag_op)) {
index 1e3843ec00af9d5854e69b6ed16eb7b3f5adb318..f9f546e44e6a903c1f1b200495c28932b31cdc14 100644 (file)
@@ -135,13 +135,6 @@ INSTR(SetFunc) {
   shred->reg += SZ_INT;
 }
 
-INSTR(SetRecurs) {
-exit(4);
-  BYTE(eRegPushImm)
-  VAL = *(m_uint *)(shred->reg) = (m_uint)shred->code;
-  shred->reg += SZ_INT;
-}
-
 INSTR(SetCtor) {
   BYTE(eRegSetImm)
   const Type t = (Type)instr->m_val;