summaryrefslogtreecommitdiff
path: root/compile.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-03-16 12:22:33 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-03-16 12:22:33 +0000
commit915ca40f38b3ab5340fe5f0dceff41f9dd2aa8e1 (patch)
treeec478e08994139425ce92ac8e651a7783ac2019d /compile.c
parent1d07bb84f8e9b93d69969f8dcfe3995036493d47 (diff)
debugging SEGV on Solaris11s
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62777 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 3799bb9868..0fefbfeb71 100644
--- a/compile.c
+++ b/compile.c
@@ -9552,17 +9552,31 @@ rb_iseq_complete(const rb_iseq_t *iseq)
}
#endif
+#ifdef __sparc
+#define IBF_ISEQ_DEBUG 1
+#endif
+#ifndef IBF_ISEQ_DEBUG
+#define IBF_ISEQ_DEBUG 0
+#endif
+
static rb_iseq_t *
ibf_load_iseq(const struct ibf_load *load, const rb_iseq_t *index_iseq)
{
int iseq_index = (int)(VALUE)index_iseq;
+#if IBF_ISEQ_DEBUG
+ fprintf(stderr, "ibf_load_iseq: index_iseq=%p iseq_list=%p\n",
+ index_iseq, (void *)load->iseq_list);
+#endif
if (iseq_index == -1) {
return NULL;
}
else {
VALUE iseqv = rb_ary_entry(load->iseq_list, iseq_index);
+#if IBF_ISEQ_DEBUG
+ fprintf(stderr, "ibf_load_iseq: iseqv=%p\n", (void *)iseqv);
+#endif
if (iseqv != Qnil) {
return (rb_iseq_t *)iseqv;
}