• Peter Marshall's avatar
    Reland "[runtime] Remove the construct_stub field of the SFI" · b158bfdc
    Peter Marshall authored
    This is a reland of 63ecddc8
    
    Original change's description:
    > [runtime] Remove the construct_stub field of the SFI
    >
    > Don't dispatch based on the construct_stub field anymore. Rather than
    > read it out and jump to the construct stub, we can switch on the
    > builtin_id.
    >
    > Builtins will always have builtin_id as a Smi, so this signals we need
    > to jump to JSBuiltinsConstructStub. The only exception is for uncompiled
    > functions, which will have kCompileLazy as the builtin_id, but need to
    > jump to the generic stub instead.
    >
    > API function calls will have a FunctionTemplateInfo in the SFI
    > function_data field, and need to go to the builtins stub as well.
    >
    > The final case is everything else, which should go to the generic stub.
    >
    > Bug: v8:7503
    > Change-Id: I14790a5f9784dc0d940bf10a05f5310026e1d482
    > Reviewed-on: https://chromium-review.googlesource.com/980941
    > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    > Commit-Queue: Peter Marshall <petermarshall@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#52345}
    
    TBR=bmeurer@chromium.org
    
    Bug: v8:7503
    Change-Id: Ie46bfb0af173ad7ac8cbdfeed1865e60f3f413f7
    Reviewed-on: https://chromium-review.googlesource.com/997712Reviewed-by: 's avatarPeter Marshall <petermarshall@chromium.org>
    Commit-Queue: Peter Marshall <petermarshall@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#52389}
    b158bfdc
js-inlining.cc 29.3 KB