• Ross McIlroy's avatar
    [Compile] Refactor CompilerDispatcher for inner function compilation jobs · 80195fc5
    Ross McIlroy authored
    Refactors the CompilerDispatcher to be able to enqueue eager inner functions
    for off-thread compilation during top-level compilation of a script.
    
    Unoptimized compile jobs are simplified to only have two phases - compile
    and finalization. Only finalization requires heap access (and therefore
    needs to be run on the main thread). The change also introduces a requirement
    to register a SFI with a given compile job after that job is posted, this
    is due to the fact that an SFI won't necessarily exist at the point the job
    is posted, but is created later when top-level compile is being finalized.
    Logic in the compile dispatcher is update to deal with the fact that a job
    may not be able to progress if it doesn't yet have an associated SFI
    registered with it.
    
    BUG=v8:8041
    
    Change-Id: I66cccd626136738304a7cab0e501fc65cf342514
    Reviewed-on: https://chromium-review.googlesource.com/1215782
    Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
    Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
    Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#56088}
    80195fc5
counters.h 72.3 KB