• Jakob Gruber's avatar
    [nci] Implement tier-up (part 3, spawn task & install) · 608018e5
    Jakob Gruber authored
    This is the final part of the tier-up commit series. It implements:
    
    - A prologue in NCI code objects that checks and acts upon the
    optimization marker.
    - Currently, handling is deferred to the InterpreterEntryTrampoline
    but this will change in the future.
    - The lifecycle is otherwise like Ignition-to-Turbofan; the runtime
    profiler marks a function for optimization, the next call to that
    function triggers optimization by calling into runtime, and the
    finished code object is installed both on the JSFunction and the
    optimized code cache.
    - The feedback vector's kOptimizedCodeWeakOrSmiOffset slot is
    currently reused for the mid-to-top tier up.
    
    Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
    Bug: v8:8888
    Change-Id: Iff50b05ddcc68b25d7ed0f1e0d20af076a1522a0
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2361466Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
    Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
    Reviewed-by: 's avatarMythri Alle <mythria@chromium.org>
    Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#69808}
    608018e5
js-function.cc 45.1 KB