WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
135958
CSS JIT: compile the :empty pseudo class
https://bugs.webkit.org/show_bug.cgi?id=135958
Summary
CSS JIT: compile the :empty pseudo class
Benjamin Poulain
Reported
2014-08-14 15:34:18 PDT
CSS JIT: compile the :empty pseudo class
Attachments
Patch
(44.38 KB, patch)
2014-08-14 15:36 PDT
,
Benjamin Poulain
kling
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Benjamin Poulain
Comment 1
2014-08-14 15:36:29 PDT
Created
attachment 236629
[details]
Patch
WebKit Commit Bot
Comment 2
2014-08-14 15:38:32 PDT
Attachment 236629
[details]
did not pass style-queue: ERROR: Source/WebCore/cssjit/SelectorCompiler.cpp:2527: This { should be at the end of the previous line [whitespace/braces] [4] ERROR: Source/WebCore/cssjit/SelectorCompiler.cpp:2542: This { should be at the end of the previous line [whitespace/braces] [4] Total errors found: 2 in 16 files If any of these errors are false positives, please file a bug against check-webkit-style.
Andreas Kling
Comment 3
2014-08-14 21:00:42 PDT
Comment on
attachment 236629
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=236629&action=review
r=me
> Source/WebCore/cssjit/SelectorCompiler.cpp:2465 > +static void jumpIfElementIsNotEmpty(Assembler& assembler, RegisterAllocator ®isterAllocator, Assembler::JumpList& notEmptyCases, Assembler::RegisterID element)
RegisterAllocator& (& placement)
> Source/WebCore/cssjit/SelectorCompiler.cpp:2515 > + if (m_selectorContext == SelectorContext::QuerySelector) { > + jumpIfElementIsNotEmpty(m_assembler, m_registerAllocator, failureCases, elementAddressRegister); > + return; > + }
The querySelector path is so nice and tidy. Is the affected-by-empty bit optimization really necessary?
Benjamin Poulain
Comment 4
2014-08-14 21:04:50 PDT
(In reply to
comment #3
)
> > Source/WebCore/cssjit/SelectorCompiler.cpp:2515 > > + if (m_selectorContext == SelectorContext::QuerySelector) { > > + jumpIfElementIsNotEmpty(m_assembler, m_registerAllocator, failureCases, elementAddressRegister); > > + return; > > + } > > The querySelector path is so nice and tidy. > Is the affected-by-empty bit optimization really necessary?
Today the flag avoid some style recalc when updating the tree. I suspect that flag is the cause of the bug, I will look into it in the follow up.
Benjamin Poulain
Comment 5
2014-08-14 21:07:14 PDT
Committed
r172619
: <
http://trac.webkit.org/changeset/172619
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug