• Dominik Inführ's avatar
    Reland "[compiler, heap] Create LocalHeap outside of ExecuteJob" · de914c75
    Dominik Inführ authored
    This is a reland of 44708a5b
    
    Original change's description:
    > [compiler, heap] Create LocalHeap outside of ExecuteJob
    >
    > Create LocalHeap directly in the Task or in GetOptimizedCodeNow and
    > pass its reference as argument to ExecuteJob. This allows us to create
    > LocalHeap differently for the main and background thread, e.g. by
    > passing an additional argument to the constructor in the future.
    > It will be required in the future anyways when the main thread will
    > have its own LocalHeap/LocalIsolate.
    >
    > Extending the scope of LocalHeap, also made
    > HandleBase::IsDereferenceAllowed more precise and uncovered two
    > potential issues: heap accesses in
    > OptimizingCompileDispatcher::CompileNext and PipelineImpl::AssembleCode
    > with --code-comments.
    >
    > LocalHeap can now be created in the parked state. Also fixed a data
    > race with LocalHeap's destructor publishing write barrier entries
    > without holding the lock.
    >
    > Bug: v8:10315
    > Change-Id: I9226972601a07b87108cd66efbbb6a0d118af58d
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2460818
    > Commit-Queue: Georg Neis <neis@chromium.org>
    > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    > Reviewed-by: Santiago Aboy Solanes <solanes@chromium.org>
    > Reviewed-by: Georg Neis <neis@chromium.org>
    > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#70521}
    
    Bug: v8:10315
    Change-Id: I4c459fd6dfb98d47fc9941c0dc6864bf5a1d2d3e
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2474788Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Reviewed-by: 's avatarSantiago Aboy Solanes <solanes@chromium.org>
    Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
    Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#70560}
    de914c75
compiler.h 22 KB