1. 15 Jun, 2020 18 commits
  2. 14 Jun, 2020 1 commit
  3. 13 Jun, 2020 1 commit
  4. 12 Jun, 2020 14 commits
  5. 11 Jun, 2020 5 commits
  6. 10 Jun, 2020 1 commit
    • Michael Lippautz's avatar
      cppgc: Introduce AllocationHandle · 935d9151
      Michael Lippautz authored
      Unified heap support in V8 requires having another (at least internal)
      heap that implements a unfied garbage collection strategy. This will
      not re-use the already existing cppgc::Heap because there should be no
      way in creating such a heap externally or scheduling stand-alone
      garbage collections.
      
      In order to have a common token, this CL introduces AllocationHandle
      which can be passed to MakeGarbageCollected to allocate C++ objects.
      V8 (soon) and the stand-alone heap both have methods to retrieve such
      a handle.
      
      This works around a problem with creating diamond class hierarchies
      when a base class would be exposed on the public API level.
      
      Fast paths for Blink are still possible because allocation handles can
      be cached the same way (e.g. global, or TLS) as a heap can be cached.
      
      Tbr: yangguo@chromium.org
      Bug: chromium:1056170
      Change-Id: I8e9472a2c24ef82d1178953e8429b1fd8a2344bc
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2238027
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarOmer Katz <omerkatz@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#68310}
      935d9151