mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-26 17:55:07 +02:00
Replace individual bool bitfields in Object (m_is_extensible, m_has_parameter_map, m_has_magical_length_property, etc.) with a single u8 m_flags field and Flag:: constants. This consolidates 8 scattered bitfields into one byte with explicit bit positions, making them easy to access from generated assembly code at a known offset. It also converts the virtual is_function() and is_ecmascript_function_object() methods to flag-based checks, avoiding virtual dispatch for these hot queries. ProxyObject now explicitly clears the IsFunction flag in its constructor when wrapping a non-callable target, instead of relying on a virtual is_function() override.
9.2 KiB
9.2 KiB