summaryrefslogtreecommitdiff
path: root/compile.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-03-16 13:29:27 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-03-16 13:29:27 +0000
commit0eddedbf5ca84bfbbaf124eb17bc1b0c39395680 (patch)
tree261816b7488352ffb9bd5fcfbc824dd6e9a61350 /compile.c
parent915ca40f38b3ab5340fe5f0dceff41f9dd2aa8e1 (diff)
debugging SEGV on Solaris11s
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'compile.c')
-rw-r--r--compile.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/compile.c b/compile.c
index 0fefbfeb71..5293b32695 100644
--- a/compile.c
+++ b/compile.c
@@ -9582,15 +9582,29 @@ ibf_load_iseq(const struct ibf_load *load, const rb_iseq_t *index_iseq)
}
else {
rb_iseq_t *iseq = iseq_imemo_alloc();
+#if IBF_ISEQ_DEBUG
+ fprintf(stderr, "ibf_load_iseq: new iseq=%p\n", iseq);
+#endif
FL_SET(iseq, ISEQ_NOT_LOADED_YET);
iseq->aux.loader.obj = load->loader_obj;
iseq->aux.loader.index = iseq_index;
+#if IBF_ISEQ_DEBUG
+ fprintf(stderr, "ibf_load_iseq: iseq=%p loader_obj=%p index=%d\n",
+ iseq, (void *)load->loader_obj, iseq_index);
+#endif
rb_ary_store(load->iseq_list, iseq_index, (VALUE)iseq);
#if !USE_LAZY_LOAD
+#if IBF_ISEQ_DEBUG
+ fprintf(stderr, "ibf_load_iseq: loading iseq=%p\n", iseq);
+#endif
ibf_load_iseq_complete(iseq);
#endif /* !USE_LAZY_LOAD */
+#if IBF_ISEQ_DEBUG
+ fprintf(stderr, "ibf_load_iseq: iseq=%p loaded %p\n",
+ iseq, load->iseq);
+#endif
if (load->iseq) {
iseq_add_mark_object(load->iseq, (VALUE)iseq);
}