Auto merge of #24339 - servo:sharing-cache-size, r=emilio

Remove obsolete logic for LRUCache size

The LRUCache implementation has been replaced, and no longer requires a backing store larger than its capacity.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24339)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2019-10-10 00:45:14 -04:00 committed by GitHub
commit 4ded3038c0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -90,17 +90,14 @@ use uluru::{Entry, LRUCache};
mod checks;
/// The amount of nodes that the style sharing candidate cache should hold at
/// most. We'd somewhat like 32, but ArrayDeque only implements certain backing
/// store sizes. A cache size of 32 would mean a backing store of 33, but
/// that's not an implemented size: we can do 32 or 40.
/// most.
///
/// The cache size was chosen by measuring style sharing and resulting
/// performance on a few pages; sizes up to about 32 were giving good sharing
/// improvements (e.g. 3x fewer styles having to be resolved than at size 8) and
/// slight performance improvements. Sizes larger than 32 haven't really been
/// tested.
pub const SHARING_CACHE_SIZE: usize = 31;
const SHARING_CACHE_BACKING_STORE_SIZE: usize = SHARING_CACHE_SIZE + 1;
pub const SHARING_CACHE_SIZE: usize = 32;
/// Opaque pointer type to compare ComputedValues identities.
#[derive(Clone, Debug, Eq, PartialEq)]
@ -426,7 +423,7 @@ impl<E: TElement> StyleSharingTarget<E> {
}
struct SharingCacheBase<Candidate> {
entries: LRUCache<[Entry<Candidate>; SHARING_CACHE_BACKING_STORE_SIZE]>,
entries: LRUCache<[Entry<Candidate>; SHARING_CACHE_SIZE]>,
}
impl<Candidate> Default for SharingCacheBase<Candidate> {