Feature #10274 » 0001-iseq-reduce-from-280-to-272-bytes.patch
compile.c | ||
---|---|---|
LABEL *lfin = NEW_LABEL(line);
|
||
LABEL *ltrue = NEW_LABEL(line);
|
||
rb_iseq_t *local_iseq = iseq->local_iseq;
|
||
rb_num_t cnt;
|
||
unsigned int cnt;
|
||
VALUE key;
|
||
cnt = local_iseq->flip_cnt++ + DEFAULT_SPECIAL_VAR_COUNT;
|
||
... | ... | |
rb_ary_entry(arg_opt_labels, i));
|
||
}
|
||
iseq->arg_simple = NUM2INT(arg_simple);
|
||
i = FIX2INT(arg_simple);
|
||
if (i < 0 || i > 2)
|
||
rb_raise(rb_eRangeError, "arg_simple must be 0..2: %d", i);
|
||
iseq->arg_simple = i;
|
||
}
|
||
/* exception */
|
vm_core.h | ||
---|---|---|
*/
|
||
int argc;
|
||
int arg_simple;
|
||
uint8_t arg_simple; /* 0..2 */
|
||
/* bool, if this is true, raise an ArgumentError when unknown
|
||
* keyword argument is passed */
|
||
uint8_t arg_keyword_check;
|
||
int arg_rest;
|
||
int arg_block;
|
||
int arg_opts;
|
||
... | ... | |
int arg_post_start;
|
||
int arg_size;
|
||
VALUE *arg_opt_table;
|
||
unsigned int flip_cnt; /* used at compile time */
|
||
int arg_keyword;
|
||
int arg_keyword_check; /* if this is true, raise an ArgumentError when unknown keyword argument is passed */
|
||
int arg_keywords;
|
||
int arg_keyword_required;
|
||
ID *arg_keyword_table;
|
||
... | ... | |
/* misc */
|
||
ID defined_method_id; /* for define_method */
|
||
rb_num_t flip_cnt;
|
||
/* used at compile time */
|
||
struct iseq_compile_data *compile_data;
|
||
-
|