• Benoît Lizé's avatar
    Reland "[builtins] Remap builtins on Linux" · 8d186bb4
    Benoît Lizé authored
    Reason for reland: Fixed Fuchsia build.
    
    Original change's description:
    > [builtins] Remap builtins on Linux
    >
    > This is a CL similar to
    > https://chromium-review.googlesource.com/c/v8/v8/+/3553006, but on Linux
    > rather than macOS. The goal is to allow builtins to use short builtin
    > calls without paying a memory cost, by remapping rather than copying
    > them.
    >
    > However, while macOS has a system call making this easier, on Linux we
    > don't have one on most kernels. There is the recently-introduced
    > mremap(MREMAP_DONTUNMMAP), which is available in 5.7, but only works on
    > anonymous mappings until 5.13, which is too recent for most Android
    > devices.
    >
    > Instead, we open() the file containing the builtins, and mmap() it at
    > the desired location.
    >
    > Change-Id: I4524f349948b8f48c4536cf392a1cd179662a6cc
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3570426
    > Reviewed-by: Igor Sheludko <ishell@chromium.org>
    > Reviewed-by: Jakob Linke <jgruber@chromium.org>
    > Commit-Queue: Benoit Lize <lizeb@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#80022}
    
    Change-Id: I0cc8cf510bd2cb8621130bea8406d79aa209948c
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596164Reviewed-by: 's avatarJakob Linke <jgruber@chromium.org>
    Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
    Commit-Queue: Benoit Lize <lizeb@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#80049}
    8d186bb4