Give RuleSet a BumpArena and start using it for RuleDataVectors.
<https://webkit.org/b/153169>
Reviewed by Antti Koivisto.
Since RuleSet only supports appending rules and doesn't need to worry about removing them,
it's a great candidate for BumpArena optimizations.
Give each RuleSet its own BumpArena and teach them how to allocate RuleDataVector objects
out of them.
There are more things that can be done here, ideally all the sub-allocations inside RuleSet
that happen via e.g Vector and HashMap would also come out of the BumpArena.
* css/RuleSet.cpp:
(WebCore::RuleSet::RuleSet):
(WebCore::RuleSet::addToRuleSet):
(WebCore::RuleSet::copyShadowPseudoElementRulesFrom):
* css/RuleSet.h:
(WebCore::RuleSet::RuleDataVector::create):
(WebCore::RuleSet::RuleSet): Deleted.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@195173 268f45cc-cd09-0410-ab3c-d52691b4dbfc
3 files changed