summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2019-02-13 07:28:33 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2019-02-18 17:25:01 +0900
commit4ccc3f15259c9857255c5af9f35e56c742aca2c3 (patch)
treea34b2393ce93b86d1d15d952ec9e40eb3f7aebaa
parente986dfa8aa4e61ab203837e5c1ce50804cf88123 (diff)
downloadmruby-4ccc3f15259c9857255c5af9f35e56c742aca2c3.tar.gz
mruby-4ccc3f15259c9857255c5af9f35e56c742aca2c3.zip
Use key argument register for `OP_KEY_P` to reduce register use.
-rw-r--r--mrbgems/mruby-compiler/core/codegen.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c
index bfc08cd94..a2d790e32 100644
--- a/mrbgems/mruby-compiler/core/codegen.c
+++ b/mrbgems/mruby-compiler/core/codegen.c
@@ -823,8 +823,8 @@ lambda_body(codegen_scope *s, node *tree, int blk)
mrb_assert(nint(kwd->car) == NODE_KW_ARG);
if (def_arg) {
- genop_2(s, OP_KEY_P, cursp(), new_sym(s, kwd_sym));
- jmpif_key_p = genjmp2(s, OP_JMPIF, cursp(), 0, 0);
+ genop_2(s, OP_KEY_P, lv_idx(s, kwd_sym), new_sym(s, kwd_sym));
+ jmpif_key_p = genjmp2(s, OP_JMPIF, lv_idx(s, kwd_sym), 0, 0);
codegen(s, def_arg, VAL);
pop();
gen_move(s, lv_idx(s, kwd_sym), cursp(), 0);