]> Nishi Git Mirror - gwion.git/commitdiff
:art: Simplify emit_symbol_builtin
authorfennecdjay <astor.jeremie@wanadoo.fr>
Thu, 10 Oct 2019 17:09:01 +0000 (19:09 +0200)
committerfennecdjay <astor.jeremie@wanadoo.fr>
Thu, 10 Oct 2019 17:09:01 +0000 (19:09 +0200)
src/emit/emit.c

index 6fc26fdf411bfa13441033385a6962845bb71af3..d67c655895d9cdd88b0fd9414accd036ac8ffac3 100644 (file)
@@ -319,10 +319,7 @@ ANN static m_bool emit_symbol_owned(const Emitter emit, const Exp_Primary* prim)
 
 ANN static m_bool emit_symbol_builtin(const Emitter emit, const Exp_Primary* prim) {
   const Value v = prim->value;
-  if(GET_FLAG(v, func)) {
-    regpushi(emit, (m_uint)v->d.func_ref);
-    return GW_OK;
-  }
+  assert(!GET_FLAG(v, func));// regpushi(emit, (m_uint)v->d.func_ref);
   if(GET_FLAG(v, union)) {
     const m_uint size = v->type->size;
     const Instr instr = emit_kind(emit, size, exp_self(prim)->emit_var, dotstatic);
@@ -336,10 +333,10 @@ ANN static m_bool emit_symbol_builtin(const Emitter emit, const Exp_Primary* pri
         instr->m_val = (m_uint)v->d.ptr;
       } else if(v->d.ptr)
         instr->m_val = *(m_uint*)v->d.ptr;
-    } else if(v->d.ptr)
+    } else {
+      assert(v->d.ptr); // instr->m_val = v->d.ptr;
       memcpy(&instr->m_val, v->d.ptr, v->type->size);
-    else
-      instr->m_val = (m_uint)v->d.ptr;
+    }
     instr->m_val2 = size;
   }
   return GW_OK;