• Leszek Swirski's avatar
    Revert "[osr] Add an install-by-offset mechanism" · bb5cc0d5
    Leszek Swirski authored
    This reverts commit 51b99213.
    
    Reason for revert: Speculative revert for MSAN failure  https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/43080/overview
    
    Original change's description:
    > [osr] Add an install-by-offset mechanism
    >
    > .. for concurrent OSR. There, the challenge is to hit the correct
    > JumpLoop bytecode once compilation completes, since execution has
    > moved on in the meantime.
    >
    > This CL adds a new mechanism to request installation at a specific
    > bytecode offset. We add a new `osr_install_target` field to the
    > BytecodeArray:
    >
    >   bitfield struct OSRUrgencyAndInstallTarget extends uint16 {
    >     osr_urgency: uint32: 3 bit;
    >     osr_install_target: uint32: 13 bit;
    >   }
    >
    >   // [...]
    >   osr_urgency_and_install_target: OSRUrgencyAndInstallTarget;
    >   bytecode_age: uint16;  // Only 3 bits used.
    >   // [...]
    >
    > Note urgency and install target are packed into one 16 bit field,
    > we can thus merge both checks into one comparison within JumpLoop.
    > Note also that these fields are adjacent to the bytecode age; we
    > still reset both OSR state and age with a single (now 32-bit)
    > store.
    >
    > The install target is the lowest 13 bits of the bytecode offset.
    > When set, every reached JumpLoop will check `is this my offset?`,
    > and if yes, jump into runtime to tier up.
    >
    > Drive-by: Rename BaselineAssembler::LoadByteField to LoadWord8Field.
    >
    > Bug: v8:12161
    > Change-Id: I275d468b19df3a4816392a2fec0713a8d211ef80
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571812
    > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    > Commit-Queue: Jakob Linke <jgruber@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#79853}
    
    Bug: v8:12161
    Change-Id: I0c47499544465c80b5b23a492c00ec1c62815caa
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3576121
    Auto-Submit: Leszek Swirski <leszeks@chromium.org>
    Owners-Override: Leszek Swirski <leszeks@chromium.org>
    Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    Cr-Commit-Position: refs/heads/main@{#79855}
    bb5cc0d5
code-assembler.h 67.7 KB