WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
Bug 131602
CSS JIT: compile the :nth-child() pseudo class
https://bugs.webkit.org/show_bug.cgi?id=131602
Summary
CSS JIT: compile the :nth-child() pseudo class
Benjamin Poulain
Reported
2014-04-13 19:12:38 PDT
CSS JIT: compile the :nth-child() pseudo class
Attachments
Patch
(45.74 KB, patch)
2014-04-13 19:27 PDT
,
Benjamin Poulain
no flags
Details
Formatted Diff
Diff
Archive of layout-test-results from webkit-ews-11 for mac-mountainlion-wk2
(469.20 KB, application/zip)
2014-04-13 20:43 PDT
,
Build Bot
no flags
Details
Patch
(46.94 KB, patch)
2014-04-13 21:09 PDT
,
Benjamin Poulain
no flags
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Benjamin Poulain
Comment 1
2014-04-13 19:27:02 PDT
Created
attachment 229256
[details]
Patch
Build Bot
Comment 2
2014-04-13 20:43:46 PDT
Comment on
attachment 229256
[details]
Patch
Attachment 229256
[details]
did not pass mac-wk2-ews (mac-wk2): Output:
http://webkit-queues.appspot.com/results/5264259642556416
New failing tests: http/tests/security/video-poster-cross-origin-crash.html
Build Bot
Comment 3
2014-04-13 20:43:50 PDT
Created
attachment 229257
[details]
Archive of layout-test-results from webkit-ews-11 for mac-mountainlion-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: webkit-ews-11 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.5
Benjamin Poulain
Comment 4
2014-04-13 21:09:30 PDT
Created
attachment 229258
[details]
Patch
Andreas Kling
Comment 5
2014-04-13 22:19:22 PDT
Comment on
attachment 229258
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=229258&action=review
> Source/WebCore/cssjit/SelectorCompiler.cpp:1025 > + failureCases.append(m_assembler.branchTest32(Assembler::NonZero, inputDividend, Assembler::TrustedImm32(1)));
Could this be even tighter with branchTest8()?
> Source/WebCore/cssjit/SelectorCompiler.cpp:2016 > + failureCases.append(m_assembler.branchTest32(Assembler::Zero, elementCounter, Assembler::TrustedImm32(1)));
Could this be even tighter with branchTest8()?
Andreas Kling
Comment 6
2014-04-13 22:19:26 PDT
Comment on
attachment 229258
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=229258&action=review
> Source/WebCore/cssjit/SelectorCompiler.cpp:1025 > + failureCases.append(m_assembler.branchTest32(Assembler::NonZero, inputDividend, Assembler::TrustedImm32(1)));
Could this be even tighter with branchTest8()?
> Source/WebCore/cssjit/SelectorCompiler.cpp:2016 > + failureCases.append(m_assembler.branchTest32(Assembler::Zero, elementCounter, Assembler::TrustedImm32(1)));
Could this be even tighter with branchTest8()?
Andreas Kling
Comment 7
2014-04-13 22:20:21 PDT
I wonder if we could shuffle the Node flags so the ones CSS JIT cares about are testable with 8-bit tests. (I also wonder if that would help anything.)
Benjamin Poulain
Comment 8
2014-04-13 23:22:35 PDT
(In reply to
comment #7
)
> I wonder if we could shuffle the Node flags so the ones CSS JIT cares about are testable with 8-bit tests. (I also wonder if that would help anything.)
If you look at test32, you'll notice that I already implemented that :) Depending on the mask, it will select 8 bits instructions :) Also, if you use Address with test32, it will be smart about changing the offset to perform a 8 bits operation :)
Andreas Kling
Comment 9
2014-04-13 23:29:50 PDT
(In reply to
comment #8
)
> (In reply to
comment #7
) > > I wonder if we could shuffle the Node flags so the ones CSS JIT cares about are testable with 8-bit tests. (I also wonder if that would help anything.) > > If you look at test32, you'll notice that I already implemented that :) > > Depending on the mask, it will select 8 bits instructions :) > > Also, if you use Address with test32, it will be smart about changing the offset to perform a 8 bits operation :)
LOL okay! Good job already then :D
Andreas Kling
Comment 10
2014-04-14 01:12:15 PDT
Comment on
attachment 229258
[details]
Patch r=me. We can definitely improve upon the modulo function if we decide that's useful, but this is totally fine for landing now!
Benjamin Poulain
Comment 11
2014-04-14 01:13:43 PDT
Comment on
attachment 229258
[details]
Patch (In reply to
comment #10
)
> (From update of
attachment 229258
[details]
) > r=me. > > We can definitely improve upon the modulo function if we decide that's useful, but this is totally fine for landing now!
Thanks!
WebKit Commit Bot
Comment 12
2014-04-14 01:43:20 PDT
Comment on
attachment 229258
[details]
Patch Clearing flags on attachment: 229258 Committed
r167218
: <
http://trac.webkit.org/changeset/167218
>
WebKit Commit Bot
Comment 13
2014-04-14 01:43:27 PDT
All reviewed patches have been landed. Closing bug.
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