From 3e0a688a53e65c88e074d31f1405b6df20a33310 Mon Sep 17 00:00:00 2001 From: fennecdjay Date: Sun, 20 Jan 2019 21:20:16 +0100 Subject: [PATCH] :art: global Call optimization --- src/emit/emit.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/emit/emit.c b/src/emit/emit.c index d9b357c5..67b1648b 100644 --- a/src/emit/emit.c +++ b/src/emit/emit.c @@ -649,6 +649,12 @@ ANN static m_bool emit_exp_dur(const Emitter emit, const Exp_Dur* dur) { GWDEBUG } static inline m_bool push_func_code(const Emitter emit, const Func f) { + const Instr back = (Instr)vector_back(&emit->code->instr); + if(back->execute == RegPushBase) { + back->execute = RegPushImm0; + back->m_val = (m_uint)f->code; + return GW_OK; + } const Instr instr = emit_add_instr(emit, RegPushPtr); return !!(instr->m_val = (m_uint)f->code); } -- 2.43.0