[PA] Simplify bucket lookup

Current implementation requires to construct a lookup table, and memory
access happens every time. This CL rewrites it into calculation within
registers.

As side-effect, this allowed to eliminate some unused buckets in
`PartitionRoot`, simplifying its logic.

This CL also removes some unused configuration constants. The other
constants are relocated into `BucketIndexLookup` class, to make it as a
part of PartitionAlloc public API.

See buckets.md for the new design details.

This CL should have no behavior change, and should not regress
performance.

Change-Id: Ib6c9d7c95918397941d27f43b1813cbe0348079f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6490617
Commit-Queue: Mikihito Matsuura <mikt@google.com>
Reviewed-by: Takashi Sakamoto <tasak@google.com>
Reviewed-by: Stephen Nusko <nuskos@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1454826}
NOKEYCHECK=True
GitOrigin-RevId: 169e9acf5be3b9c6cf3bb0af5fdd11ea444d073b
4 files changed