debase-ruby_core_source 4.0.0.preview2 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/id.h +3 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/insns.inc +2 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/insns_info.inc +234 -218
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/basic_operators.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/bignum.h +21 -10
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/bits.h +14 -17
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/box.h +3 -1
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/class.h +3 -2
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/cont.h +0 -1
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/eval.h +2 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/gc.h +7 -5
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/numeric.h +48 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/thread.h +2 -2
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/time.h +2 -5
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/vm.h +2 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/iseq.h +3 -1
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/method.h +7 -2
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/parse.h +5 -3
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/parser_bits.h +108 -25
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/ast.h +38 -17
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/extension.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/options.h +4 -1
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/prism.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/version.h +2 -2
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/ractor_core.h +25 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/regint.h +1 -16
- data/lib/debase/ruby_core_source/ruby-4.0.0-p0/revision.h +5 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/ruby_atomic.h +7 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/rubyparser.h +0 -1
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/shape.h +30 -10
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/thread_pthread.h +3 -1
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/version.h +2 -2
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/vm.inc +115 -91
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/vm_callinfo.h +19 -6
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/vm_core.h +68 -12
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/vm_exec.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/vm_sync.h +4 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/vmtc.inc +2 -0
- data/lib/debase/ruby_core_source/version.rb +1 -1
- metadata +147 -147
- data/lib/debase/ruby_core_source/ruby-4.0.0-preview2/revision.h +0 -5
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/addr2line.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/builtin.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/ccan/build_assert/build_assert.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/ccan/check_type/check_type.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/ccan/container_of/container_of.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/ccan/list/list.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/ccan/str/str.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/constant.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/darray.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/debug_counter.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/dln.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/encindex.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/eval_intern.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/hrtime.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/id_table.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/array.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/cmdlineopt.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/compar.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/compile.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/compilers.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/complex.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/concurrent_set.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/dir.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/enc.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/encoding.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/enum.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/enumerator.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/error.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/file.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/fixnum.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/hash.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/imemo.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/inits.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/io.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/load.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/loadpath.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/math.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/missing.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/object.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/parse.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/proc.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/process.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/ractor.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/random.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/range.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/rational.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/re.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/ruby_parser.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/sanitizers.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/serial.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/set_table.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/signal.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/st.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/static_assert.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/string.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/struct.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/symbol.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/transcode.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/util.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/variable.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal/warnings.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/internal.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/known_errors.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/node.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/node_name.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/optinsn.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/optunifs.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/parser_node.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/parser_st.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/parser_value.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/defines.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/diagnostic.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/encoding.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/node.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/pack.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/parser.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/prettyprint.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/regexp.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/static_literals.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/util/pm_buffer.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/util/pm_char.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/util/pm_constant_pool.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/util/pm_integer.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/util/pm_list.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/util/pm_memchr.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/util/pm_newline_list.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/util/pm_string.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/util/pm_strncasecmp.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism/util/pm_strpbrk.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/prism_compile.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/probes_helper.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/regenc.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/regparse.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/ruby_assert.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/siphash.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/symbol.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/thread_none.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/thread_win32.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/timev.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/transcode_data.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/variable.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/vm_call_iseq_optimized.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/vm_debug.h +4 -4
- /data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/vm_insnhelper.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/vm_opts.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/yjit.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/zjit.h +0 -0
|
@@ -302,6 +302,7 @@ struct rb_callcache {
|
|
|
302
302
|
#define VM_CALLCACHE_REFINEMENT IMEMO_FL_USER3
|
|
303
303
|
#define VM_CALLCACHE_UNMARKABLE IMEMO_FL_USER4
|
|
304
304
|
#define VM_CALLCACHE_ON_STACK IMEMO_FL_USER5
|
|
305
|
+
#define VM_CALLCACHE_INVALID_SUPER IMEMO_FL_USER6
|
|
305
306
|
|
|
306
307
|
enum vm_cc_type {
|
|
307
308
|
cc_type_normal, // chained from ccs
|
|
@@ -344,8 +345,6 @@ vm_cc_new(VALUE klass,
|
|
|
344
345
|
*((struct rb_callable_method_entry_struct **)&cc->cme_) = (struct rb_callable_method_entry_struct *)cme;
|
|
345
346
|
*((vm_call_handler *)&cc->call_) = call;
|
|
346
347
|
|
|
347
|
-
VM_ASSERT(RB_TYPE_P(klass, T_CLASS) || RB_TYPE_P(klass, T_ICLASS));
|
|
348
|
-
|
|
349
348
|
switch (type) {
|
|
350
349
|
case cc_type_normal:
|
|
351
350
|
break;
|
|
@@ -358,8 +357,13 @@ vm_cc_new(VALUE klass,
|
|
|
358
357
|
break;
|
|
359
358
|
}
|
|
360
359
|
|
|
361
|
-
if (cme
|
|
362
|
-
|
|
360
|
+
if (cme) {
|
|
361
|
+
if (cme->def->type == VM_METHOD_TYPE_ATTRSET || cme->def->type == VM_METHOD_TYPE_IVAR) {
|
|
362
|
+
vm_cc_attr_index_initialize(cc, INVALID_SHAPE_ID);
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
else {
|
|
366
|
+
*(VALUE *)&cc->flags |= VM_CALLCACHE_INVALID_SUPER;
|
|
363
367
|
}
|
|
364
368
|
|
|
365
369
|
RB_DEBUG_COUNTER_INC(cc_new);
|
|
@@ -405,6 +409,14 @@ vm_cc_markable(const struct rb_callcache *cc)
|
|
|
405
409
|
return FL_TEST_RAW((VALUE)cc, VM_CALLCACHE_UNMARKABLE) == 0;
|
|
406
410
|
}
|
|
407
411
|
|
|
412
|
+
static inline bool
|
|
413
|
+
vm_cc_invalid_super(const struct rb_callcache *cc)
|
|
414
|
+
{
|
|
415
|
+
VM_ASSERT(IMEMO_TYPE_P(cc, imemo_callcache));
|
|
416
|
+
// Set when calling super and there is no superclass.
|
|
417
|
+
return FL_TEST_RAW((VALUE)cc, VM_CALLCACHE_INVALID_SUPER);
|
|
418
|
+
}
|
|
419
|
+
|
|
408
420
|
static inline bool
|
|
409
421
|
vm_cc_valid(const struct rb_callcache *cc)
|
|
410
422
|
{
|
|
@@ -418,10 +430,11 @@ static inline const struct rb_callable_method_entry_struct *
|
|
|
418
430
|
vm_cc_cme(const struct rb_callcache *cc)
|
|
419
431
|
{
|
|
420
432
|
VM_ASSERT(IMEMO_TYPE_P(cc, imemo_callcache));
|
|
421
|
-
VM_ASSERT(cc->klass != Qundef || !vm_cc_markable(cc));
|
|
433
|
+
VM_ASSERT(cc->klass != Qundef || !vm_cc_markable(cc) || vm_cc_invalid_super(cc));
|
|
422
434
|
VM_ASSERT(cc_check_class(cc->klass));
|
|
423
435
|
VM_ASSERT(cc->call_ == NULL || // not initialized yet
|
|
424
436
|
!vm_cc_markable(cc) ||
|
|
437
|
+
vm_cc_invalid_super(cc) ||
|
|
425
438
|
cc->cme_ != NULL);
|
|
426
439
|
|
|
427
440
|
return cc->cme_;
|
|
@@ -432,7 +445,7 @@ vm_cc_call(const struct rb_callcache *cc)
|
|
|
432
445
|
{
|
|
433
446
|
VM_ASSERT(IMEMO_TYPE_P(cc, imemo_callcache));
|
|
434
447
|
VM_ASSERT(cc->call_ != NULL);
|
|
435
|
-
VM_ASSERT(cc->klass != Qundef || !vm_cc_markable(cc));
|
|
448
|
+
VM_ASSERT(cc->klass != Qundef || !vm_cc_markable(cc) || vm_cc_invalid_super(cc));
|
|
436
449
|
VM_ASSERT(cc_check_class(cc->klass));
|
|
437
450
|
return cc->call_;
|
|
438
451
|
}
|
|
@@ -317,6 +317,8 @@ struct rb_calling_info {
|
|
|
317
317
|
#define VM_ARGC_STACK_MAX 128
|
|
318
318
|
#endif
|
|
319
319
|
|
|
320
|
+
#define VM_KW_SPECIFIED_BITS_MAX (32-1) /* TODO: 32 -> Fixnum's max bits */
|
|
321
|
+
|
|
320
322
|
# define CALLING_ARGC(calling) ((calling)->heap_argv ? RARRAY_LENINT((calling)->heap_argv) : (calling)->argc)
|
|
321
323
|
|
|
322
324
|
struct rb_execution_context_struct;
|
|
@@ -429,7 +431,7 @@ struct rb_iseq_constant_body {
|
|
|
429
431
|
* size = M+N+O+(*1)+K+(&1)+(**1) // parameter size.
|
|
430
432
|
*/
|
|
431
433
|
|
|
432
|
-
struct {
|
|
434
|
+
struct rb_iseq_parameters {
|
|
433
435
|
struct {
|
|
434
436
|
unsigned int has_lead : 1;
|
|
435
437
|
unsigned int has_opt : 1;
|
|
@@ -582,7 +584,7 @@ struct rb_iseq_struct {
|
|
|
582
584
|
} loader;
|
|
583
585
|
|
|
584
586
|
struct {
|
|
585
|
-
|
|
587
|
+
unsigned int local_hooks_cnt;
|
|
586
588
|
rb_event_flag_t global_trace_events;
|
|
587
589
|
} exec;
|
|
588
590
|
} aux;
|
|
@@ -648,15 +650,21 @@ void *rb_objspace_alloc(void);
|
|
|
648
650
|
void rb_objspace_free(void *objspace);
|
|
649
651
|
void rb_objspace_call_finalizer(void);
|
|
650
652
|
|
|
653
|
+
enum rb_hook_list_type {
|
|
654
|
+
hook_list_type_ractor_local,
|
|
655
|
+
hook_list_type_targeted_iseq,
|
|
656
|
+
hook_list_type_targeted_def, // C function
|
|
657
|
+
hook_list_type_global
|
|
658
|
+
};
|
|
659
|
+
|
|
651
660
|
typedef struct rb_hook_list_struct {
|
|
652
661
|
struct rb_event_hook_struct *hooks;
|
|
653
662
|
rb_event_flag_t events;
|
|
654
663
|
unsigned int running;
|
|
664
|
+
enum rb_hook_list_type type;
|
|
655
665
|
bool need_clean;
|
|
656
|
-
bool is_local;
|
|
657
666
|
} rb_hook_list_t;
|
|
658
667
|
|
|
659
|
-
|
|
660
668
|
// see builtin.h for definition
|
|
661
669
|
typedef const struct rb_builtin_function *RB_BUILTIN;
|
|
662
670
|
|
|
@@ -768,6 +776,9 @@ typedef struct rb_vm_struct {
|
|
|
768
776
|
VALUE cmd[RUBY_NSIG];
|
|
769
777
|
} trap_list;
|
|
770
778
|
|
|
779
|
+
/* hook (for internal events: NEWOBJ, FREEOBJ, GC events, etc.) */
|
|
780
|
+
rb_hook_list_t global_hooks;
|
|
781
|
+
|
|
771
782
|
/* postponed_job (async-signal-safe, and thread-safe) */
|
|
772
783
|
struct rb_postponed_job_queue *postponed_job_queue;
|
|
773
784
|
|
|
@@ -1036,6 +1047,8 @@ struct rb_execution_context_struct {
|
|
|
1036
1047
|
|
|
1037
1048
|
rb_fiber_t *fiber_ptr;
|
|
1038
1049
|
struct rb_thread_struct *thread_ptr;
|
|
1050
|
+
rb_serial_t serial;
|
|
1051
|
+
rb_serial_t ractor_id;
|
|
1039
1052
|
|
|
1040
1053
|
/* storage (ec (fiber) local) */
|
|
1041
1054
|
struct rb_id_table *local_storage;
|
|
@@ -1102,6 +1115,10 @@ void rb_ec_initialize_vm_stack(rb_execution_context_t *ec, VALUE *stack, size_t
|
|
|
1102
1115
|
// @param ec the execution context to update.
|
|
1103
1116
|
void rb_ec_clear_vm_stack(rb_execution_context_t *ec);
|
|
1104
1117
|
|
|
1118
|
+
// Close an execution context and free related resources that are no longer needed.
|
|
1119
|
+
// @param ec the execution context to close.
|
|
1120
|
+
void rb_ec_close(rb_execution_context_t *ec);
|
|
1121
|
+
|
|
1105
1122
|
struct rb_ext_config {
|
|
1106
1123
|
bool ractor_safe;
|
|
1107
1124
|
};
|
|
@@ -2019,14 +2036,22 @@ rb_execution_context_t *rb_vm_main_ractor_ec(rb_vm_t *vm); // ractor.c
|
|
|
2019
2036
|
RUBY_EXTERN struct rb_ractor_struct *ruby_single_main_ractor; // ractor.c
|
|
2020
2037
|
RUBY_EXTERN rb_vm_t *ruby_current_vm_ptr;
|
|
2021
2038
|
RUBY_EXTERN rb_event_flag_t ruby_vm_event_flags;
|
|
2022
|
-
RUBY_EXTERN rb_event_flag_t ruby_vm_event_enabled_global_flags;
|
|
2023
|
-
RUBY_EXTERN unsigned int
|
|
2039
|
+
RUBY_EXTERN rb_event_flag_t ruby_vm_event_enabled_global_flags; // only ever added to
|
|
2040
|
+
RUBY_EXTERN unsigned int ruby_vm_iseq_events_enabled;
|
|
2041
|
+
RUBY_EXTERN unsigned int ruby_vm_c_events_enabled;
|
|
2024
2042
|
|
|
2025
2043
|
#define GET_VM() rb_current_vm()
|
|
2026
2044
|
#define GET_RACTOR() rb_current_ractor()
|
|
2027
2045
|
#define GET_THREAD() rb_current_thread()
|
|
2028
2046
|
#define GET_EC() rb_current_execution_context(true)
|
|
2029
2047
|
|
|
2048
|
+
static inline rb_serial_t
|
|
2049
|
+
rb_ec_serial(struct rb_execution_context_struct *ec)
|
|
2050
|
+
{
|
|
2051
|
+
VM_ASSERT(ec->serial >= 1);
|
|
2052
|
+
return ec->serial;
|
|
2053
|
+
}
|
|
2054
|
+
|
|
2030
2055
|
static inline rb_thread_t *
|
|
2031
2056
|
rb_ec_thread_ptr(const rb_execution_context_t *ec)
|
|
2032
2057
|
{
|
|
@@ -2046,6 +2071,14 @@ rb_ec_ractor_ptr(const rb_execution_context_t *ec)
|
|
|
2046
2071
|
}
|
|
2047
2072
|
}
|
|
2048
2073
|
|
|
2074
|
+
static inline rb_serial_t
|
|
2075
|
+
rb_ec_ractor_id(const rb_execution_context_t *ec)
|
|
2076
|
+
{
|
|
2077
|
+
rb_serial_t ractor_id = ec->ractor_id;
|
|
2078
|
+
RUBY_ASSERT(ractor_id);
|
|
2079
|
+
return ractor_id;
|
|
2080
|
+
}
|
|
2081
|
+
|
|
2049
2082
|
static inline rb_vm_t *
|
|
2050
2083
|
rb_ec_vm_ptr(const rb_execution_context_t *ec)
|
|
2051
2084
|
{
|
|
@@ -2074,9 +2107,9 @@ rb_current_execution_context(bool expect_ec)
|
|
|
2074
2107
|
* and the address of the `ruby_current_ec` can be stored on a function
|
|
2075
2108
|
* frame. However, this address can be mis-used after native thread
|
|
2076
2109
|
* migration of a coroutine.
|
|
2077
|
-
* 1) Get `ptr
|
|
2110
|
+
* 1) Get `ptr = &ruby_current_ec` on NT1 and store it on the frame.
|
|
2078
2111
|
* 2) Context switch and resume it on the NT2.
|
|
2079
|
-
* 3) `ptr` is used on NT2 but it accesses
|
|
2112
|
+
* 3) `ptr` is used on NT2 but it accesses the TLS of NT1.
|
|
2080
2113
|
* This assertion checks such misusage.
|
|
2081
2114
|
*
|
|
2082
2115
|
* To avoid accidents, `GET_EC()` should be called once on the frame.
|
|
@@ -2255,8 +2288,9 @@ struct rb_trace_arg_struct {
|
|
|
2255
2288
|
void rb_hook_list_mark(rb_hook_list_t *hooks);
|
|
2256
2289
|
void rb_hook_list_mark_and_move(rb_hook_list_t *hooks);
|
|
2257
2290
|
void rb_hook_list_free(rb_hook_list_t *hooks);
|
|
2258
|
-
void
|
|
2259
|
-
|
|
2291
|
+
void rb_hook_list_connect_local_tracepoint(rb_hook_list_t *list, VALUE tpval, unsigned int target_line);
|
|
2292
|
+
bool rb_hook_list_remove_local_tracepoint(rb_hook_list_t *list, VALUE tpval);
|
|
2293
|
+
unsigned int rb_hook_list_count(rb_hook_list_t *list);
|
|
2260
2294
|
|
|
2261
2295
|
void rb_exec_event_hooks(struct rb_trace_arg_struct *trace_arg, rb_hook_list_t *hooks, int pop_p);
|
|
2262
2296
|
|
|
@@ -2295,6 +2329,8 @@ struct rb_ractor_pub {
|
|
|
2295
2329
|
VALUE self;
|
|
2296
2330
|
uint32_t id;
|
|
2297
2331
|
rb_hook_list_t hooks;
|
|
2332
|
+
st_table *targeted_hooks; // also called "local hooks". {ISEQ => hook_list, def => hook_list...}
|
|
2333
|
+
unsigned int targeted_hooks_cnt; // ex: tp.enabled(target: method(:puts))
|
|
2298
2334
|
};
|
|
2299
2335
|
|
|
2300
2336
|
static inline rb_hook_list_t *
|
|
@@ -2304,11 +2340,31 @@ rb_ec_ractor_hooks(const rb_execution_context_t *ec)
|
|
|
2304
2340
|
return &cr_pub->hooks;
|
|
2305
2341
|
}
|
|
2306
2342
|
|
|
2343
|
+
static inline rb_hook_list_t *
|
|
2344
|
+
rb_vm_global_hooks(const rb_execution_context_t *ec)
|
|
2345
|
+
{
|
|
2346
|
+
return &rb_ec_vm_ptr(ec)->global_hooks;
|
|
2347
|
+
}
|
|
2348
|
+
|
|
2349
|
+
static inline rb_hook_list_t *
|
|
2350
|
+
rb_ec_hooks(const rb_execution_context_t *ec, rb_event_flag_t event)
|
|
2351
|
+
{
|
|
2352
|
+
// Should be a single bit set
|
|
2353
|
+
VM_ASSERT(event != 0 && ((event - 1) & event) == 0);
|
|
2354
|
+
|
|
2355
|
+
if (event & RUBY_INTERNAL_EVENT_OBJSPACE_MASK) {
|
|
2356
|
+
return rb_vm_global_hooks(ec);
|
|
2357
|
+
}
|
|
2358
|
+
else {
|
|
2359
|
+
return rb_ec_ractor_hooks(ec);
|
|
2360
|
+
}
|
|
2361
|
+
}
|
|
2362
|
+
|
|
2307
2363
|
#define EXEC_EVENT_HOOK(ec_, flag_, self_, id_, called_id_, klass_, data_) \
|
|
2308
|
-
EXEC_EVENT_HOOK_ORIG(ec_,
|
|
2364
|
+
EXEC_EVENT_HOOK_ORIG(ec_, rb_ec_hooks(ec_, flag_), flag_, self_, id_, called_id_, klass_, data_, 0)
|
|
2309
2365
|
|
|
2310
2366
|
#define EXEC_EVENT_HOOK_AND_POP_FRAME(ec_, flag_, self_, id_, called_id_, klass_, data_) \
|
|
2311
|
-
EXEC_EVENT_HOOK_ORIG(ec_,
|
|
2367
|
+
EXEC_EVENT_HOOK_ORIG(ec_, rb_ec_hooks(ec_, flag_), flag_, self_, id_, called_id_, klass_, data_, 1)
|
|
2312
2368
|
|
|
2313
2369
|
static inline void
|
|
2314
2370
|
rb_exec_event_hook_script_compiled(rb_execution_context_t *ec, const rb_iseq_t *iseq, VALUE eval_script)
|
|
@@ -185,7 +185,7 @@ default: \
|
|
|
185
185
|
if (ec->tag->state) THROW_EXCEPTION(val); \
|
|
186
186
|
} \
|
|
187
187
|
} \
|
|
188
|
-
else if ((zjit_entry = rb_zjit_entry)) { \
|
|
188
|
+
else if ((zjit_entry = (rb_zjit_func_t)rb_zjit_entry)) { \
|
|
189
189
|
rb_jit_func_t func = zjit_compile(ec); \
|
|
190
190
|
if (func) { \
|
|
191
191
|
val = zjit_entry(ec, ec->cfp, func); \
|
|
@@ -28,6 +28,10 @@ void rb_vm_lock_leave_body_nb(unsigned int *lev APPEND_LOCATION_ARGS);
|
|
|
28
28
|
void rb_vm_lock_leave_body(unsigned int *lev APPEND_LOCATION_ARGS);
|
|
29
29
|
void rb_vm_barrier(void);
|
|
30
30
|
|
|
31
|
+
RUBY_SYMBOL_EXPORT_BEGIN
|
|
32
|
+
VALUE rb_vm_lock_with_barrier(VALUE (*func)(void *args), void *args);
|
|
33
|
+
RUBY_SYMBOL_EXPORT_END
|
|
34
|
+
|
|
31
35
|
#if RUBY_DEBUG
|
|
32
36
|
// GET_VM()
|
|
33
37
|
#include "vm_core.h"
|
|
@@ -256,6 +256,8 @@ static const void *const insns_address_table[] = {
|
|
|
256
256
|
LABEL_PTR(trace_putobject_INT2FIX_1_),
|
|
257
257
|
#if USE_ZJIT
|
|
258
258
|
LABEL_PTR(zjit_getinstancevariable),
|
|
259
|
+
LABEL_PTR(zjit_setinstancevariable),
|
|
260
|
+
LABEL_PTR(zjit_definedivar),
|
|
259
261
|
LABEL_PTR(zjit_send),
|
|
260
262
|
LABEL_PTR(zjit_opt_send_without_block),
|
|
261
263
|
LABEL_PTR(zjit_objtostring),
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: debase-ruby_core_source
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.0.0
|
|
4
|
+
version: 4.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Mark Moseley
|
|
@@ -2580,151 +2580,151 @@ files:
|
|
|
2580
2580
|
- lib/debase/ruby_core_source/ruby-3.4.0-p-1/vm_sync.h
|
|
2581
2581
|
- lib/debase/ruby_core_source/ruby-3.4.0-p-1/vmtc.inc
|
|
2582
2582
|
- lib/debase/ruby_core_source/ruby-3.4.0-p-1/yjit.h
|
|
2583
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2584
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2585
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2586
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2587
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2588
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2589
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2590
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2591
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2592
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2593
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2594
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2595
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2596
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2597
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2598
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2599
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2600
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2601
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2602
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2603
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2604
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2605
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2606
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2607
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2608
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2609
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2610
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2611
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2612
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2613
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2614
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2615
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2616
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2617
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2618
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2619
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2620
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2621
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2622
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2623
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2624
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2625
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2626
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2627
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2628
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2629
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2630
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2631
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2632
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2633
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2634
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2635
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2636
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2637
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2638
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2639
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2640
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2641
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2642
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2643
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2644
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2645
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2646
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2647
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2648
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2649
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2650
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2651
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2652
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2653
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2654
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2655
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2656
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2657
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2658
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2659
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2660
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2661
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2662
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2663
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2664
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2665
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2666
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2667
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2668
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2669
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2670
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2671
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2672
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2673
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2674
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2675
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2676
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2677
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2678
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2679
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2680
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2681
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2682
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2683
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2684
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2685
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2686
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2687
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2688
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2689
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2690
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2691
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2692
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2693
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2694
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2695
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2696
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2697
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2698
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2699
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2700
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2701
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2702
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2703
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2704
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2705
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2706
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2707
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2708
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2709
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2710
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2711
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2712
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2713
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2714
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2715
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2716
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2717
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2718
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2719
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2720
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2721
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2722
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2723
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2724
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2725
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2726
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2727
|
-
- lib/debase/ruby_core_source/ruby-4.0.0-
|
|
2583
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/addr2line.h
|
|
2584
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/builtin.h
|
|
2585
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/ccan/build_assert/build_assert.h
|
|
2586
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/ccan/check_type/check_type.h
|
|
2587
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/ccan/container_of/container_of.h
|
|
2588
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/ccan/list/list.h
|
|
2589
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/ccan/str/str.h
|
|
2590
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/constant.h
|
|
2591
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/darray.h
|
|
2592
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/debug_counter.h
|
|
2593
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/dln.h
|
|
2594
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/encindex.h
|
|
2595
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/eval_intern.h
|
|
2596
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/hrtime.h
|
|
2597
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/id.h
|
|
2598
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/id_table.h
|
|
2599
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/insns.inc
|
|
2600
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/insns_info.inc
|
|
2601
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal.h
|
|
2602
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/array.h
|
|
2603
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/basic_operators.h
|
|
2604
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/bignum.h
|
|
2605
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/bits.h
|
|
2606
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/box.h
|
|
2607
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/class.h
|
|
2608
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/cmdlineopt.h
|
|
2609
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/compar.h
|
|
2610
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/compile.h
|
|
2611
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/compilers.h
|
|
2612
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/complex.h
|
|
2613
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/concurrent_set.h
|
|
2614
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/cont.h
|
|
2615
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/dir.h
|
|
2616
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/enc.h
|
|
2617
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/encoding.h
|
|
2618
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/enum.h
|
|
2619
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/enumerator.h
|
|
2620
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/error.h
|
|
2621
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/eval.h
|
|
2622
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/file.h
|
|
2623
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/fixnum.h
|
|
2624
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/gc.h
|
|
2625
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/hash.h
|
|
2626
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/imemo.h
|
|
2627
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/inits.h
|
|
2628
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/io.h
|
|
2629
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/load.h
|
|
2630
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/loadpath.h
|
|
2631
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/math.h
|
|
2632
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/missing.h
|
|
2633
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/numeric.h
|
|
2634
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/object.h
|
|
2635
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/parse.h
|
|
2636
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/proc.h
|
|
2637
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/process.h
|
|
2638
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/ractor.h
|
|
2639
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/random.h
|
|
2640
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/range.h
|
|
2641
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/rational.h
|
|
2642
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/re.h
|
|
2643
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/ruby_parser.h
|
|
2644
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/sanitizers.h
|
|
2645
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/serial.h
|
|
2646
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/set_table.h
|
|
2647
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/signal.h
|
|
2648
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/st.h
|
|
2649
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/static_assert.h
|
|
2650
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/string.h
|
|
2651
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/struct.h
|
|
2652
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/symbol.h
|
|
2653
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/thread.h
|
|
2654
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/time.h
|
|
2655
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/transcode.h
|
|
2656
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/util.h
|
|
2657
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/variable.h
|
|
2658
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/vm.h
|
|
2659
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/internal/warnings.h
|
|
2660
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/iseq.h
|
|
2661
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/known_errors.inc
|
|
2662
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/method.h
|
|
2663
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/node.h
|
|
2664
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/node_name.inc
|
|
2665
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/optinsn.inc
|
|
2666
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/optunifs.inc
|
|
2667
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/parse.h
|
|
2668
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/parser_bits.h
|
|
2669
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/parser_node.h
|
|
2670
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/parser_st.h
|
|
2671
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/parser_value.h
|
|
2672
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/ast.h
|
|
2673
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/defines.h
|
|
2674
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/diagnostic.h
|
|
2675
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/encoding.h
|
|
2676
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/extension.h
|
|
2677
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/node.h
|
|
2678
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/options.h
|
|
2679
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/pack.h
|
|
2680
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/parser.h
|
|
2681
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/prettyprint.h
|
|
2682
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/prism.h
|
|
2683
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/regexp.h
|
|
2684
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/static_literals.h
|
|
2685
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/util/pm_buffer.h
|
|
2686
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/util/pm_char.h
|
|
2687
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/util/pm_constant_pool.h
|
|
2688
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/util/pm_integer.h
|
|
2689
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/util/pm_list.h
|
|
2690
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/util/pm_memchr.h
|
|
2691
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/util/pm_newline_list.h
|
|
2692
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/util/pm_string.h
|
|
2693
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/util/pm_strncasecmp.h
|
|
2694
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/util/pm_strpbrk.h
|
|
2695
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism/version.h
|
|
2696
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/prism_compile.h
|
|
2697
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/probes_helper.h
|
|
2698
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/ractor_core.h
|
|
2699
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/regenc.h
|
|
2700
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/regint.h
|
|
2701
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/regparse.h
|
|
2702
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/revision.h
|
|
2703
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/ruby_assert.h
|
|
2704
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/ruby_atomic.h
|
|
2705
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/rubyparser.h
|
|
2706
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/shape.h
|
|
2707
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/siphash.h
|
|
2708
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/symbol.h
|
|
2709
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/thread_none.h
|
|
2710
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/thread_pthread.h
|
|
2711
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/thread_win32.h
|
|
2712
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/timev.h
|
|
2713
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/transcode_data.h
|
|
2714
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/variable.h
|
|
2715
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/version.h
|
|
2716
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/vm.inc
|
|
2717
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/vm_call_iseq_optimized.inc
|
|
2718
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/vm_callinfo.h
|
|
2719
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/vm_core.h
|
|
2720
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/vm_debug.h
|
|
2721
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/vm_exec.h
|
|
2722
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/vm_insnhelper.h
|
|
2723
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/vm_opts.h
|
|
2724
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/vm_sync.h
|
|
2725
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/vmtc.inc
|
|
2726
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/yjit.h
|
|
2727
|
+
- lib/debase/ruby_core_source/ruby-4.0.0-p0/zjit.h
|
|
2728
2728
|
- lib/debase/ruby_core_source/version.rb
|
|
2729
2729
|
- test/deduce_source_dir_test.rb
|
|
2730
2730
|
homepage: https://github.com/ruby-debug/debase-ruby_core_source
|
|
@@ -2745,7 +2745,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
2745
2745
|
- !ruby/object:Gem::Version
|
|
2746
2746
|
version: 1.3.6
|
|
2747
2747
|
requirements: []
|
|
2748
|
-
rubygems_version: 4.0.
|
|
2748
|
+
rubygems_version: 4.0.3
|
|
2749
2749
|
specification_version: 4
|
|
2750
2750
|
summary: Provide Ruby core source files
|
|
2751
2751
|
test_files: []
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
data/lib/debase/ruby_core_source/{ruby-4.0.0-preview2 → ruby-4.0.0-p0}/ccan/check_type/check_type.h
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|