summaryrefslogtreecommitdiff
path: root/yjit/src
diff options
context:
space:
mode:
authorJohn Hawthorn <[email protected]>2025-05-26 11:48:41 -0700
committerJohn Hawthorn <[email protected]>2025-05-28 11:44:07 -0400
commitd1343e12d253cef9c8af22ff58275d28c484d6f2 (patch)
tree82b03d79298f8fdf55032fe90ec8a66dfc51761d /yjit/src
parent3935b1c401d00f52b9ee0ce0b58767cc32e280fc (diff)
Use flag for RCLASS_IS_INITIALIZED
Previously we used a flag to set whether a module was uninitialized. When checked whether a class was initialized, we first had to check that it had a non-zero superclass, as well as that it wasn't BasicObject. With the advent of namespaces, RCLASS_SUPER is now an expensive operation, and though we could just check for the prime superclass, we might as well take this opportunity to use a flag so that we can perform the initialized check with as few instructions as possible. It's possible in the future that we could prevent uninitialized classes from being available to the user, but currently there are a few ways to do that.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/13443
Diffstat (limited to 'yjit/src')
-rw-r--r--yjit/src/cruby_bindings.inc.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/yjit/src/cruby_bindings.inc.rs b/yjit/src/cruby_bindings.inc.rs
index b0dd348aa6..4e56272eed 100644
--- a/yjit/src/cruby_bindings.inc.rs
+++ b/yjit/src/cruby_bindings.inc.rs
@@ -303,7 +303,7 @@ pub const RARRAY_EMBED_LEN_MASK: ruby_rarray_flags = 4161536;
pub type ruby_rarray_flags = u32;
pub const RARRAY_EMBED_LEN_SHIFT: ruby_rarray_consts = 15;
pub type ruby_rarray_consts = u32;
-pub const RMODULE_IS_REFINEMENT: ruby_rmodule_flags = 32768;
+pub const RMODULE_IS_REFINEMENT: ruby_rmodule_flags = 8192;
pub type ruby_rmodule_flags = u32;
pub const ROBJECT_EMBED: ruby_robject_flags = 8192;
pub type ruby_robject_flags = u32;