[webkit-changes] [WebKit/WebKit] 6aefea: Use NodeName and Namespace in CSS JIT
Yusuke Suzuki
noreply at github.com
Mon Mar 25 17:51:21 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 6aefea97977e9843bddcd473b491014f7622795e
https://github.com/WebKit/WebKit/commit/6aefea97977e9843bddcd473b491014f7622795e
Author: Yusuke Suzuki <ysuzuki at apple.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M Source/JavaScriptCore/assembler/MacroAssembler.h
M Source/JavaScriptCore/assembler/MacroAssemblerARM64.h
M Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h
M Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h
M Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h
M Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h
M Source/WTF/wtf/PlatformEnable.h
M Source/WebCore/cssjit/RegisterAllocator.h
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/dom/QualifiedName.h
Log Message:
-----------
Use NodeName and Namespace in CSS JIT
https://bugs.webkit.org/show_bug.cgi?id=267671
rdar://121167170
Reviewed by Ryosuke Niwa and Justin Michaud.
1. Use NodeName in CSS JIT code generation. This is more efficient and we can reduce code size.
2. Drop Darwin ARMv7 CSS JIT since it is no longer used.
3. We adjust registers so that this patch removes weird configuration of Assemblers in CSS JIT (what registers are reserved etc.).
* Source/JavaScriptCore/assembler/MacroAssembler.h:
(JSC::MacroAssembler::patchableBranch16):
* Source/JavaScriptCore/assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::branch16):
(JSC::MacroAssemblerARM64::patchableBranch16):
* Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::branch16):
(JSC::MacroAssemblerARMv7::patchableBranch16):
* Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:
(JSC::MacroAssemblerRISCV64::branch16):
* Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::branch16):
(JSC::MacroAssemblerX86Common::branch8):
* Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::branch16):
* Source/WTF/wtf/PlatformEnable.h:
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementAttributeMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasTagName):
* Source/WebCore/dom/QualifiedName.h:
(WebCore::QualifiedName::QualifiedNameImpl::namespaceMemoryOffset):
(WebCore::QualifiedName::QualifiedNameImpl::nodeNameMemoryOffset):
(WebCore::QualifiedName::QualifiedNameImpl::namespaceURIMemoryOffset):
Canonical link: https://commits.webkit.org/276663@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list