mruby/ops.h: add new instructions OP_GETIDX and OP_SETIDX.

Which represent `obj[int]` and `obj[int]=val` respectively where `obj`
is either `string`, `array` or `hash`, so that index access could be
faster. When `obj` is not assumed type or `R(a+1)` is not integer, the
instructions fallback to method calls.
This commit is contained in:
Yukihiro "Matz" Matsumoto
2021-10-03 17:14:00 +09:00
parent d64d8ca8e4
commit 09336c5d49
5 changed files with 42 additions and 1 deletions
+1 -1
View File
@@ -1146,7 +1146,7 @@ range_arg:
return STR_OUT_OF_RANGE;
}
static mrb_value
mrb_value
mrb_str_aref(mrb_state *mrb, mrb_value str, mrb_value indx, mrb_value alen)
{
mrb_int beg, len;