• Michael Lippautz's avatar
    cppgc: Add support for double-word aligned allocations · 62418750
    Michael Lippautz authored
    Adds support for double-word aligned, i.e., 8 bytes on 32-bit
    platforms and 16 bytes on 64-bit platforms, objects in Oilpan.
    
    Changes:
    - Adds generic alignment APIs and overrides.
    - Internal logic to support double-word aligned allocations on LABs.
    - Adjusts natural alignment of large objects to follow double-word.
    - Adds a new static_assert() that suggests users file a bug if higher
      alignment is required.
    - Statically checks that no allocations with non-default alignment
      target custom spaces that support compaction.
    
    Bug: v8:12295
    Change-Id: I05766ce2349055d5d78b68919be00e7ee91d5505
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3218150Reviewed-by: 's avatarAnton Bikineev <bikineev@chromium.org>
    Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#77348}
    62418750
object-allocator.cc 9.83 KB