• Jakob Gruber's avatar
    [nojit] Add a kCallBuiltinPointer call kind · f323a5f4
    Jakob Gruber authored
    Currently, Torque's builtin pointers store a Code target underneath and
    callsites generate a kArchCallCodeObject opcode. When embedded builtins
    are enabled, the call thus first calls the on-heap trampoline, which
    finally jumps to the target off-heap builtin code.
    
    This will no longer be possible in jitless mode, since on-heap code must
    not be executable.
    
    As a step towards changing the way builtin pointers are called
    (function pointers will hold the builtin index as a Smi, and callsites
    look up the off-heap target address and jump there), this CL adds a
    dedicated opcode for builtin pointer calls to the compiler pipeline.
    
    The calling mechanism itself is unchanged, changes there will happen
    in a follow-up.
    
    Drive-by: rename 'FunctionPointer' in torque/ to 'BuiltinPointer'.
    
    Bug: v8:7777
    Change-Id: Ic999a1cd7c3172425dd4a1513ae2f50c774faddb
    Reviewed-on: https://chromium-review.googlesource.com/c/1378175Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
    Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#58281}
    f323a5f4
macro-assembler-x64.h 37.3 KB