summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYusuke Endoh <mame@ruby-lang.org>2019-12-09 13:49:24 +0900
committerYusuke Endoh <mame@ruby-lang.org>2019-12-09 13:49:24 +0900
commit3cdb37d9db9b7776f6adf96c70eacc39773718b4 (patch)
tree69405deb275df8e8f48a1b4d3d218293204decbe
parent39c7230a7a7a039639d2cb3587c054554a1beb18 (diff)
Revert "vm_args.c (rb_warn_check): Use iseq_unique_id instead of its pointer"
This reverts commit 036bc1da6c6c9b0fa9b7f5968d897a9554dd770e. This caused a failure on iseq_binary mode. http://ci.rvm.jp/results/trunk-iseq_binary@silicon-docker/2474587 Numbering iseqs is not trivial due to dump/load.
-rw-r--r--iseq.c3
-rw-r--r--vm_args.c6
-rw-r--r--vm_core.h2
3 files changed, 1 insertions, 10 deletions
diff --git a/iseq.c b/iseq.c
index b3c7ad53d33..7fbb906525f 100644
--- a/iseq.c
+++ b/iseq.c
@@ -427,14 +427,11 @@ rb_iseq_memsize(const rb_iseq_t *iseq)
return size;
}
-static unsigned long fresh_iseq_unique_id = 0; /* -- Remove In 3.0 -- */
-
static rb_iseq_t *
iseq_alloc(void)
{
rb_iseq_t *iseq = iseq_imemo_alloc();
iseq->body = ZALLOC(struct rb_iseq_constant_body);
- iseq->body->iseq_unique_id = fresh_iseq_unique_id++; /* -- Remove In 3.0 -- */
return iseq;
}
diff --git a/vm_args.c b/vm_args.c
index 41824527de3..97b1d4ac60e 100644
--- a/vm_args.c
+++ b/vm_args.c
@@ -593,12 +593,8 @@ VALUE rb_iseq_location(const rb_iseq_t *iseq);
*/
static st_table *caller_to_callees = 0;
-static VALUE rb_warn_check(const rb_execution_context_t * const ec, const rb_iseq_t *const iseq)
+static VALUE rb_warn_check(const rb_execution_context_t * const ec, const void *const callee)
{
- if (!iseq) return 0;
-
- const void *const callee = (void *)iseq->body->iseq_unique_id;
-
const rb_control_frame_t * const cfp = rb_vm_get_ruby_level_next_cfp(ec, ec->cfp);
if (!cfp) return 0;
diff --git a/vm_core.h b/vm_core.h
index 4b1b9e43d02..f7ec156cc58 100644
--- a/vm_core.h
+++ b/vm_core.h
@@ -447,8 +447,6 @@ struct rb_iseq_constant_body {
long unsigned total_calls; /* number of total calls with `mjit_exec()` */
struct rb_mjit_unit *jit_unit;
#endif
-
- unsigned long iseq_unique_id; /* -- Remove In 3.0 -- */
};
/* T_IMEMO/iseq */