summaryrefslogtreecommitdiff
path: root/compile.c
diff options
context:
space:
mode:
authorKevin Newton <[email protected]>2024-02-12 14:40:07 -0500
committerKevin Newton <[email protected]>2024-02-21 11:44:40 -0500
commit0f1ca9492c63bc2e59b61c4d9b7e253e31af494d (patch)
tree0d0faa0b509cb3bfbca882871710ba0a1b5f8fb8 /compile.c
parentd9ebb65b7958551dcc73b80815ea639e6187b62d (diff)
[PRISM] Provide runtime flag for prism in iseq
Diffstat (limited to 'compile.c')
-rw-r--r--compile.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/compile.c b/compile.c
index 7d5c5b5b12..e68f06ef1f 100644
--- a/compile.c
+++ b/compile.c
@@ -12740,6 +12740,7 @@ ibf_dump_iseq_each(struct ibf_dump *dump, const rb_iseq_t *iseq)
ibf_dump_write_small_value(dump, body->ci_size);
ibf_dump_write_small_value(dump, body->stack_max);
ibf_dump_write_small_value(dump, body->builtin_attrs);
+ ibf_dump_write_small_value(dump, body->prism ? 1 : 0);
#undef IBF_BODY_OFFSET
@@ -12852,6 +12853,7 @@ ibf_load_iseq_each(struct ibf_load *load, rb_iseq_t *iseq, ibf_offset_t offset)
const unsigned int ci_size = (unsigned int)ibf_load_small_value(load, &reading_pos);
const unsigned int stack_max = (unsigned int)ibf_load_small_value(load, &reading_pos);
const unsigned int builtin_attrs = (unsigned int)ibf_load_small_value(load, &reading_pos);
+ const bool prism = (bool)ibf_load_small_value(load, &reading_pos);
// setup fname and dummy frame
VALUE path = ibf_load_object(load, location_pathobj_index);
@@ -12926,6 +12928,7 @@ ibf_load_iseq_each(struct ibf_load *load, rb_iseq_t *iseq, ibf_offset_t offset)
load_body->location.code_location.end_pos.lineno = location_code_location_end_pos_lineno;
load_body->location.code_location.end_pos.column = location_code_location_end_pos_column;
load_body->builtin_attrs = builtin_attrs;
+ load_body->prism = prism;
load_body->ivc_size = ivc_size;
load_body->icvarc_size = icvarc_size;