summaryrefslogtreecommitdiff
path: root/iseq.c
diff options
context:
space:
mode:
authormame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-01-01 09:16:27 +0000
committermame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-01-01 09:16:27 +0000
commitfd950df795ffd06b4e1532b881ad4273a2af90e2 (patch)
treea02130d076139a79e91ea7b5e69ae4f8c0e0b7a6 /iseq.c
parentd4764ef6e4a807e02b3d31347d3b17e2960d38bb (diff)
vm_core.h: refactoring of insns_info
This factors rb_iseq_constant_body#insns_info and #insns_info_size to struct iseq_insn_info. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'iseq.c')
-rw-r--r--iseq.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/iseq.c b/iseq.c
index ac92237f38..2011d6bf0a 100644
--- a/iseq.c
+++ b/iseq.c
@@ -74,7 +74,7 @@ rb_iseq_free(const rb_iseq_t *iseq)
if (iseq) {
if (iseq->body) {
ruby_xfree((void *)iseq->body->iseq_encoded);
- ruby_xfree((void *)iseq->body->insns_info);
+ ruby_xfree((void *)iseq->body->insns_info.body);
ruby_xfree((void *)iseq->body->local_table);
ruby_xfree((void *)iseq->body->is_entries);
@@ -157,7 +157,7 @@ iseq_memsize(const rb_iseq_t *iseq)
size += sizeof(struct rb_iseq_constant_body);
size += body->iseq_size * sizeof(VALUE);
- size += body->insns_info_size * sizeof(struct iseq_insn_info_entry);
+ size += body->insns_info.size * sizeof(struct iseq_insn_info_entry);
size += body->local_table_size * sizeof(ID);
if (body->catch_table) {
size += iseq_catch_table_bytes(body->catch_table->size);
@@ -1254,8 +1254,8 @@ iseqw_to_a(VALUE self)
static const struct iseq_insn_info_entry *
get_insn_info_binary_search(const rb_iseq_t *iseq, size_t pos)
{
- size_t size = iseq->body->insns_info_size;
- const struct iseq_insn_info_entry *insns_info = iseq->body->insns_info;
+ size_t size = iseq->body->insns_info.size;
+ const struct iseq_insn_info_entry *insns_info = iseq->body->insns_info.body;
const int debug = 0;
if (debug) {
@@ -1298,7 +1298,7 @@ get_insn_info_binary_search(const rb_iseq_t *iseq, size_t pos)
static const struct iseq_insn_info_entry *
get_insn_info_linear_search(const rb_iseq_t *iseq, size_t pos)
{
- size_t i = 0, size = iseq->body->insns_info_size;
+ size_t i = 0, size = iseq->body->insns_info.size;
const struct iseq_insn_info_entry *insns_info = iseq->body->insns_info;
const int debug = 0;
@@ -1902,8 +1902,8 @@ iseqw_trace_points(VALUE self)
unsigned int i;
VALUE ary = rb_ary_new();
- for (i=0; i<iseq->body->insns_info_size; i++) {
- const struct iseq_insn_info_entry *entry = &iseq->body->insns_info[i];
+ for (i=0; i<iseq->body->insns_info.size; i++) {
+ const struct iseq_insn_info_entry *entry = &iseq->body->insns_info.body[i];
if (entry->events) {
push_event_info(iseq, entry->events, entry->line_no, ary);
}
@@ -2344,8 +2344,8 @@ iseq_data_to_ary(const rb_iseq_t *iseq)
rb_ary_push(body, (VALUE)label);
}
- if (ti < iseq->body->insns_info_size) {
- const struct iseq_insn_info_entry *info = &iseq->body->insns_info[ti];
+ if (ti < iseq->body->insns_info.size) {
+ const struct iseq_insn_info_entry *info = &iseq->body->insns_info.body[ti];
if (info->position == pos) {
int line = info->line_no;
rb_event_flag_t events = info->events;