Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 7b29d177b63b208975414df5582923bcc419f19f https://github.com/WebKit/WebKit/commit/7b29d177b63b208975414df5582923bcc419f19f Author: Ryosuke Niwa <rn...@webkit.org> Date: 2025-04-28 (Mon, 28 Apr 2025)
Changed paths: M Source/WebCore/dom/Document.cpp M Source/WebCore/dom/Document.h M Source/WebCore/dom/DocumentFragment.cpp M Source/WebCore/dom/Element.cpp M Source/WebCore/dom/Element.h M Source/WebCore/dom/Node.cpp M Source/WebCore/dom/Node.h M Source/WebCore/dom/PseudoElement.cpp M Source/WebCore/dom/ShadowRoot.cpp M Source/WebCore/dom/Text.cpp M Source/WebCore/domjit/DOMJITHelpers.h M Source/WebCore/html/HTMLFormControlElement.cpp Log Message: ----------- Free up three bits in Node::StateFlag / Node::ElementStateFlag https://bugs.webkit.org/show_bug.cgi?id=292174 Reviewed by Anne van Kesteren. This PR merges Node::StateFlag and Node::ElementStateFlag and free up 3 bits by moving two bits to Node::TypeFlag and overloading them with mutually exclusive bits in Node::TypeFlag. It also convert StateFlag::DeletionHasBegun to its own boolean m_deletionHasBegun since it's only useful in debug builds to free up another bit in Node::StateFlag. In addition, this PR removes two unused functions in DOM JIT: branchTestIsShadowRootFlagOnNode and branchTestIsElementOrShadowRootFlagOnNode. * Source/WebCore/dom/Document.cpp: (WebCore::Document::removedLastRef): * Source/WebCore/dom/Document.h: (WebCore::Document::decrementReferencingNodeCount): * Source/WebCore/dom/DocumentFragment.cpp: (WebCore::DocumentFragment::createForInnerOuterHTML): * Source/WebCore/dom/Element.cpp: (WebCore::Element::~Element): (WebCore::Element::invalidateForQueryContainerSizeChange): (WebCore::Element::needsUpdateQueryContainerDependentStyle const): (WebCore::Element::clearNeedsUpdateQueryContainerDependentStyle): (WebCore::Element::setFullscreenFlag): (WebCore::Element::identifier const): * Source/WebCore/dom/Element.h: (WebCore::Element::hasFullscreenFlag const): (WebCore::Element::hasEverHadSmoothScroll const): (WebCore::Element::setHasEverHadSmoothScroll): * Source/WebCore/dom/Node.cpp: (WebCore::Node::removedLastRef): * Source/WebCore/dom/Node.h: (WebCore::Node::isFormControlElement const): (WebCore::Node::isPseudoElement const): (WebCore::Node::isTreeScope const): (WebCore::Node::isShadowRoot const): (WebCore::Node::needsSVGRendererUpdate const): (WebCore::Node::setNeedsSVGRendererUpdate): (WebCore::Node::isInCustomElementReactionQueue const): (WebCore::Node::setIsInCustomElementReactionQueue): (WebCore::Node::clearIsInCustomElementReactionQueue): (WebCore::Node::usesNullCustomElementRegistry const): (WebCore::Node::setUsesNullCustomElementRegistry const): (WebCore::Node::clearUsesNullCustomElementRegistry const): (WebCore::Node::usesScopedCustomElementRegistryMap const): (WebCore::Node::setUsesScopedCustomElementRegistryMap): (WebCore::Node::clearUsesScopedCustomElementRegistryMap): (WebCore::Node::isUserActionElement const): (WebCore::Node::setUserActionElement): (WebCore::Node::isEditingText const): (WebCore::Node::isDocumentFragmentForInnerOuterHTML const): (WebCore::Node::flagIsElement): (WebCore::Node::deletionHasBegun const): (WebCore::Node::flagIsShadowRoot): Deleted. (WebCore::Node::hasElementStateFlag const): Deleted. (WebCore::Node::clearElementStateFlag const): Deleted. (WebCore::Node::setElementStateFlag const): Deleted. * Source/WebCore/dom/PseudoElement.cpp: (WebCore::PseudoElement::PseudoElement): (WebCore::m_pseudoId): * Source/WebCore/dom/ShadowRoot.cpp: (WebCore::ShadowRoot::ShadowRoot): * Source/WebCore/dom/Text.cpp: (WebCore::Text::createEditingText): * Source/WebCore/domjit/DOMJITHelpers.h: (WebCore::DOMJIT::branchTestIsShadowRootFlagOnNode): Deleted. (WebCore::DOMJIT::branchTestIsElementOrShadowRootFlagOnNode): Deleted. * Source/WebCore/html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::HTMLFormControlElement): Canonical link: https://commits.webkit.org/294205@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes