Closed Bug 1360405 Opened 7 years ago Closed 7 years ago

stylo: Consider not slicing until the first descendant combinator for revalidation.

Categories

(Core :: CSS Parsing and Computation, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: emilio, Unassigned)

References

(Blocks 1 open bug)

Details

Right now we only match the rightmost compound, so if we have a rule like:

.foo .bar .baz :first-child { ... }

We only insert :first-child into the selectors to revalidate the cache.

We also insert the bloom filter hashes though, so we're able to fast-reject quite easily.

Still, we could share a bit more presumably if we didn't slice, specially in cases like |.foo > a:first-child| while traversing elements in foo's subtree.

It makes the cache less exact. We should measure the trade-offs and see if "rightmost + bloom filter" is a better or worse choice than "full selector + bloom filter". We could also try to do "until first direct-child combinator + bloom filter".

No action required for now, I guess, but we should try to measure something sometime.
In bug 1361013, we're getting rid of the slicing.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.