• Shu-yu Guo's avatar
    Reland "[compiler] Support acq/rel accesses and atomic accesses on tagged" · 6a487504
    Shu-yu Guo authored
    This is a reland of faf2208a
    
    Changes since revert:
    - Fix arm64 codegen for full pointer mode
    
    Original change's description:
    > [compiler] Support acq/rel accesses and atomic accesses on tagged
    >
    > This CL adds an AtomicMemoryOrder parameter to the various atomic load
    > and store operators. Currently only acquire release (kAcqRel) and
    > sequentially consistent (kSeqCst) orders are supported.
    >
    > Additionally, atomic loads and stores are extended to work with tagged
    > values.
    >
    > This CL is a pre-requisite for supporting atomic accesses in Torque,
    > which is in turn a pre-requisite for prototyping shared strings.
    >
    > Bug: v8:11995
    > Change-Id: Ic77d2640e2dc7e5581b1211a054c93210c219355
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3101765
    > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
    > Reviewed-by: Zhi An Ng <zhin@chromium.org>
    > Commit-Queue: Shu-yu Guo <syg@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#76393}
    
    Bug: v8:11995
    Change-Id: I23577486334fec6b08fb3a2f5be1f6e5e16db11b
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3107220Reviewed-by: 's avatarZhi An Ng <zhin@chromium.org>
    Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
    Commit-Queue: Shu-yu Guo <syg@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#76399}
    6a487504
macro-assembler-arm64.cc 123 KB