diff options
| -rw-r--r-- | mrbgems/mruby-compiler/core/codegen.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c index fce55999d..f3d6d2d25 100644 --- a/mrbgems/mruby-compiler/core/codegen.c +++ b/mrbgems/mruby-compiler/core/codegen.c @@ -488,6 +488,11 @@ gen_move(codegen_scope *s, uint16_t dst, uint16_t src, int nopeep) s->pc = s->lastpc; genop_2(s, data.insn, dst, data.b); break; + case OP_GETUPVAR: + if (nopeep || data.a != src || data.a < s->nlocals) goto normal; + s->pc = s->lastpc; + genop_3(s, data.insn, dst, data.b, data.c); + break; default: goto normal; } |
